Browse Source

* x86-64 compilation fixed

florian 21 years ago
parent
commit
f936718fa1
4 changed files with 22 additions and 10 deletions
  1. 5 2
      compiler/cg64f64.pas
  2. 8 2
      compiler/ncgutil.pas
  3. 5 2
      compiler/x86_64/cgcpu.pas
  4. 4 4
      compiler/x86_64/cpuswtch.pas

+ 5 - 2
compiler/cg64f64.pas

@@ -181,7 +181,7 @@ unit cg64f64;
       begin
       begin
       end;
       end;
 
 
-    procedure tcg64f64.a_param64_reg(list : taasmoutput;reg64 : tregister;const locpara : tparalocation);
+    procedure tcg64f64.a_param64_reg(list : taasmoutput;reg : tregister64;const locpara : tparalocation);
       begin
       begin
       end;
       end;
 
 
@@ -223,7 +223,10 @@ unit cg64f64;
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.10  2003-12-24 00:10:02  florian
+  Revision 1.11  2004-01-13 18:08:58  florian
+    * x86-64 compilation fixed
+
+  Revision 1.10  2003/12/24 00:10:02  florian
     - delete parameter in cg64 methods removed
     - delete parameter in cg64 methods removed
 
 
   Revision 1.9  2003/12/22 19:00:17  florian
   Revision 1.9  2003/12/22 19:00:17  florian

+ 8 - 2
compiler/ncgutil.pas

@@ -1581,12 +1581,15 @@ implementation
               retsize:=current_procinfo.para_stack_size;
               retsize:=current_procinfo.para_stack_size;
             cg.g_return_from_proc(list,retsize);
             cg.g_return_from_proc(list,retsize);
           end;
           end;
+{$ifndef cpu64bit}
         if usesacchi then
         if usesacchi then
           begin
           begin
             cg.a_reg_dealloc(list,NR_FUNCTION_RETURN64_LOW_REG);
             cg.a_reg_dealloc(list,NR_FUNCTION_RETURN64_LOW_REG);
             cg.a_reg_dealloc(list,NR_FUNCTION_RETURN64_HIGH_REG);
             cg.a_reg_dealloc(list,NR_FUNCTION_RETURN64_HIGH_REG);
           end
           end
-        else if usesacc then
+        else
+{$endif cpu64bit}
+        if usesacc then
           cg.a_reg_dealloc(list,NR_FUNCTION_RETURN_REG);
           cg.a_reg_dealloc(list,NR_FUNCTION_RETURN_REG);
       end;
       end;
 
 
@@ -2057,7 +2060,10 @@ implementation
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.181  2004-01-12 22:11:38  peter
+  Revision 1.182  2004-01-13 18:08:58  florian
+    * x86-64 compilation fixed
+
+  Revision 1.181  2004/01/12 22:11:38  peter
     * use localalign info for alignment for locals and temps
     * use localalign info for alignment for locals and temps
     * sparc fpu flags branching added
     * sparc fpu flags branching added
     * moved powerpc copy_valye_openarray to generic
     * moved powerpc copy_valye_openarray to generic

+ 5 - 2
compiler/x86_64/cgcpu.pas

@@ -50,7 +50,7 @@ unit cgcpu;
 
 
     class function tcgx86_64.reg_cgsize(const reg: tregister): tcgsize;
     class function tcgx86_64.reg_cgsize(const reg: tregister): tcgsize;
     const subreg2cgsize:array[Tsubregister] of Tcgsize =
     const subreg2cgsize:array[Tsubregister] of Tcgsize =
-          (OS_NO,OS_8,OS_8,OS_16,OS_32,OS_64,OS_NO);
+          (OS_NO,OS_8,OS_8,OS_16,OS_32,OS_64,OS_NO,OS_NO);
 
 
     begin
     begin
       case getregtype(reg) of
       case getregtype(reg) of
@@ -206,7 +206,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.7  2003-12-24 01:47:23  florian
+  Revision 1.8  2004-01-13 18:08:58  florian
+    * x86-64 compilation fixed
+
+  Revision 1.7  2003/12/24 01:47:23  florian
     * first fixes to compile the x86-64 system unit
     * first fixes to compile the x86-64 system unit
 
 
   Revision 1.6  2003/12/22 19:00:17  florian
   Revision 1.6  2003/12/22 19:00:17  florian

+ 4 - 4
compiler/x86_64/cpuswtch.pas

@@ -84,9 +84,6 @@ begin
            else
            else
             if More='INTEL' then
             if More='INTEL' then
              initasmmode:=asmmode_i386_intel
              initasmmode:=asmmode_i386_intel
-           else
-            if More='DIRECT' then
-             initasmmode:=asmmode_direct
            else
            else
             IllegalPara(opt);
             IllegalPara(opt);
          end;
          end;
@@ -101,7 +98,10 @@ initialization
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.3  2003-09-25 13:13:32  florian
+  Revision 1.4  2004-01-13 18:08:58  florian
+    * x86-64 compilation fixed
+
+  Revision 1.3  2003/09/25 13:13:32  florian
     * more x86-64 fixes
     * more x86-64 fixes
 
 
   Revision 1.2  2002/08/10 14:53:38  carl
   Revision 1.2  2002/08/10 14:53:38  carl