v2: Reworked to assign half-opcodes in ir3_ra.c (krh).
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3737>
/* cat4 instructions: */
INSTR1(RCP)
INSTR1(RSQ)
+INSTR1(HRSQ)
INSTR1(LOG2)
+INSTR1(HLOG2)
INSTR1(EXP2)
+INSTR1(HEXP2)
INSTR1(SIN)
INSTR1(COS)
INSTR1(SQRT)
break;
}
break;
+ case 4:
+ switch (instr->opc) {
+ case OPC_RSQ:
+ instr->opc = OPC_HRSQ;
+ break;
+ case OPC_LOG2:
+ instr->opc = OPC_HLOG2;
+ break;
+ case OPC_EXP2:
+ instr->opc = OPC_HEXP2;
+ break;
+ default:
+ break;
+ }
+ break;
case 5:
instr->cat5.type = half_type(instr->cat5.type);
break;