Pārlūkot izejas kodu

* fix x86_64 compile

peter 21 gadi atpakaļ
vecāks
revīzija
f10c319261
1 mainītis faili ar 19 papildinājumiem un 6 dzēšanām
  1. 19 6
      compiler/x86/aasmcpu.pas

+ 19 - 6
compiler/x86/aasmcpu.pas

@@ -135,6 +135,10 @@ interface
     type
     type
       { What an instruction can change. Needed for optimizer and spilling code }
       { What an instruction can change. Needed for optimizer and spilling code }
       TInsChange = (Ch_None,
       TInsChange = (Ch_None,
+        Ch_All,
+        Ch_Rop1, Ch_Wop1, Ch_RWop1,Ch_Mop1,
+        Ch_Rop2, Ch_Wop2, Ch_RWop2,Ch_Mop2,
+        Ch_Rop3, Ch_WOp3, Ch_RWOp3,Ch_Mop3,
         {Read from a register}
         {Read from a register}
         Ch_REAX, Ch_RECX, Ch_REDX, Ch_REBX, Ch_RESP, Ch_REBP, Ch_RESI, Ch_REDI,
         Ch_REAX, Ch_RECX, Ch_REDX, Ch_REBX, Ch_RESP, Ch_REBP, Ch_RESI, Ch_REDI,
         {write from a register}
         {write from a register}
@@ -147,11 +151,12 @@ interface
         Ch_MEAX, Ch_MECX, Ch_MEDX, Ch_MEBX, Ch_MESP, Ch_MEBP, Ch_MESI, Ch_MEDI,
         Ch_MEAX, Ch_MECX, Ch_MEDX, Ch_MEBX, Ch_MESP, Ch_MEBP, Ch_MESI, Ch_MEDI,
         Ch_CDirFlag {clear direction flag}, Ch_SDirFlag {set dir flag},
         Ch_CDirFlag {clear direction flag}, Ch_SDirFlag {set dir flag},
         Ch_RFlags, Ch_WFlags, Ch_RWFlags, Ch_FPU,
         Ch_RFlags, Ch_WFlags, Ch_RWFlags, Ch_FPU,
-        Ch_Rop1, Ch_Wop1, Ch_RWop1,Ch_Mop1,
-        Ch_Rop2, Ch_Wop2, Ch_RWop2,Ch_Mop2,
-        Ch_Rop3, Ch_WOp3, Ch_RWOp3,Ch_Mop3,
         Ch_WMemEDI,
         Ch_WMemEDI,
-        Ch_All
+        { x86_64 registers }
+        Ch_RRAX, Ch_RRCX, Ch_RRDX, Ch_RRBX, Ch_RRSP, Ch_RRBP, Ch_RRSI, Ch_RRDI,
+        Ch_WRAX, Ch_WRCX, Ch_WRDX, Ch_WRBX, Ch_WRSP, Ch_WRBP, Ch_WRSI, Ch_WRDI,
+        Ch_RWRAX, Ch_RWRCX, Ch_RWRDX, Ch_RWRBX, Ch_RWRSP, Ch_RWRBP, Ch_RWRSI, Ch_RWRDI,
+        Ch_MRAX, Ch_MRCX, Ch_MRDX, Ch_MRBX, Ch_MRSP, Ch_MRBP, Ch_MRSI, Ch_MRDI
       );
       );
 
 
       TInsProp = packed record
       TInsProp = packed record
@@ -159,7 +164,12 @@ interface
       end;
       end;
 
 
     const
     const
-      InsProp : array[tasmop] of TInsProp = {$i i386prop.inc}
+      InsProp : array[tasmop] of TInsProp =
+{$ifdef x86_64}
+        {$i x8664pro.inc}
+{$else x86_64}
+        {$i i386prop.inc}
+{$endif x86_64}
 
 
     type
     type
       TOperandOrder = (op_intel,op_att);
       TOperandOrder = (op_intel,op_att);
@@ -2098,7 +2108,10 @@ begin
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.59  2004-10-04 20:46:22  peter
+  Revision 1.60  2004-10-04 20:55:04  peter
+    * fix x86_64 compile
+
+  Revision 1.59  2004/10/04 20:46:22  peter
     * spilling code rewritten for x86. It now used the generic
     * spilling code rewritten for x86. It now used the generic
       spilling routines. Special x86 optimization still needs
       spilling routines. Special x86 optimization still needs
       to be added.
       to be added.