x86-64: fix immediate32?

It should check for numbers that fit in 32-bits when sign-extended.  It
didn't handle negatives correctly.