Arithmetic Shift Left
SHL
3-109
TMS320C62x/C67x Fixed-Point Instruction Set
Syntax
SHL (.unit)
src2, src1, dst
.unit = .S1 or .S2
Opcode map field used...
For operand type...
Unit
Opfield
src2
src1
dst
xsint
uint
sint
.S1, .S2
110011
src2
src1
dst
slong
uint
slong
.S1, .S2
110001
src2
src1
dst
xuint
uint
ulong
.S1, .S2
010011
src2
src1
dst
xsint
ucst5
sint
.S1, .S2
110010
src2
src1
dst
slong
ucst5
slong
.S1, .S2
110000
src2
src1
dst
xuint
ucst5
ulong
.S1, .S2
010010
Opcode
31
29 28 27
23 22
18 17
creg
z
dst
13 12
5
4
3
2
1
0
op
0
0
0
s
p
3
5
5
5
6
6
1
11
x
src1/cst
src2
Description
The
src2 operand is shifted to the left by the src1 operand. The result is placed
in
dst. When a register is used, the six LSBs specify the shift amount and valid
values are 0–40. When an immediate is used, valid shift amounts are 0–31.
If 39
<
src1
<
64,
src2 is shifted to the left by 40. Only the six LSBs are valid
for the register version of the instruction. If any of the 26 MSBs are non-zero,
the result is invalid.