Преглед на файлове

* fixed refs bookkeeping of jump labels (fix from Florian in popt386)

git-svn-id: trunk@2225 -
Jonas Maebe преди 19 години
родител
ревизия
db580afbff
променени са 1 файла, в които са добавени 5 реда и са изтрити 1 реда
  1. 5 1
      compiler/aoptobj.pas

+ 5 - 1
compiler/aoptobj.pas

@@ -1055,7 +1055,11 @@ Unit AoptObj;
                                       taicpu(p).condition:=inverse_cond(taicpu(p).condition);
                                       taicpu(p).condition:=inverse_cond(taicpu(p).condition);
                                       tai_label(hp2).l.decrefs;
                                       tai_label(hp2).l.decrefs;
                                       taicpu(p).oper[0]^.ref^.symbol:=taicpu(hp1).oper[0]^.ref^.symbol;
                                       taicpu(p).oper[0]^.ref^.symbol:=taicpu(hp1).oper[0]^.ref^.symbol;
-                                      taicpu(p).oper[0]^.ref^.symbol.increfs;
+                                      { when freeing hp1, the reference count 
+                                        isn't decreased, so don't increase
+ 
+                                       taicpu(p).oper[0]^.ref^.symbol.increfs;
+                                      }
 {$ifdef SPARC}
 {$ifdef SPARC}
                                       hp2:=tai(hp1.next);
                                       hp2:=tai(hp1.next);
                                       asml.remove(hp2);
                                       asml.remove(hp2);