;;; -*- Mode:LISP; Package:(MICRO GLOBAL); Base:8; Readtable:ZL -*- (define-micro-component popj-after-next () lam-ir-popj-after-next 1 ) (define-micro-component no-op () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu) (define-micro-component jump () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-unc lam-ir-n 1 lam-ir-jump-addr :required ) (define-micro-component jump-xct-next () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-unc lam-ir-jump-addr :required ) (define-micro-component call () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-unc lam-ir-n 1 lam-ir-p 1 lam-ir-jump-addr :required ) (define-micro-component call-xct-next () lam-ir-op lam-op-jump lam-ir-p 1 lam-ir-jump-cond lam-jump-cond-unc lam-ir-jump-addr :required ) (define-micro-component popj () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-unc lam-ir-r 1 lam-ir-n 1 ) (define-micro-component popj-xct-next () lam-ir-op lam-op-jump lam-ir-r 1 lam-ir-jump-cond lam-jump-cond-unc ) (define-micro-component jump-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m=a lam-ir-n 1 lam-ir-jump-addr :required ) (define-micro-component jump-equal-xct-next () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m=a lam-ir-jump-addr :required ) (define-micro-component call-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m=a lam-ir-n 1 lam-ir-p 1 lam-ir-jump-addr :required ) (define-micro-component call-equal-xct-next () lam-ir-op lam-op-jump lam-ir-p 1 lam-ir-jump-cond lam-jump-cond-m=a lam-ir-jump-addr :required ) (define-micro-component popj-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m=a lam-ir-r 1 lam-ir-n 1 ) (define-micro-component popj-equal-xct-next () lam-ir-op lam-op-jump lam-ir-r 1 lam-ir-jump-cond lam-jump-cond-m=a ) (define-micro-component jump-not-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m-neq-a lam-ir-n 1 lam-ir-jump-addr :required ) (define-micro-component jump-not-equal-xct-next () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m-neq-a lam-ir-jump-addr :required ) (define-micro-component call-not-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m-neq-a lam-ir-n 1 lam-ir-p 1 lam-ir-jump-addr :required ) (define-micro-component call-not-equal-xct-next () lam-ir-op lam-op-jump lam-ir-p 1 lam-ir-jump-cond lam-jump-cond-m-neq-a lam-ir-jump-addr :required ) (define-micro-component popj-not-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m-neq-a lam-ir-r 1 lam-ir-n 1 ) (define-micro-component popj-not-equal-xct-next () lam-ir-op lam-op-jump lam-ir-r 1 lam-ir-jump-cond lam-jump-cond-m-neq-a ) (define-micro-component jump-less-than-xct-next () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-ma lam-ir-jump-addr :required lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component jump-greater-or-equal-xct-next () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m>=a lam-ir-jump-addr :required lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component call-less-than-xct-next () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-ma lam-ir-p 1 lam-ir-jump-addr :required lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component call-greater-or-equal-xct-next () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m>=a lam-ir-p 1 lam-ir-jump-addr :required lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component popj-less-than-xct-next () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-ma lam-ir-r 1 lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component popj-greater-or-equal-xct-next () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m>=a lam-ir-r 1 lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component jump-less-than () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-ma lam-ir-n 1 lam-ir-jump-addr :required lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component jump-greater-or-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m>=a lam-ir-n 1 lam-ir-jump-addr :required lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component call-less-than () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-ma lam-ir-n 1 lam-ir-p 1 lam-ir-jump-addr :required lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component call-greater-or-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m>=a lam-ir-n 1 lam-ir-p 1 lam-ir-jump-addr :required lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component popj-less-than () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-ma lam-ir-n 1 lam-ir-r 1 lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component popj-greater-or-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-m>=a lam-ir-n 1 lam-ir-r 1 lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component jump-if-bit-set () lam-ir-op lam-op-jump ;;leave jump-cond 0 to mean "if bit set" lam-ir-n 1 lam-ir-jump-addr :required lam-ir-m-src :required) (define-micro-component jump-if-bit-set-xct-next () lam-ir-op lam-op-jump ;;leave jump-cond 0 to mean "if bit set" lam-ir-jump-addr :required lam-ir-m-src :required) (define-micro-component jump-if-bit-clear () lam-ir-op lam-op-jump lam-ir-jump-invert-condition 1 lam-ir-n 1 lam-ir-jump-addr :required lam-ir-m-src :required) (define-micro-component jump-if-bit-clear-xct-next () lam-ir-op lam-op-jump lam-ir-jump-invert-condition 1 lam-ir-jump-addr :required lam-ir-m-src :required) (define-micro-component call-if-bit-set () lam-ir-op lam-op-jump ;;leave jump-cond 0 to mean "if bit set" lam-ir-n 1 lam-ir-p 1 lam-ir-jump-addr :required lam-ir-m-src :required) (define-micro-component call-if-bit-set-xct-next () lam-ir-op lam-op-jump ;;leave jump-cond 0 to mean "if bit set" lam-ir-p 1 lam-ir-jump-addr :required lam-ir-m-src :required) (define-micro-component call-if-bit-clear () lam-ir-op lam-op-jump lam-ir-jump-invert-condition 1 lam-ir-p 1 lam-ir-n 1 lam-ir-jump-addr :required lam-ir-m-src :required) (define-micro-component call-if-bit-clear-xct-next () lam-ir-op lam-op-jump lam-ir-p 1 lam-ir-jump-invert-condition 1 lam-ir-jump-addr :required lam-ir-m-src :required) (define-micro-component popj-if-bit-set () lam-ir-op lam-op-jump ;;leave jump-cond 0 to mean "if bit set" lam-ir-n 1 lam-ir-r 1 lam-ir-m-src :required) (define-micro-component popj-if-bit-set-xct-next () lam-ir-op lam-op-jump ;;leave jump-cond 0 to mean "if bit set" lam-ir-r 1 lam-ir-m-src :required) (define-micro-component popj-if-bit-clear () lam-ir-op lam-op-jump lam-ir-jump-invert-condition 1 lam-ir-r 1 lam-ir-n 1 lam-ir-m-src :required) (define-micro-component popj-if-bit-clear-xct-next () lam-ir-op lam-op-jump lam-ir-jump-invert-condition 1 lam-ir-r 1 lam-ir-m-src :required) (define-micro-component jump-data-type-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-data-type-equal lam-ir-n 1 lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component jump-data-type-equal-xct-next () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-data-type-equal lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component call-data-type-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-data-type-equal lam-ir-p 1 lam-ir-n 1 lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component call-data-type-equal-xct-next () lam-ir-op lam-op-jump lam-ir-p 1 lam-ir-jump-cond lam-jump-cond-data-type-equal lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component popj-data-type-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-data-type-equal lam-ir-r 1 lam-ir-n 1 lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component popj-data-type-equal-xct-next () lam-ir-op lam-op-jump lam-ir-r 1 lam-ir-jump-cond lam-jump-cond-data-type-equal lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component jump-data-type-not-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-data-type-not-equal lam-ir-n 1 lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component jump-data-type-not-equal-xct-next () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-data-type-not-equal lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component call-data-type-not-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-data-type-not-equal lam-ir-p 1 lam-ir-n 1 lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component call-data-type-not-equal-xct-next () lam-ir-op lam-op-jump lam-ir-p 1 lam-ir-jump-cond lam-jump-cond-data-type-not-equal lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component popj-data-type-not-equal () lam-ir-op lam-op-jump lam-ir-jump-cond lam-jump-cond-data-type-not-equal lam-ir-r 1 lam-ir-n 1 lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component popj-data-type-not-equal-xct-next () lam-ir-op lam-op-jump lam-ir-r 1 lam-ir-jump-cond lam-jump-cond-data-type-not-equal lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component call-if-page-fault-or-interrupt () lam-ir-op lam-op-jump lam-ir-p 1 lam-ir-n 1 lam-ir-jump-cond lam-jump-cond-page-fault-or-interrupt lam-ir-jump-addr :required) (define-micro-component vma () lam-ir-m-src lam-m-src-vma lam-ir-clobbers-mem-subr-bit 1) (define-micro-component vma (destination) lam-ir-func-dest lam-func-dest-vma lam-ir-clobbers-mem-subr-bit 1) (define-micro-component vma-start-read (destination) lam-ir-func-dest lam-func-dest-vma-start-read lam-ir-clobbers-mem-subr-bit 1) (define-micro-component vma-start-write (destination) lam-ir-func-dest lam-func-dest-vma-start-write lam-ir-clobbers-mem-subr-bit 1) (define-micro-component md () lam-ir-m-src lam-m-src-md lam-ir-clobbers-mem-subr-bit 1) (define-micro-component md (destination) lam-ir-func-dest lam-func-dest-md lam-ir-clobbers-mem-subr-bit 1) (define-micro-component md-start-read (destination) lam-ir-func-dest lam-func-dest-md-start-read lam-ir-clobbers-mem-subr-bit 1) (define-micro-component md-start-write (destination) lam-ir-func-dest lam-func-dest-md-start-write lam-ir-clobbers-mem-subr-bit 1) (define-micro-component pdl-pop () lam-ir-m-src lam-m-src-c-pdl-buffer-pointer-pop) (define-micro-component pdl-top () lam-ir-m-src lam-m-src-c-pdl-buffer-pointer) (define-micro-component pdl-top (destination) lam-ir-func-dest lam-func-dest-c-pdl-buffer-pointer) (define-micro-component c-pdl-buffer-pointer () lam-ir-m-src lam-m-src-c-pdl-buffer-pointer) (define-micro-component pdl-pointer-indirect () lam-ir-m-src lam-m-src-c-pdl-buffer-pointer) (define-micro-component c-pdl-buffer-pointer (destination) lam-ir-func-dest lam-func-dest-c-pdl-buffer-pointer) (define-micro-component pdl-pointer-indirect (destination) lam-ir-func-dest lam-func-dest-c-pdl-buffer-pointer) (define-micro-component pdl-push (destination) lam-ir-func-dest lam-func-dest-c-pdl-buffer-pointer-push) (define-micro-component c-pdl-buffer-index () lam-ir-m-src lam-m-src-c-pdl-buffer-index) (define-micro-component pdl-index-indirect () lam-ir-m-src lam-m-src-c-pdl-buffer-index) (define-micro-component c-pdl-buffer-index (destination) lam-ir-func-dest lam-func-dest-c-pdl-buffer-index) (define-micro-component pdl-index-indirect (destination) lam-ir-func-dest lam-func-dest-c-pdl-buffer-index) (define-micro-component pdl-buffer-pointer () lam-ir-m-src lam-m-src-pdl-buffer-pointer) (define-micro-component pdl-buffer-pointer (destination) lam-ir-func-dest lam-func-dest-pdl-buffer-pointer) (define-micro-component pdl-buffer-index () lam-ir-m-src lam-m-src-pdl-buffer-index) (define-micro-component pdl-buffer-index (destination) lam-ir-func-dest lam-func-dest-pdl-buffer-index) (define-micro-component pdl-pointer () lam-ir-m-src lam-m-src-pdl-buffer-pointer) (define-micro-component pdl-pointer (destination) lam-ir-func-dest lam-func-dest-pdl-buffer-pointer) (define-micro-component pdl-index () lam-ir-m-src lam-m-src-pdl-buffer-index) (define-micro-component pdl-index (destination) lam-ir-func-dest lam-func-dest-pdl-buffer-index) (define-micro-component setz () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-setz) (define-micro-component and () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-and lam-ir-m-src :required lam-ir-a-src :required) (define-micro-component andca () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-andca lam-ir-m-src :required lam-ir-a-src :required) (define-micro-component setm () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-setm lam-ir-m-src :required) (define-micro-component andcm () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf 4 lam-ir-m-src :required lam-ir-a-src :required) (define-micro-component seta () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-seta lam-ir-a-src :required) (define-micro-component xor () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-xor lam-ir-m-src :required lam-ir-a-src :required) (define-micro-component ior () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-ior lam-ir-m-src :required lam-ir-a-src :required) (define-micro-component andcb () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf #o10 lam-ir-m-src :required lam-ir-a-src :required) (define-micro-component eqv () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf #o11 lam-ir-m-src :required lam-ir-a-src :required) (define-micro-component setca () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf #o12 lam-ir-a-src :required) (define-micro-component orca () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf #o13 lam-ir-a-src :required) (define-micro-component setcm () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf #o14 lam-ir-m-src :required) (define-micro-component orcm () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf #o15 lam-ir-m-src :required) (define-micro-component orcb () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf #o16 lam-ir-a-src :required lam-ir-m-src :required) (define-micro-component seto () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-seto) (define-micro-component add () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-add lam-ir-m-src :required lam-ir-a-src :required) (define-micro-component sub () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-sub lam-ir-m-src :required lam-ir-a-src :required) (define-micro-component sub-m+1 () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-m-a-1 lam-ir-m-src :required lam-ir-a-src :required) (define-micro-component m+m () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-m+m lam-ir-m-src :required) (define-micro-component m+1 () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-m+1 lam-ir-m-src :required) (define-micro-component m-a-1 () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-m-a-1 lam-ir-m-src :required lam-ir-a-src :required) (define-micro-component m+a+1 () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-m+a+1 lam-ir-m-src :required lam-ir-a-src :required) (define-micro-component m+m+1 () lam-ir-op lam-op-alu lam-ir-ob lam-ob-alu lam-ir-aluf lam-alu-m+m+1 lam-ir-m-src :required) (define-micro-component ldb () lam-ir-op lam-op-byte lam-ir-byte-func lam-byte-func-ldb lam-ir-m-src :required lam-byte-spec :required) (define-micro-component dpb () lam-ir-op lam-op-byte lam-ir-byte-func lam-byte-func-dpb lam-ir-m-src :required lam-byte-spec :required) (define-micro-component selective-deposit () lam-ir-op lam-op-byte lam-ir-byte-func lam-byte-func-selective-deposit lam-ir-m-src :required lam-byte-spec :required) (define-micro-component dispatch () lam-ir-op lam-op-dispatch lam-ir-dispatch-addr :required lam-byte-spec :required) (define-micro-component gc-map-test () lam-ir-slow-dest 1) (define-micro-component clobbers-mem-subr () lam-ir-clobbers-mem-subr-bit 1) (define-micro-component dispatch-write-vma () lam-ir-disp-write-vma 1 lam-ir-clobbers-mem-subr-bit 1) (define-micro-component alu-carry-in-one () lam-ir-carry 1) (define-micro-component output-selector-rightshift-1 () lam-ir-ob lam-ob-alu-right-1) (define-micro-component output-selector-leftshift-1 () lam-ir-ob lam-ob-alu-left-1) (define-micro-component shift-alu-right () lam-ir-ob lam-ob-alu-right-1) (define-micro-component shift-alu-left () lam-ir-ob lam-ob-alu-left-1) (define-micro-component output-selector-extend-25 () lam-ir-ob lam-ob-alu-extend-25) (define-micro-component output-selector-bit-mirror () lam-ir-ob lam-ob-alu-mirror) (define-micro-component output-selector-mask-25 () lam-ir-ob lam-ob-alu lam-ir-alu-control-5 1) (define-micro-component output-selector-mask-11 () lam-ir-ob 5 lam-ir-alu-control-5 1) (define-micro-component shift-q-left () lam-ir-q lam-q-left) (define-micro-component shift-q-right () lam-ir-q lam-q-right) (define-micro-component halt-bit () lam-ir-halt 1) (define-micro-component i-long () lam-ir-ilong 1) (define-micro-component i-arg () lam-ir-m-src lam-m-src-disp-const) (define-micro-component micro-stack-pntr-and-data () lam-ir-m-src lam-m-src-micro-stack) (define-micro-component q-r () lam-ir-m-src lam-m-src-q) (define-micro-component q-r (destination) lam-ir-q lam-q-load) (define-micro-component location-counter () lam-ir-m-src lam-m-src-lc) (define-micro-component location-counter (destination) lam-ir-func-dest lam-func-dest-lc) (define-micro-component micro-stack-pntr-and-data-pop () lam-ir-m-src lam-m-src-micro-stack-pop) (defun (:property micro-stack-pointer micro-expand) (ignore) `(micro-stack-pntr-and-data (byte 8 24.))) (defun (:property micro-stack-pointer micro-expand) (ignore) `(micro-stack-pntr-and-data-pop (byte 8 24.))) (defun (:property micro-stack-data micro-expand) (ignore) `(micro-stack-pntr-and-data (byte 16. 0))) (defun (:property micro-stack-data-pop micro-expand) (ignore) `(micro-stack-pntr-and-data-pop (byte 20. 0))) (defun (:property micro-stack-pc-data micro-expand) (ignore) `(micro-stack-pntr-and-data (byte 16. 0))) (defun (:property micro-stack-pc-data-pop micro-expand) (ignore) `(micro-stack-pntr-and-data-pop (byte 16. 0))) (define-micro-component interrupt-pointer () lam-ir-m-src lam-m-src-interrupt-pointer) (define-micro-component macro-ir-displacement () lam-ir-m-src lam-m-src-macro.ir.displacement) (define-micro-component macro-ir () lam-ir-m-src lam-m-src-macro.ir) (define-micro-component stat-counter () lam-ir-m-src lam-m-src-stat-counter) (define-micro-component stat-counter (destination) lam-ir-func-dest lam-func-dest-stat-counter) (define-micro-component stat-counter-aux () lam-ir-m-src lam-m-src-stat-counter-aux) (define-micro-component stat-counter-aux (destination) lam-ir-func-dest lam-func-dest-stat-counter-aux) (define-micro-component macro-ir-decode () lam-ir-m-src lam-m-src-macro.ir.decode.ram lam-ir-ilong 1) (define-micro-component macro-ir-decode (destination) lam-ir-func-dest lam-func-dest-macro.ir.decode.ram lam-ir-slow-dest 1) (define-micro-component spy-reg () lam-ir-m-src lam-m-src-spy-reg) (define-micro-component l1-map () lam-ir-m-src lam-m-src-l1-map lam-ir-clobbers-mem-subr-bit 1) (define-micro-component l1-map (destination) lam-ir-func-dest lam-func-dest-l1-map lam-ir-slow-dest 1 lam-ir-clobbers-mem-subr-bit 1) (define-micro-component l2-map-control () lam-ir-m-src lam-m-src-l2-map-control lam-ir-clobbers-mem-subr-bit 1) (define-micro-component l2-map-control (destination) lam-ir-func-dest lam-func-dest-l2-map-control lam-ir-clobbers-mem-subr-bit 1 lam-ir-slow-dest 1) (define-micro-component l2-map-physical-page () lam-ir-m-src lam-m-src-l2-map-physical-page lam-ir-clobbers-mem-subr-bit 1) (define-micro-component l2-map-physical-page (destination) lam-ir-func-dest lam-func-dest-l2-map-physical-page lam-ir-clobbers-mem-subr-bit 1 lam-ir-slow-dest 1) (define-micro-component interrupt-clear (destination) lam-ir-func-dest lam-func-dest-interrupt-clear) (define-micro-component rg-mode () lam-ir-m-src lam-m-src-rg-mode) (define-micro-component rg-mode (destination) lam-ir-func-dest lam-func-dest-rg-mode) (define-micro-component dp-mode () lam-ir-m-src lam-m-src-dp-mode) (define-micro-component dp-mode (destination) lam-ir-func-dest lam-func-dest-dp-mode) (define-micro-component micro-stack-data-push (destination) lam-ir-func-dest lam-func-dest-micro-stack-push) (define-micro-component oa-reg-low (destination) lam-ir-func-dest lam-func-dest-imod-low) (define-micro-component oa-reg-high (destination) lam-ir-func-dest lam-func-dest-imod-high) (define-micro-component oa-reg-hi (destination) lam-ir-func-dest lam-func-dest-imod-high) (defun (:property q-data-type micro-expand) (ignore) `((byte 5 25.))) (defun (:property q-data-type-plus-one-bit micro-expand) (ignore) `((byte 6 24.))) (defun (:property transport micro-expand) (ignore) `(d-transport i-not-linked oldspace-meta push-own-address (i-arg 1) q-data-type-plus-one-bit)) (define-micro-component i-not-linked () lam-ir-this-instruction-not-linked-to-next 1) (define-micro-component oldspace-meta () lam-ir-disp-enable-oldspace-meta 1) (define-micro-component push-own-address () lam-ir-push-own-address 1) (defun (:property check-page-read micro-macro) (form) form `((call-if-page-fault-or-interrupt pgf-r-i)))