Browse Source

* when updating registers in RegUsedAfterInstruction, new reg. allocs should be ignored

git-svn-id: trunk@27711 -
florian 11 năm trước cách đây
mục cha
commit
8060d4a3f7
1 tập tin đã thay đổi với 1 bổ sung1 xóa
  1. 1 1
      compiler/aoptobj.pas

+ 1 - 1
compiler/aoptobj.pas

@@ -1119,7 +1119,7 @@ Unit AoptObj;
       function TAOptObj.RegUsedAfterInstruction(reg: Tregister; p: tai;
       function TAOptObj.RegUsedAfterInstruction(reg: Tregister; p: tai;
        var AllUsedRegs: TAllUsedRegs): Boolean;
        var AllUsedRegs: TAllUsedRegs): Boolean;
        begin
        begin
-         AllUsedRegs[getregtype(reg)].Update(tai(p.Next));
+         AllUsedRegs[getregtype(reg)].Update(tai(p.Next),true);
          RegUsedAfterInstruction :=
          RegUsedAfterInstruction :=
            (AllUsedRegs[getregtype(reg)].IsUsed(reg)); { optimization and
            (AllUsedRegs[getregtype(reg)].IsUsed(reg)); { optimization and
               (not(getNextInstruction(p,p)) or
               (not(getNextInstruction(p,p)) or