0x3c9: mflpcr({{Rt = LPCR;}});
0x3E8: mfpvr({{ Rt = PVR; }});
0x3e9: mflpidr({{Rt = LPIDR;}});
-
+ 0x3ff: mfpir({{ Rt = PIR;}}, [ IsPrivileged ]);
}
467: decode SPR {
0x004: mttfhar({{TFHAR = Rs;}});
'IC': ('IntReg', 'ud', 'INTREG_IC', 'IsInteger' , 9),
'VTB': ('IntReg', 'ud', 'INTREG_VTB', 'IsInteger' , 9),
'HSPRG1': ('IntReg', 'ud', 'INTREG_HSPRG1', 'IsInteger' , 9),
+ 'PIR': ('IntReg', 'uw', 'INTREG_PIR', 'IsInteger' , 9),
# Setting as IntReg so things are stored as an integer, not double
'FPSCR': ('IntReg', 'uw', 'INTREG_FPSCR', 'IsFloating', 9),
// CR, XER, LR, CTR, TAR, FPSCR, RSV, RSV-LEN, RSV-ADDR
// and zero register, which doesn't actually exist but needs a number
-const int NumIntSpecialRegs = 87;
+const int NumIntSpecialRegs = 88;
const int NumFloatArchRegs = 32;
const int NumFloatSpecialRegs = 0;
const int NumInternalProcRegs = 0;
INTREG_ASDR,
INTREG_IC,
INTREG_VTB,
- INTREG_HSPRG1
+ INTREG_HSPRG1,
+ INTREG_PIR
};
} // namespace PowerISA