##### 9.29.2.3 Pseudo Instructions
`li rt5,imm32`
load 32-bit integer into register rt5. ‘ sethi rt5,hi20(imm32) ’ and then ‘ ori rt5,reg,lo12(imm32) ’.
`la rt5,var`
Load 32-bit address of var into register rt5. ‘ sethi rt5,hi20(var) ’ and then ‘ ori reg,rt5,lo12(var)
`l.[bhw] rt5,var`
Load value of var into register rt5. ‘ sethi \$ta,hi20(var) ’ and then ‘ l[bhw]i rt5,[\$ta+lo12(var)]
`l.[bh]s rt5,var`
Load value of var into register rt5. ‘ sethi \$ta,hi20(var) ’ and then ‘ l[bh]si rt5,[\$ta+lo12(var)]
`l.[bhw]p rt5,var,inc`
Load value of var into register rt5 and increment \$ta by amount inc. ‘ la \$ta,var ’ and then ‘ l[bhw]i.bi rt5,[\$ta],inc
`l.[bhw]pc rt5,inc`
Continue loading value of var into register rt5 and increment \$ta by amount inc. ‘ l[bhw]i.bi rt5,[\$ta],inc.
`l.[bh]sp rt5,var,inc`
Load value of var into register rt5 and increment \$ta by amount inc. ‘ la \$ta,var ’ and then ‘ l[bh]si.bi rt5,[\$ta],inc
`l.[bh]spc rt5,inc`
Continue loading value of var into register rt5 and increment \$ta by amount inc. ‘ l[bh]si.bi rt5,[\$ta],inc.
`s.[bhw] rt5,var`
Store register rt5 to var. ‘ sethi \$ta,hi20(var) ’ and then ‘ s[bhw]i rt5,[\$ta+lo12(var)]
`s.[bhw]p rt5,var,inc`
Store register rt5 to var and increment \$ta by amount inc. ‘ la \$ta,var ’ and then ‘ s[bhw]i.bi rt5,[\$ta],inc
`s.[bhw]pc rt5,inc`
Continue storing register rt5 to var and increment \$ta by amount inc. ‘ s[bhw]i.bi rt5,[\$ta],inc.
`not rt5,ra5`
Alias of ‘ nor rt5,ra5,ra5 ’.
`neg rt5,ra5`
Alias of ‘ subri rt5,ra5,0 ’.
`br rb5`
Depending on how it is assembled, it is translated into ‘ r5 rb5 ’ or ‘ jr rb5 ’.
`b label`
Branch to label depending on how it is assembled, it is translated into ‘ j8 label ’, ‘ j label ’, or "‘ la \$ta,label ’ ‘ br \$ta ’".
`bral rb5`
Alias of jral br5 depending on how it is assembled, it is translated into ‘ jral5 rb5 ’ or ‘ jral rb5 ’.
`bal fname`
Alias of jal fname depending on how it is assembled, it is translated into ‘ jal fname ’ or "‘ la \$ta,fname ’ ‘ bral \$ta ’".
`call fname`
Call function fname same as ‘ jal fname ’.
`move rt5,ra5`
For 16-bit, this is ‘ mov55 rt5,ra5 ’. For no 16-bit, this is ‘ ori rt5,ra5,0 ’.
`move rt5,var`
This is the same as ‘ l.w rt5,var ’.
`move rt5,imm32`
This is the same as ‘ li rt5,imm32 ’.
`pushm ra5,rb5`
Push contents of registers from ra5 to rb5 into stack.
`push ra5`
Push content of register ra5 into stack. (same ‘ pushm ra5,ra5 ’).
`push.d var`
Push value of double-word variable var into stack.
`push.w var`
Push value of word variable var into stack.
`push.h var`
Push value of half-word variable var into stack.
`push.b var`
Push value of byte variable var into stack.
`pusha var`
Push 32-bit address of variable var into stack.
`pushi imm32`
Push 32-bit immediate value into stack.
`popm ra5,rb5`
Pop top of stack values into registers ra5 to rb5.
`pop rt5`
Pop top of stack value into register. (same as ‘ popm rt5,rt5 ’.)
`pop.d var,ra5`
Pop value of double-word variable var from stack using register ra5 as 2nd scratch register. (1st is \$ta)
`pop.w var,ra5`
Pop value of word variable var from stack using register ra5.
`pop.h var,ra5`
Pop value of half-word variable var from stack using register ra5.
`pop.b var,ra5`
Pop value of byte variable var from stack using register ra5.