pub fn shift_left(val: u32, shift_amount: u32, carry_flag: bool) -> ShiftResults
Expand description

Shifts bits left by a register specified amount.

Bits are moved out of the left-hand end and zeros are filled into the right-hand end. If the shift amount is zero, the carry-out is the old carry flag and val is untouched. If the shift amount is less than 32 and greater than 0, the shift functions identically as instruction_specified_shift::shift_left. If the shift amount is 32, the result val is zero, and the carry-out is equal to bit 0 of original val. If the shift amount is more than 32, the result is zero and the carry-out is false.