| RTYPE reg COMMA reg COMMA reg { `MIPSRType ($1.op, $2, $4, $6) } | ITYPE reg COMMA reg COMMA NUM { `MIPSIType ($1.op, $2, $4, $6) } | SHIFTI reg COMMA reg COMMA NUM { `MIPSShiftI ($1.op, $2, $4, $6) } | SHIFTV reg COMMA reg COMMA reg { `MIPSShiftV ($1.op, $2, $4, $6) } | MULDIV reg COMMA reg { `MIPSMulDiv ($1.op, $2, $4) } | MFHILO reg { `MIPSMFHiLo ($1.op, $2) } | LUI reg COMMA NUM { `MIPSLUI ($2, $4) } | LOAD reg COMMA NUM LPAR reg RPAR { `MIPSLoad ($1.width, $1.signed, $1.linked, $6, $2, $4) } | STORE reg COMMA NUM LPAR reg RPAR { `MIPSStore ($1.width, $1.conditional, $6, $2, $4) } | LSLR reg COMMA NUM LPAR reg RPAR { `MIPSLSLR ($1.store, $1.double, $1.left, $6, $2, $4) } | SYNC { `MIPSSYNC } | BEQ reg COMMA reg COMMA NUM { `MIPSBEQ ( $2, $4, $6, $1.ne, $1.likely) } | BCMPZ reg COMMA NUM { `MIPSBCMPZ ( $2, $4, $1.cmp, $1.link, $1.likely) } | J NUM { `MIPSJ ($2) } | JAL NUM { `MIPSJAL ($2) } | JR reg { `MIPSJR ($2) } | JALR reg COMMA reg { `MIPSJALR ($2, $4) }