Fix wrong decoder of ld/st instructions and wrong behavior of sign extension of 32-bit regsize instructions.

1. handle_ldst() failed to decode load/store (signed) byte/halfword/word instructions without this patch. 
2. When regsize is 32, then sign-extension only functions to sign extend the lower 32 bits of the destination register.