소스 검색

* MM registers which might not be changed can be still used in 3 op mathematical operations as source

git-svn-id: trunk@43509 -
florian 5 년 전
부모
커밋
91f3f022fe
1개의 변경된 파일1개의 추가작업 그리고 1개의 파일을 삭제
  1. 1 1
      compiler/x86/nx86add.pas

+ 1 - 1
compiler/x86/nx86add.pas

@@ -1107,7 +1107,7 @@ unit nx86add;
               mms_movescalar);
           end
         { we can use only right as left operand if the operation is commutative }
-        else if (right.location.loc=LOC_MMREGISTER) and (op in [OP_ADD,OP_MUL]) then
+        else if (right.location.loc in [LOC_MMREGISTER,LOC_CMMREGISTER]) and (op in [OP_ADD,OP_MUL]) then
           begin
             location.register:=cg.getmmregister(current_asmdata.CurrAsmList,left.location.size);
             { force floating point reg. location to be written to memory,