Even if the type is s8/s16, assigning to gpr is preferable with constants because worst case we can select via a constant pool load, and without cross-bank copies to the FPR bank more patterns can be imported later.
x != 0