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

m68k: in fmove + op + fmove optimizations, allow the ops precision to be different to the fmoves

git-svn-id: trunk@34985 -
Károly Balogh 8 лет назад
Родитель
Сommit
a595877da3
1 измененных файлов с 3 добавлено и 2 удалено
  1. 3 2
      compiler/m68k/aoptcpu.pas

+ 3 - 2
compiler/m68k/aoptcpu.pas

@@ -209,8 +209,9 @@ unit aoptcpu;
          (getregtype(taicpu(p).oper[0]^.reg) = getregtype(taicpu(p).oper[1]^.reg)) and
          MatchOperand(taicpu(p).oper[1]^,taicpu(next2).oper[0]^) and
          MatchOperand(taicpu(next2).oper[1]^,taicpu(p).oper[0]^) and
-         ((taicpu(p).opsize = taicpu(next).opsize) and
-          (taicpu(p).opsize = taicpu(next2).opsize)) then
+         (taicpu(p).opsize = taicpu(next2).opsize) and
+         ((taicpu(p).opcode = A_FMOVE) or
+          (taicpu(p).opsize = taicpu(next).opsize)) then
         begin
           opstr:=opname(p);