Operation:
if (PR[qp]) {
itype = NON_ACCESS;
itype |= (read_write_form) ? READ|WRITE : ((write_form) ? WRITE : READ);
itype |= (fault_form) ? PROBE_FAULT : PROBE;
itype |= (register_form) ? REGISTER_FORM : IMM_FORM;
if (!fault_form)
check_target_register(r
if (GR[r
register_nat_consumption_fault(itype);
tmp_pl = (register_form) ? GR[r
if (tmp_pl < PSR.cpl)
tmp_pl = PSR.cpl;
if (fault_form) {
tlb_translate(GR[r
} else {
if (impl_probe_intercept())
GR[r
GR[r
}
}
Illegal Operation fault
Interruptions:
Register NaT Consumption fault
Unimplemented Data Address fault
Virtualization fault
Data Nested TLB fault
Alternate Data TLB fault
VHPT Data fault
Data TLB fault
Volume 3: Instruction Reference
);
1
].nat || (register_form ? GR[r
3
], 1, itype, tmp_pl, &mattr, &defer);
3
// regular_form
check_probe_virtualization_fault(itype, tmp_pl);
] = tlb_grant_permission(GR[r
1
].nat = 0;
1
].nat : 0))
2
]{1:0} : imm
;
2
2
], itype, tmp_pl);
3
Data Page Not Present fault
Data NaT Page Consumption fault
Data Key Miss fault
Data Key Permission fault
Data Access Rights fault
Data Dirty Bit fault
Data Access Bit fault
Data Debug fault
probe
3:219