compiler.cfg.ssa.destruction: we can coalesce two registers with different representations as long as they both belong to the same register class
parent
530accdad9
commit
da5f0d0a14
|
@ -3,6 +3,7 @@
|
||||||
USING: accessors arrays assocs fry kernel namespaces
|
USING: accessors arrays assocs fry kernel namespaces
|
||||||
sequences sequences.deep
|
sequences sequences.deep
|
||||||
sets vectors
|
sets vectors
|
||||||
|
cpu.architecture
|
||||||
compiler.cfg.rpo
|
compiler.cfg.rpo
|
||||||
compiler.cfg.def-use
|
compiler.cfg.def-use
|
||||||
compiler.cfg.renaming
|
compiler.cfg.renaming
|
||||||
|
@ -67,7 +68,7 @@ M: insn prepare-insn
|
||||||
[ defs-vreg ] [ uses-vregs ] bi
|
[ defs-vreg ] [ uses-vregs ] bi
|
||||||
2dup empty? not and [
|
2dup empty? not and [
|
||||||
first
|
first
|
||||||
2dup [ rep-of ] bi@ eq?
|
2dup [ rep-of reg-class-of ] bi@ eq?
|
||||||
[ try-to-coalesce ] [ 2drop ] if
|
[ try-to-coalesce ] [ 2drop ] if
|
||||||
] [ 2drop ] if ;
|
] [ 2drop ] if ;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue