Handbook
Glossary
##write-barrier-imm
Vocabulary
compiler
.
cfg
.
instructions
Definition
IN:
compiler.cfg.instructions
TUPLE:
##write-barrier-imm
<
vreg-insn
src slot tag temp1 temp2 insn#
;
Methods
USING:
accessors
compiler.cfg.gvn.avail
compiler.cfg.instructions
kernel
;
M:
##write-barrier-imm
>avail-insn-temps
[
]
change-temp1
[
]
change-temp2
drop
;
USING:
accessors
compiler.cfg.gvn.avail
compiler.cfg.instructions
kernel
;
M:
##write-barrier-imm
>avail-insn-uses
[
dup
>avail-vreg
or*
]
change-src
drop
;
USING:
accessors
compiler.cfg.instructions
compiler.cfg.linear-scan.assignment
kernel
;
M:
##write-barrier-imm
assign-insn-temps
[
vreg>reg
]
change-temp1
[
vreg>reg
]
change-temp2
drop
;
USING:
accessors
compiler.cfg.instructions
compiler.cfg.linear-scan.assignment
kernel
;
M:
##write-barrier-imm
assign-insn-uses
[
vreg>reg
]
change-src
drop
;
USING:
accessors
compiler.cfg.dce
compiler.cfg.instructions
kernel
;
M:
##write-barrier-imm
build-liveness-graph
dup
src>>
setter-liveness-graph
;
USING:
accessors
compiler.cfg.dce
compiler.cfg.instructions
kernel
;
M:
##write-barrier-imm
compute-live-vregs
dup
src>>
setter-live-vregs
;
USING:
accessors
compiler.cfg.instructions
compiler.cfg.representations.rewrite
kernel
;
M:
##write-barrier-imm
convert-insn-temps
[
]
change-temp1
[
]
change-temp2
drop
;
USING:
accessors
compiler.cfg.instructions
compiler.cfg.representations.rewrite
kernel
;
M:
##write-barrier-imm
convert-insn-uses
[
converted-value
]
change-src
drop
;
USING:
accessors
compiler.cfg.instructions
compiler.cfg.write-barrier
;
M:
##write-barrier-imm
eliminate-write-barrier
src>>
needs-write-barrier?
;
USING:
accessors
compiler.cfg.instructions
compiler.codegen
cpu.architecture
kernel
;
M:
##write-barrier-imm
generate-insn
[
src>>
]
keep
[
slot>>
]
keep
[
tag>>
]
keep
[
temp1>>
]
keep
[
temp2>>
]
keep
drop
%write-barrier-imm
;
USING:
accessors
compiler.cfg.dce
compiler.cfg.instructions
;
M:
##write-barrier-imm
live-insn?
src>>
live-vreg?
;
USING:
accessors
compiler.cfg.instructions
compiler.cfg.registers
compiler.cfg.renaming
kernel
;
M:
##write-barrier-imm
rename-insn-temps
[
drop
next-vreg
]
change-temp1
[
drop
next-vreg
]
change-temp2
drop
;
USING:
accessors
compiler.cfg.instructions
compiler.cfg.renaming
kernel
;
M:
##write-barrier-imm
rename-insn-uses
[
rename-value
]
change-src
drop
;
USING:
accessors
compiler.cfg.instructions
compiler.cfg.ssa.construction.private
kernel
;
M:
##write-barrier-imm
ssa-rename-insn-temps
[
]
change-temp1
[
]
change-temp2
drop
;
USING:
accessors
compiler.cfg.instructions
compiler.cfg.ssa.construction.private
kernel
;
M:
##write-barrier-imm
ssa-rename-insn-uses
[
top-name
]
change-src
drop
;
USING:
compiler.cfg.instructions
compiler.cfg.representations.preferred
cpu.architecture
kernel
;
M:
##write-barrier-imm
temp-vreg-reps
drop
{
int-rep
int-rep
}
;
USING:
accessors
arrays
compiler.cfg.def-use
compiler.cfg.instructions
kernel
;
M:
##write-barrier-imm
temp-vregs
[
temp1>>
]
[
temp2>>
]
bi
2array
;
USING:
compiler.cfg.instructions
compiler.cfg.representations.preferred
cpu.architecture
kernel
;
M:
##write-barrier-imm
uses-vreg-reps
drop
{
tagged-rep
}
;
USING:
accessors
arrays
compiler.cfg.def-use
compiler.cfg.instructions
;
M:
##write-barrier-imm
uses-vregs
src>>
1array
;