SPRUI30H November 2015 – May 2024 DRA745 , DRA746 , DRA750 , DRA756
Logical Shift Left by Register Value
SHL src1, src2, dst
Functional unit = L
16 bit
15 | 13 | 12 | 10 | 9 | 7 | 6 | 0 |
dst | src2 | src1 | 0 | 1 | 1 | 1 | 1 | 0 | 1 |
3 | 3 | 3 | opcode |
src2 is left shifted by an unsigned value (src1) and the result is stored to dst. The shift in value is 0. If the src1 value is greater than 31, dst is cleared to 0.
CSR[2] EQ = (dst == 0)
dst = (src1 > 31) ? 0: (src2 << src1)