2
0
Эх сурвалжийг харах

* different versions (behind cpu specific ifdefs) of process_ea_ref renamed
process_ea_ref_64_32, process_ea_ref_32 and process_ea_ref_16, indicating
the address size they support; this is done, so that in the future, we can
mix them all on the same x86 architecture and support multiple address sizes

git-svn-id: trunk@37407 -

nickysn 7 жил өмнө
parent
commit
8589b946fc
1 өөрчлөгдсөн 10 нэмэгдсэн , 4 устгасан
  1. 10 4
      compiler/x86/aasmcpu.pas

+ 10 - 4
compiler/x86/aasmcpu.pas

@@ -1844,7 +1844,7 @@ implementation
         end;
       end;
 
-    function process_ea_ref(const input:toper;var output:ea;rfield:longint):boolean;
+    function process_ea_ref_64_32(const input:toper;var output:ea;rfield:longint):boolean;
       var
         sym   : tasmsymbol;
         md,s  : byte;
@@ -2057,7 +2057,7 @@ implementation
 
 {$elseif defined(i386)}
 
-    function process_ea_ref(const input:toper;out output:ea;rfield:longint):boolean;
+    function process_ea_ref_32(const input:toper;out output:ea;rfield:longint):boolean;
       var
         sym   : tasmsymbol;
         md,s  : byte;
@@ -2225,7 +2225,7 @@ implementation
           end;
       end;
 
-    function process_ea_ref(const input:toper;out output:ea;rfield:longint):boolean;
+    function process_ea_ref_16(const input:toper;out output:ea;rfield:longint):boolean;
       var
         sym   : tasmsymbol;
         md,s,rv  : byte;
@@ -2320,7 +2320,13 @@ implementation
         {No register, so memory reference.}
         if input.typ<>top_ref then
           internalerror(200409263);
-        result:=process_ea_ref(input,output,rfield);
+{$if defined(x86_64)}
+        result:=process_ea_ref_64_32(input,output,rfield);
+{$elseif defined(i386)}
+        result:=process_ea_ref_32(input,output,rfield);
+{$elseif defined(i8086)}
+        result:=process_ea_ref_16(input,output,rfield);
+{$endif}
       end;
 
     function taicpu.calcsize(p:PInsEntry):shortint;