Repair bitwise-arithmetic-shift/ash on bad first arguments.

Fixes 0b0777912b1aa80.

original commit: d1a82e712c9c4645c1d790162827ad4e5d8c9f1d
This commit is contained in:
Sam Tobin-Hochstadt 2020-01-03 11:42:05 -05:00
parent 7e647535b4
commit e039b19653

View File

@ -2411,7 +2411,7 @@
(let ()
(define (try-fold-ash-op op ctxt x y)
(let ([xval (nanopass-case (Lsrc Expr) (result-exp (value-visit-operand! x))
[(quote ,d) (and (exact? d) (integer? d) d)]
[(quote ,d) (and (integer? d) (exact? d) d)]
[else #f])]
[yval (nanopass-case (Lsrc Expr) (result-exp (value-visit-operand! y))
[(quote ,d) (and (fixnum? d) (fx< -1000 d 1000) d)]