Просмотр исходного кода

Also check that HP1 is a jump instruction with more than one operand to exit early

git-svn-id: trunk@45786 -
pierre 5 лет назад
Родитель
Сommit
0e9fc31dd7
1 измененных файлов с 1 добавлено и 1 удалено
  1. 1 1
      compiler/aoptobj.pas

+ 1 - 1
compiler/aoptobj.pas

@@ -1947,7 +1947,7 @@ Unit AoptObj;
         { Do not try to optimize if the test generating the condition
         { Do not try to optimize if the test generating the condition
           is the same instruction, like 'bne	$v0,$zero,.Lj3' for MIPS }
           is the same instruction, like 'bne	$v0,$zero,.Lj3' for MIPS }
         if (taicpu(p).ops>1) or ((hp1.typ=ait_instruction) and
         if (taicpu(p).ops>1) or ((hp1.typ=ait_instruction) and
-            (taicpu(hp1).ops>1)) then
+            IsJumpToLabel(taicpu(hp1)) and (taicpu(hp1).ops>1)) then
            exit;
            exit;
         while (hp1 <> BlockEnd) do
         while (hp1 <> BlockEnd) do
           begin
           begin