Browse Source

* fixed rangecheck error

peter 22 years ago
parent
commit
c8300cab51
1 changed files with 6 additions and 11 deletions
  1. 6 11
      compiler/ncgcal.pas

+ 6 - 11
compiler/ncgcal.pas

@@ -478,7 +478,7 @@ implementation
                   location.register:=NR_FPU_RESULT_REG;
 {$ifdef x86}
                 tcgx86(cg).inc_fpu_stack;
-{$else x86} 
+{$else x86}
                 cg.ungetregister(exprasmlist,location.register);
                 hregister := cg.getfpuregister(exprasmlist,location.size);
                 cg.a_loadfpu_reg_reg(exprasmlist,location.size,location.register,hregister);
@@ -719,7 +719,7 @@ implementation
                 end;
               LOC_FPUREGISTER,LOC_CFPUREGISTER:
                 begin
-                  include(regs_to_push_fpu,procdefinition.funcret_paraloc[callerside].register);
+                  include(regs_to_push_fpu,getsupreg(procdefinition.funcret_paraloc[callerside].register));
                 end;
               LOC_MMREGISTER,LOC_CMMREGISTER:
                 begin
@@ -728,10 +728,6 @@ implementation
             end;
           end;
 
-         { Save registers destroyed by the call }
-         {$warning fime saveusedotherregisters.}
-{         cg.saveusedotherregisters(exprasmlist,pushedother,regs_to_push_other);}
-
          { Initialize for pushing the parameters }
          oldpushedparasize:=pushedparasize;
          pushedparasize:=0;
@@ -929,10 +925,6 @@ implementation
               cg.deallocexplicitregisters(exprasmlist,R_INTREGISTER,paramanager.get_volatile_registers_int(pocall_default));
            end;
 
-         { restore registers }
-         {$warning fixme restoreusedotherregisters}
-{         rg.restoreusedotherregisters(exprasmlist,pushedother);}
-
          { release temps of paras }
          release_para_temps;
 
@@ -1154,7 +1146,10 @@ begin
 end.
 {
   $Log$
-  Revision 1.134  2003-10-29 21:24:14  jonas
+  Revision 1.135  2003-10-30 17:12:49  peter
+    * fixed rangecheck error
+
+  Revision 1.134  2003/10/29 21:24:14  jonas
     + support for fpu temp parameters
     + saving/restoring of fpu register before/after a procedure call