fix shift register stuff

We need to ensure the source is correctly zero extended so we don't
bring in crap from 64 bit regs on 32 bit operations.