Răsfoiți Sursa

m68k: fixed a long standing issue, where FPU registers would be clamped to single precision during spilling

git-svn-id: trunk@46307 -
Károly Balogh 5 ani în urmă
părinte
comite
f20c76d73b
1 a modificat fișierele cu 2 adăugiri și 4 ștergeri
  1. 2 4
      compiler/m68k/aasmcpu.pas

+ 2 - 4
compiler/m68k/aasmcpu.pas

@@ -556,8 +556,7 @@ type
           R_ADDRESSREGISTER :
             result:=taicpu.op_ref_reg(A_MOVE,S_L,ref,r);
           R_FPUREGISTER :
-            // no need to handle sizes here
-            result:=taicpu.op_ref_reg(A_FMOVE,S_FS,ref,r);
+            result:=taicpu.op_ref_reg(A_FMOVE,fpuregopsize,ref,r);
           else
             internalerror(200602011);
         end;
@@ -572,8 +571,7 @@ type
           R_ADDRESSREGISTER :
             result:=taicpu.op_reg_ref(A_MOVE,S_L,r,ref);
           R_FPUREGISTER :
-            // no need to handle sizes here
-            result:=taicpu.op_reg_ref(A_FMOVE,S_FS,r,ref);
+            result:=taicpu.op_reg_ref(A_FMOVE,fpuregopsize,r,ref);
           else
             internalerror(200602012);
         end;