Fix logand-word-mask on x86.
commitcd1f513ed25ee55dfe3bccf71d8a3a1386ea6cab
authorStas Boukarev <stassats@gmail.com>
Tue, 31 Jan 2017 20:21:00 +0000 (31 23:21 +0300)
committerStas Boukarev <stassats@gmail.com>
Tue, 31 Jan 2017 20:28:44 +0000 (31 23:28 +0300)
tree4f7f9213d17de7f37cb018b3d513afaec474f0eb
parent88c0d274228fe518e55610d175e0febc0d6d9c6c
Fix logand-word-mask on x86.

It was copied from x86-64 and the assumption that n-fixnum-tag-bits=1
breaks it. Fix it by accepting more constants and ignoring the (ash
most-positive-fixnum -1) case.

Reported by Eric Marsden.
src/compiler/x86/arith.lisp
tests/arith.pure.lisp