Function eikon3ds_core::arch::register_specified_shift::shift_left
source · pub fn shift_left(val: u32, shift_amount: u32, carry_flag: bool) -> ShiftResultsExpand 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.