Parents: | cpu |
Tags: | compiler |
Authors: | Slava Pestov |
float-vector-rep |
int-vector-rep |
reg-class |
representation |
scalar-rep |
signed-int-vector-rep |
unsigned-int-vector-rep |
vector-rep |
Word | Stack effect |
%abs-vector | ( dst src rep -- ) |
%abs-vector-reps | ( -- reps ) |
%add | ( dst src1 src2 -- ) |
%add-float | ( dst src1 src2 -- ) |
%add-imm | ( dst src1 src2 -- ) |
%add-sub-vector | ( dst src1 src2 rep -- ) |
%add-sub-vector-reps | ( -- reps ) |
%add-vector | ( dst src1 src2 rep -- ) |
%add-vector-reps | ( -- reps ) |
%alien-assembly | ( varargs? reg-inputs stack-inputs reg-outputs dead-outputs cleanup stack-size quot -- ) |
%alien-global | ( dst symbol library -- ) |
%alien-indirect | ( src varargs? reg-inputs stack-inputs reg-outputs dead-outputs cleanup stack-size gc-map -- ) |
%alien-invoke | ( varargs? reg-inputs stack-inputs reg-outputs dead-outputs cleanup stack-size symbols dll gc-map -- ) |
%alien-vector-reps | ( -- reps ) |
%allot | ( dst size class temp -- ) |
%and | ( dst src1 src2 -- ) |
%and-imm | ( dst src1 src2 -- ) |
%and-vector | ( dst src1 src2 rep -- ) |
%and-vector-reps | ( -- reps ) |
%andn-vector | ( dst src1 src2 rep -- ) |
%andn-vector-reps | ( -- reps ) |
%avg-vector | ( dst src1 src2 rep -- ) |
%avg-vector-reps | ( -- reps ) |
%bit-count | ( dst src -- ) |
%bit-test | ( dst src1 src2 temp -- ) |
%box | ( dst src func rep gc-map -- ) |
%box-alien | ( dst src temp -- ) |
%box-displaced-alien | ( dst displacement base temp base-class -- ) |
%box-long-long | ( dst src1 src2 func gc-map -- ) |
%c-invoke | ( symbols dll gc-map -- ) |
%call | ( word -- ) |
%call-gc | ( gc-map -- ) |
%callback-inputs | ( reg-outputs stack-outputs -- ) |
%callback-outputs | ( reg-inputs -- ) |
%check-nursery-branch | ( label size cc temp1 temp2 -- ) |
%clear | ( loc -- ) |
%compare | ( dst src1 src2 cc temp -- ) |
%compare-branch | ( label src1 src2 cc -- ) |
%compare-float-ordered | ( dst src1 src2 cc temp -- ) |
%compare-float-ordered-branch | ( label src1 src2 cc -- ) |
%compare-float-unordered | ( dst src1 src2 cc temp -- ) |
%compare-float-unordered-branch | ( label src1 src2 cc -- ) |
%compare-imm | ( dst src1 src2 cc temp -- ) |
%compare-imm-branch | ( label src1 src2 cc -- ) |
%compare-integer-imm | ( dst src1 src2 cc temp -- ) |
%compare-integer-imm-branch | ( label src1 src2 cc -- ) |
%compare-vector | ( dst src1 src2 rep cc -- ) |
%compare-vector-ccs | ( rep cc -- {cc,swap?}s not? ) |
%compare-vector-reps | ( cc -- reps ) |
%convert-integer | ( dst src c-type -- ) |
%copy | ( dst src rep -- ) |
%dispatch | ( src temp -- ) |
%div-float | ( dst src1 src2 -- ) |
%div-vector | ( dst src1 src2 rep -- ) |
%div-vector-reps | ( -- reps ) |
%dot-vector | ( dst src1 src2 rep -- ) |
%dot-vector-reps | ( -- reps ) |
%double>single-float | ( dst src -- ) |
%epilogue | ( n -- ) |
%fill-vector | ( dst rep -- ) |
%fill-vector-reps | ( -- reps ) |
%fixnum-add | ( label dst src1 src2 cc -- ) |
%fixnum-mul | ( label dst src1 src2 cc -- ) |
%fixnum-sub | ( label dst src1 src2 cc -- ) |
%float-pack-vector | ( dst src rep -- ) |
%float-pack-vector-reps | ( -- reps ) |
%float>integer | ( dst src -- ) |
%float>integer-vector | ( dst src rep -- ) |
%float>integer-vector-reps | ( -- reps ) |
%gather-int-vector-2 | ( dst src1 src2 rep -- ) |
%gather-int-vector-2-reps | ( -- reps ) |
%gather-int-vector-4 | ( dst src1 src2 src3 src4 rep -- ) |
%gather-int-vector-4-reps | ( -- reps ) |
%gather-vector-2 | ( dst src1 src2 rep -- ) |
%gather-vector-2-reps | ( -- reps ) |
%gather-vector-4 | ( dst src1 src2 src3 src4 rep -- ) |
%gather-vector-4-reps | ( -- reps ) |
%horizontal-add-vector | ( dst src1 src2 rep -- ) |
%horizontal-add-vector-reps | ( -- reps ) |
%horizontal-shl-vector-imm | ( dst src1 src2 rep -- ) |
%horizontal-shl-vector-imm-reps | ( -- reps ) |
%horizontal-shr-vector-imm | ( dst src1 src2 rep -- ) |
%horizontal-shr-vector-imm-reps | ( -- reps ) |
%horizontal-sub-vector | ( dst src1 src2 rep -- ) |
%horizontal-sub-vector-reps | ( -- reps ) |
%inc | ( loc -- ) |
%integer>float | ( dst src -- ) |
%integer>float-vector | ( dst src rep -- ) |
%integer>float-vector-reps | ( -- reps ) |
%integer>scalar | ( dst src rep -- ) |
%jump | ( word -- ) |
%jump-label | ( label -- ) |
%load-double | ( reg val -- ) |
%load-float | ( reg val -- ) |
%load-immediate | ( reg val -- ) |
%load-memory | ( dst base displacement scale offset rep c-type -- ) |
%load-memory-imm | ( dst base offset rep c-type -- ) |
%load-reference | ( reg obj -- ) |
%load-vector | ( reg val rep -- ) |
%local-allot | ( dst size align offset -- ) |
%log2 | ( dst src -- ) |
%max | ( dst src1 src2 -- ) |
%max-float | ( dst src1 src2 -- ) |
%max-vector | ( dst src1 src2 rep -- ) |
%max-vector-reps | ( -- reps ) |
%merge-vector-head | ( dst src1 src2 rep -- ) |
%merge-vector-reps | ( -- reps ) |
%merge-vector-tail | ( dst src1 src2 rep -- ) |
%min | ( dst src1 src2 -- ) |
%min-float | ( dst src1 src2 -- ) |
%min-vector | ( dst src1 src2 rep -- ) |
%min-vector-reps | ( -- reps ) |
%move-vector-mask | ( dst src rep -- ) |
%move-vector-mask-reps | ( -- reps ) |
%mul | ( dst src1 src2 -- ) |
%mul-float | ( dst src1 src2 -- ) |
%mul-high-vector | ( dst src1 src2 rep -- ) |
%mul-high-vector-reps | ( -- reps ) |
%mul-horizontal-add-vector | ( dst src1 src2 rep -- ) |
%mul-horizontal-add-vector-reps | ( -- reps ) |
%mul-imm | ( dst src1 src2 -- ) |
%mul-vector | ( dst src1 src2 rep -- ) |
%mul-vector-reps | ( -- reps ) |
%neg | ( dst src -- ) |
%not | ( dst src -- ) |
%not-vector | ( dst src rep -- ) |
%not-vector-reps | ( -- reps ) |
%or | ( dst src1 src2 -- ) |
%or-imm | ( dst src1 src2 -- ) |
%or-vector | ( dst src1 src2 rep -- ) |
%or-vector-reps | ( -- reps ) |
%peek | ( vreg loc -- ) |
%prologue | ( n -- ) |
%reload | ( dst rep src -- ) |
%replace | ( vreg loc -- ) |
%replace-imm | ( src loc -- ) |
%return | ( -- ) |
%sad-vector | ( dst src1 src2 rep -- ) |
%sad-vector-reps | ( -- reps ) |
%safepoint | ( -- ) |
%sar | ( dst src1 src2 -- ) |
%sar-imm | ( dst src1 src2 -- ) |
%saturated-add-vector | ( dst src1 src2 rep -- ) |
%saturated-add-vector-reps | ( -- reps ) |
%saturated-mul-vector | ( dst src1 src2 rep -- ) |
%saturated-mul-vector-reps | ( -- reps ) |
%saturated-sub-vector | ( dst src1 src2 rep -- ) |
%saturated-sub-vector-reps | ( -- reps ) |
%save-context | ( temp1 temp2 -- ) |
%scalar>integer | ( dst src rep -- ) |
%scalar>vector | ( dst src rep -- ) |
%select-vector | ( dst src n rep -- ) |
%select-vector-reps | ( -- reps ) |
%set-slot | ( src obj slot scale tag -- ) |
%set-slot-imm | ( src obj slot tag -- ) |
%set-vm-field | ( src offset -- ) |
%shl | ( dst src1 src2 -- ) |
%shl-imm | ( dst src1 src2 -- ) |
%shl-vector | ( dst src1 src2 rep -- ) |
%shl-vector-imm | ( dst src1 src2 rep -- ) |
%shl-vector-imm-reps | ( -- reps ) |
%shl-vector-reps | ( -- reps ) |
%shr | ( dst src1 src2 -- ) |
%shr-imm | ( dst src1 src2 -- ) |
%shr-vector | ( dst src1 src2 rep -- ) |
%shr-vector-imm | ( dst src1 src2 rep -- ) |
%shr-vector-imm-reps | ( -- reps ) |
%shr-vector-reps | ( -- reps ) |
%shuffle-vector | ( dst src shuffle rep -- ) |
%shuffle-vector-halves-imm | ( dst src1 src2 shuffle rep -- ) |
%shuffle-vector-halves-imm-reps | ( -- reps ) |
%shuffle-vector-imm | ( dst src shuffle rep -- ) |
%shuffle-vector-imm-reps | ( -- reps ) |
%shuffle-vector-reps | ( -- reps ) |
%signed-pack-vector | ( dst src1 src2 rep -- ) |
%signed-pack-vector-reps | ( -- reps ) |
%single>double-float | ( dst src -- ) |
%slot | ( dst obj slot scale tag -- ) |
%slot-imm | ( dst obj slot tag -- ) |
%spill | ( src rep dst -- ) |
%sqrt | ( dst src -- ) |
%sqrt-vector | ( dst src rep -- ) |
%sqrt-vector-reps | ( -- reps ) |
%store-memory | ( value base displacement scale offset rep c-type -- ) |
%store-memory-imm | ( value base offset rep c-type -- ) |
%sub | ( dst src1 src2 -- ) |
%sub-float | ( dst src1 src2 -- ) |
%sub-imm | ( dst src1 src2 -- ) |
%sub-vector | ( dst src1 src2 rep -- ) |
%sub-vector-reps | ( -- reps ) |
%tail>head-vector | ( dst src rep -- ) |
%test | ( dst src1 src2 cc temp -- ) |
%test-branch | ( label src1 src2 cc -- ) |
%test-imm | ( dst src1 src2 cc temp -- ) |
%test-imm-branch | ( label src1 src2 cc -- ) |
%test-vector | ( dst src1 temp rep vcc -- ) |
%test-vector-branch | ( label src1 temp rep vcc -- ) |
%test-vector-reps | ( -- reps ) |
%unbox | ( dst src func rep -- ) |
%unbox-alien | ( dst src -- ) |
%unbox-any-c-ptr | ( dst src -- ) |
%unbox-long-long | ( dst1 dst2 src func -- ) |
%unpack-vector-head | ( dst src rep -- ) |
%unpack-vector-head-reps | ( -- reps ) |
%unpack-vector-tail | ( dst src rep -- ) |
%unpack-vector-tail-reps | ( -- reps ) |
%unsigned-pack-vector | ( dst src1 src2 rep -- ) |
%unsigned-pack-vector-reps | ( -- reps ) |
%vector>scalar | ( dst src rep -- ) |
%vm-field | ( dst offset -- ) |
%write-barrier | ( src slot scale tag temp1 temp2 -- ) |
%write-barrier-imm | ( src slot tag temp1 temp2 -- ) |
%xor | ( dst src1 src2 -- ) |
%xor-imm | ( dst src1 src2 -- ) |
%xor-vector | ( dst src1 src2 rep -- ) |
%xor-vector-reps | ( -- reps ) |
%zero-vector | ( dst rep -- ) |
%zero-vector-reps | ( -- reps ) |
complex-addressing? | ( -- ? ) |
dummy-fp-params? | ( -- ? ) |
dummy-int-params? | ( -- ? ) |
dummy-stack-params? | ( -- ? ) |
enable-cpu-features | ( -- ) |
float-right-align-on-stack? | ( -- ? ) |
frame-reg | ( -- reg ) |
fused-unboxing? | ( -- ? ) |
gc-root-offset | ( spill-slot -- n ) |
immediate-arithmetic? | ( n -- ? ) |
immediate-bitwise? | ( n -- ? ) |
immediate-comparand? | ( n -- ? ) |
immediate-store? | ( n -- ? ) |
integer-float-needs-stack-frame? | ( -- ? ) |
long-long-odd-register? | ( -- ? ) |
long-long-on-stack? | ( -- ? ) |
machine-registers | ( -- assoc ) |
param-regs | ( abi -- regs ) |
reg-class-of | ( rep -- reg-class ) |
rep-component-type | ( rep -- n ) |
rep-length | ( rep -- n ) |
rep-size | ( rep -- n ) |
return-regs | ( -- regs ) |
return-struct-in-registers? | ( c-type -- ? ) |
scalar-rep-of | ( rep -- rep' ) |
stack-cleanup | ( stack-size return abi -- n ) |
stack-frame-size | ( stack-frame -- n ) |
struct-return-on-stack? | ( -- ? ) |
test-instruction? | ( -- ? ) |
value-struct? | ( c-type -- ? ) |
vm-stack-space | ( -- n ) |
Word | Stack effect |
%context | ( dst -- ) |
%merge-vector-head-reps | ( -- reps ) |
%merge-vector-tail-reps | ( -- reps ) |
%tagged>integer | ( dst src -- ) |
%tail>head-vector-reps | ( -- reps ) |
ex-%allot | ( -- string ) |
ex-%box-alien | ( -- string ) |
ex-%context | ( -- string ) |
ex-%copy | ( -- string ) |
ex-%safepoint | ( -- string ) |
ex-%save-context | ( -- string ) |
ex-%write-barrier | ( -- string ) |
immediate-shift-count? | ( n -- ? ) |
narrow-vector-rep | ( rep -- rep' ) |
reg-classes | ( -- value ) |
signed-rep | ( rep -- rep' ) |
vector-reps | ( -- value ) |
widen-vector-rep | ( rep -- rep' ) |
Word | Stack effect |
any-rep? | ( object -- ? ) |
char-16-rep? | ( object -- ? ) |
char-scalar-rep? | ( object -- ? ) |
double-2-rep? | ( object -- ? ) |
double-rep? | ( object -- ? ) |
float-4-rep? | ( object -- ? ) |
float-regs? | ( object -- ? ) |
float-rep? | ( object -- ? ) |
float-vector-rep? | ( object -- ? ) |
int-4-rep? | ( object -- ? ) |
int-regs? | ( object -- ? ) |
int-rep? | ( object -- ? ) |
int-scalar-rep? | ( object -- ? ) |
int-vector-rep? | ( object -- ? ) |
longlong-2-rep? | ( object -- ? ) |
longlong-scalar-rep? | ( object -- ? ) |
reg-class? | ( object -- ? ) |
representation? | ( object -- ? ) |
scalar-rep? | ( object -- ? ) |
short-8-rep? | ( object -- ? ) |
short-scalar-rep? | ( object -- ? ) |
signed-int-vector-rep? | ( object -- ? ) |
tagged-rep? | ( object -- ? ) |
uchar-16-rep? | ( object -- ? ) |
uchar-scalar-rep? | ( object -- ? ) |
uint-4-rep? | ( object -- ? ) |
uint-scalar-rep? | ( object -- ? ) |
ulonglong-2-rep? | ( object -- ? ) |
ulonglong-scalar-rep? | ( object -- ? ) |
unsigned-int-vector-rep? | ( object -- ? ) |
ushort-8-rep? | ( object -- ? ) |
ushort-scalar-rep? | ( object -- ? ) |
vector-rep? | ( object -- ? ) |