Browse Source

* Fixed r46776: With -O3 do not "coalesce" spilled nodes if the initial location is set.

git-svn-id: trunk@46777 -
yury 4 năm trước cách đây
mục cha
commit
71fcb74e95
1 tập tin đã thay đổi với 3 bổ sung1 xóa
  1. 3 1
      compiler/rgobj.pas

+ 3 - 1
compiler/rgobj.pas

@@ -2403,7 +2403,9 @@ unit rgobj;
                 interfere but are connected by a move instruction
 
                 doing so might save some mem->mem moves }
-              if (cs_opt_level3 in current_settings.optimizerswitches) and assigned(reginfo[t].movelist) then
+              if (cs_opt_level3 in current_settings.optimizerswitches) and
+                 getnewspillloc and
+                 assigned(reginfo[t].movelist) then
                 for j:=0 to reginfo[t].movelist^.header.count-1 do
                   begin
                     x:=Tmoveins(reginfo[t].movelist^.data[j]).x;