st Operation Font Conventions
if (PR[qp]) {
size = spill_form ? 8 : sz;
otype = (sttype == ‘rel') ? RELEASE : UNORDERED;

if (imm_base_update_form)
check_target_register
(r3);
if (GR[r3].nat || (normal_form && GR[r2].nat))
register_nat_consumption_fault(WRITE);

paddr = tlb_translate(GR[r3], size, WRITE, PSR.cpl, &mattr,
&tmp_unused);
if (spill_form && GR[r2].nat)
natd_gr_write(GR[r2], paddr, size, UM.be, mattr, otype, sthint);
else
mem_write
(GR[r2], paddr, size, UM.be, mattr, otype, sthint);

if (spill_form) {
bit_pos = GR[r3]{8:3};
AR
[UNAT]{bit_pos} = GR[r2].nat;
}

alat_inval_multiple_entries
(paddr, size);

if (imm_base_update_form) {
GR[r3] = GR[r3] + sign_ext(imm9, 9);
GR[r3].nat = 0;
mem_implicit_prefetch(GR[r3], sthint, WRITE);
}
}