Explorar o código

* Fix register allocation bug that happens when a coalesced
move is spilled in its entirely.

git-svn-id: trunk@6408 -

daniel %!s(int64=18) %!d(string=hai) anos
pai
achega
9256c180de
Modificáronse 1 ficheiros con 1 adicións e 1 borrados
  1. 1 1
      compiler/x86/rgx86.pas

+ 1 - 1
compiler/x86/rgx86.pas

@@ -135,7 +135,7 @@ implementation
                     that doesn't need spilling }
                   if (oper[0]^.typ=top_reg) and
                      (oper[1]^.typ=top_reg) and
-                     (getsupreg(oper[0]^.reg)<>getsupreg(oper[1]^.reg)) then
+                     (get_alias(getsupreg(oper[0]^.reg))<>get_alias(getsupreg(oper[1]^.reg))) then
                     begin
                       { One of the arguments shall be able to be replaced }
                       if (getregtype(oper[0]^.reg)=regtype) and