Browse Source

* ie on powerpc fixed: synching of fpu register variables wasn't implemented, maybe subject to be merged back to 2.0.x

git-svn-id: trunk@1078 -
florian 20 years ago
parent
commit
5c35fd818d
1 changed files with 9 additions and 0 deletions
  1. 9 0
      compiler/ncgbas.pas

+ 9 - 0
compiler/ncgbas.pas

@@ -486,6 +486,15 @@ interface
               if release_to_normal then
               if release_to_normal then
                 tempinfo^.location.loc := LOC_REGISTER;
                 tempinfo^.location.loc := LOC_REGISTER;
             end;
             end;
+          LOC_CFPUREGISTER,
+          LOC_FPUREGISTER:
+            begin
+              { make sure the register allocator doesn't reuse the }
+              { register e.g. in the middle of a loop              }
+              cg.a_reg_sync(exprasmlist,tempinfo^.location.register);
+              if release_to_normal then
+                tempinfo^.location.loc := LOC_FPUREGISTER;
+            end;
           else
           else
             internalerror(200507161);
             internalerror(200507161);
         end;
         end;