sipush : push two-byte signed integer : index : visitIntInsn()

Description
sipush takes a single parameter, <n> (a 16-bit signed integer), sign extends it to a 32-bit int, and pushes the resulting int onto the operand stack.

sipush is typically more efficient than ldc. It also occupies fewer bytes in the class file.
Example
sipush    0x10    ; push the value 0x10 (16)
                  ; onto the operand stack
See also
bipush ldc ldc_w ldc2_w aconst_null iconst_m1 iconst_n lconst_l fconst_f dconst_d
Stack
Before After
... value
...
Bytecode
Type Description
u1 sipush opcode = 0x11 (17)
s2 <n>