projects
/
sbcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
0.8.6.28:
[sbcl.git]
/
src
/
compiler
/
x86
/
arith.lisp
diff --git
a/src/compiler/x86/arith.lisp
b/src/compiler/x86/arith.lisp
index
3c7dda2
..
33cf26a
100644
(file)
--- a/
src/compiler/x86/arith.lisp
+++ b/
src/compiler/x86/arith.lisp
@@
-689,7
+689,9
@@
(if (plusp amount)
(inst shl result amount)
(inst shr result (- amount))))
(if (plusp amount)
(inst shl result amount)
(inst shr result (- amount))))
- (t (inst xor result result)))))))
+ (t (if (sc-is result unsigned-reg)
+ (inst xor result result)
+ (inst mov result 0))))))))
(define-vop (fast-ash-left/signed=>signed)
(:translate ash)
(define-vop (fast-ash-left/signed=>signed)
(:translate ash)