diff options
Diffstat (limited to 'cheri/sail_latex/sailfnexecuteCToPtr.tex')
| -rw-r--r-- | cheri/sail_latex/sailfnexecuteCToPtr.tex | 27 |
1 files changed, 0 insertions, 27 deletions
diff --git a/cheri/sail_latex/sailfnexecuteCToPtr.tex b/cheri/sail_latex/sailfnexecuteCToPtr.tex deleted file mode 100644 index f37d7ac3..00000000 --- a/cheri/sail_latex/sailfnexecuteCToPtr.tex +++ /dev/null @@ -1,27 +0,0 @@ -function clause #\hyperref[zexecute]{execute}#(#\hyperref[zCToPtr]{CToPtr}#(rd, cb, ct)) = -{ - #\hyperref[zcheckCPtwousable]{checkCP2usable}#(); - let ct_val = #\hyperref[zreadCapRegDDC]{readCapRegDDC}#(ct); - let cb_val = #\hyperref[zreadCapReg]{readCapReg}#(cb); - if (#\hyperref[zregisterzyinaccessible]{register\_inaccessible}#(cb)) then - #\hyperref[zraisezyctwozyexception]{raise\_c2\_exception}#(CapEx_AccessSystemRegsViolation, cb) - else if (#\hyperref[zregisterzyinaccessible]{register\_inaccessible}#(ct)) then - #\hyperref[zraisezyctwozyexception]{raise\_c2\_exception}#(CapEx_AccessSystemRegsViolation, ct) - else if #\hyperref[znot]{not}# (ct_val.tag) then - #\hyperref[zraisezyctwozyexception]{raise\_c2\_exception}#(CapEx_TagViolation, ct) - else if (cb_val.tag) & (cb_val.sealed) then - #\hyperref[zraisezyctwozyexception]{raise\_c2\_exception}#(CapEx_SealViolation, cb) - else - { - let cbBase = #\hyperref[zgetCapBase]{getCapBase}#(cb_val) in - let cbTop = #\hyperref[zgetCapTop]{getCapTop}#(cb_val) in - let ctBase = #\hyperref[zgetCapBase]{getCapBase}#(ct_val) in - let ctTop = #\hyperref[zgetCapTop]{getCapTop}#(ct_val) in - #\hyperref[zwGPR]{wGPR}#(rd) = if (#\hyperref[znot]{not}# (cb_val.tag)) | - (cbBase < ctBase) | - (cbTop > ctTop) then - #\hyperref[zzzeros]{zeros}#() - else - #\hyperref[ztozybits]{to\_bits}#(64, #\hyperref[zgetCapCursor]{getCapCursor}#(cb_val) - ctBase) - } -} |
