소스 검색

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 년 전
부모
커밋
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);