## UNCHECKED ARITHMETIC AND LOGICAL OPERATIONS [add] code = 58 class = op pop = 2 push = 1 instruction = ${DEST0} = ${STACK0} + ${STACK1} typeinfo = typeinfo_bin_num_op(${STYPES}, ${DTYPES}) [sub] code = 59 class = op pop = 2 push = 1 instruction = ${DEST0} = ${STACK1} - ${STACK0} typeinfo = typeinfo_bin_num_op(${STYPES}, ${DTYPES}) [mul] code = 5A class = op pop = 2 push = 1 instruction = ${DEST0} = ${STACK1} * ${STACK0} typeinfo = typeinfo_bin_num_op(${STYPES}, ${DTYPES}) [div] code = 5B class = op pop = 2 push = 1 instruction = ${DEST0} = ${STACK1} / ${STACK0} typeinfo = typeinfo_bin_num_op(${STYPES}, ${DTYPES}) [div.un] code = 5C class = op pop = 2 push = 1 instruction = net_div_un ${DEST0}, ${STACK1}, ${STACK0} typeinfo = typeinfo_bin_num_op(${STYPES}, ${DTYPES}) [rem] code = 5D class = op pop = 2 push = 1 instruction = ${DEST0} = cmod ${STACK1}, ${STACK0} typeinfo = typeinfo_bin_num_op(${STYPES}, ${DTYPES}) [rem.un] code = 5E class = op pop = 2 push = 1 instruction = net_rem_un ${DEST0}, ${STACK1}, ${STACK0} typeinfo = typeinfo_bin_num_op(${STYPES}, ${DTYPES}) [neg] code = 65 class = op pop = 1 push = 1 instruction = ${DEST0} = neg ${STACK0} typeinfo = <= " ${INS} = concat ${STACK0} ${INS} = concat " goto LAB" ${INS} = concat ${STEMP0} ${INS} = concat "\n" PIR [bge] code = 3C class = branch pop = 2 arguments = int32 pir = <= " ${INS} = concat ${STACK0} ${INS} = concat " goto LAB" ${INS} = concat ${STEMP0} ${INS} = concat "\n" PIR [bge.un.s] code = 34 class = branch pop = 2 arguments = int8 pir = < " ${INS} = concat ${STACK0} ${INS} = concat " goto LAB" ${INS} = concat ${STEMP0} ${INS} = concat "\n" PIR [bgt] code = 3D class = branch pop = 2 arguments = int32 pir = < " ${INS} = concat ${STACK0} ${INS} = concat " goto LAB" ${INS} = concat ${STEMP0} ${INS} = concat "\n" PIR [bgt.un.s] code = 35 class = branch pop = 2 arguments = int8 pir = < " ${INS} = concat ${STACK0} ${INS} = concat "\n" PIR typeinfo = <