| ... | ... | @@ -81,7 +81,7 @@ pub fn emitMir( |
| 81 | 81 | .stx => try emit.mirArithmetic3Op(inst), |
| 82 | 82 | |
| 83 | 83 | .sub => try emit.mirArithmetic3Op(inst), |
| 84 | | .subcc => @panic("TODO implement sparcv9 subcc"), |
| 84 | .subcc => try emit.mirArithmetic3Op(inst), |
| 85 | 85 | |
| 86 | 86 | .tcc => try emit.mirTrap(inst), |
| 87 | 87 | } |
| ... | ... | @@ -169,6 +169,7 @@ fn mirArithmetic3Op(emit: *Emit, inst: Mir.Inst.Index) !void { |
| 169 | 169 | .stw => try emit.writeInstruction(Instruction.stw(i13, rs1, imm, rd)), |
| 170 | 170 | .stx => try emit.writeInstruction(Instruction.stx(i13, rs1, imm, rd)), |
| 171 | 171 | .sub => try emit.writeInstruction(Instruction.sub(i13, rs1, imm, rd)), |
| 172 | .subcc => try emit.writeInstruction(Instruction.subcc(i13, rs1, imm, rd)), |
| 172 | 173 | else => unreachable, |
| 173 | 174 | } |
| 174 | 175 | } else { |
| ... | ... | @@ -188,6 +189,7 @@ fn mirArithmetic3Op(emit: *Emit, inst: Mir.Inst.Index) !void { |
| 188 | 189 | .stw => try emit.writeInstruction(Instruction.stw(Register, rs1, rs2, rd)), |
| 189 | 190 | .stx => try emit.writeInstruction(Instruction.stx(Register, rs1, rs2, rd)), |
| 190 | 191 | .sub => try emit.writeInstruction(Instruction.sub(Register, rs1, rs2, rd)), |
| 192 | .subcc => try emit.writeInstruction(Instruction.subcc(Register, rs1, rs2, rd)), |
| 191 | 193 | else => unreachable, |
| 192 | 194 | } |
| 193 | 195 | } |