#ifndef _HWACHA_H #define _HWACHA_H // vector stuff #define VL vl #define UT_RS1(idx) uts[idx]->XPR[insn.rtype.rs1] #define UT_RS2(idx) uts[idx]->XPR[insn.rtype.rs2] #define UT_RD(idx) uts[idx]->XPR.write_port(insn.rtype.rd) #define UT_RA(idx) uts[idx]->XPR.write_port(1) #define UT_FRS1(idx) uts[idx]->FPR[insn.ftype.rs1] #define UT_FRS2(idx) uts[idx]->FPR[insn.ftype.rs2] #define UT_FRS3(idx) uts[idx]->FPR[insn.ftype.rs3] #define UT_FRD(idx) uts[idx]->FPR.write_port(insn.ftype.rd) #define UT_RM(idx) ((insn.ftype.rm != 7) ? insn.ftype.rm : \ ((uts[idx]->fsr & FSR_RD) >> FSR_RD_SHIFT)) #define UT_LOOP_START for (int i=0;i