浏览代码

* fixed sse float substraction in case of swapped operands

git-svn-id: trunk@5817 -
Jonas Maebe 18 年之前
父节点
当前提交
a4a54a105d
共有 1 个文件被更改,包括 2 次插入3 次删除
  1. 2 3
      compiler/x86/nx86add.pas

+ 2 - 3
compiler/x86/nx86add.pas

@@ -728,9 +728,8 @@ unit nx86add;
           end
         else
           begin
-            if not(nf_swaped in flags) then
-              if right.location.loc in [LOC_FPUREGISTER,LOC_CFPUREGISTER] then
-                location_force_mem(current_asmdata.CurrAsmList,right.location);
+            if (nf_swaped in flags) then
+              swapleftright;
 
             location_force_mmregscalar(current_asmdata.CurrAsmList,left.location,false);
             location.register:=left.location.register;