Explorar o código

* used "gas" instead of "as" for Solaris (both sparc and x86)
and not for linux/sparc

git-svn-id: trunk@4659 -

Jonas Maebe %!s(int64=19) %!d(string=hai) anos
pai
achega
2000c7d3e3
Modificáronse 4 ficheiros con 30 adicións e 4 borrados
  1. 13 0
      compiler/sparc/cpugas.pas
  2. 1 0
      compiler/systems.pas
  3. 4 4
      compiler/systems/i_sunos.pas
  4. 12 0
      compiler/x86/agx86att.pas

+ 13 - 0
compiler/sparc/cpugas.pas

@@ -207,6 +207,18 @@ implementation
          (
            id     : as_gas;
            idtxt  : 'AS';
+           asmbin : 'as';
+           asmcmd : '-o $OBJ $ASM';
+           supported_target : system_any;
+           flags : [af_allowdirect,af_needar,af_smartlink_sections];
+           labelprefix : '.L';
+           comment : '# ';
+         );
+
+      as_sparc_gas_info : tasminfo =
+         (
+           id     : as_ggas;
+           idtxt  : 'GAS';
            asmbin : 'gas';
            asmcmd : '-o $OBJ $ASM';
            supported_target : system_any;
@@ -217,4 +229,5 @@ implementation
 
 begin
   RegisterAssembler(as_SPARC_as_info,TGasSPARC);
+  RegisterAssembler(as_SPARC_gas_info,TGasSPARC);
 end.

+ 1 - 0
compiler/systems.pas

@@ -151,6 +151,7 @@ interface
              ,as_arm_pecoffwince
              ,as_x86_64_elf64
              ,as_sparc_elf32
+             ,as_ggas                  { gnu assembler called "gas" instead of "as" }
        );
 
        tar = (ar_none

+ 4 - 4
compiler/systems/i_sunos.pas

@@ -57,8 +57,8 @@ unit i_sunos;
             Cprefix      : '';
             newline      : #10;
             dirsep       : '/';
-            assem        : as_gas;
-            assemextern  : as_gas;
+            assem        : as_ggas;
+            assemextern  : as_ggas;
             link         : nil;
             linkextern   : nil;
             ar           : ar_gnu_gar;
@@ -115,8 +115,8 @@ unit i_sunos;
             Cprefix      : '';
             newline      : #10;
             dirsep       : '/';
-            assem        : as_gas;
-            assemextern  : as_gas;
+            assem        : as_ggas;
+            assemextern  : as_ggas;
             link         : nil;
             linkextern   : nil;
             ar           : ar_gnu_gar;

+ 12 - 0
compiler/x86/agx86att.pas

@@ -319,6 +319,17 @@ interface
             comment : '# ';
           );
 
+       as_i386_gas_info : tasminfo =
+          (
+            id     : as_ggas;
+            idtxt  : 'GAS';
+            asmbin : 'gas';
+            asmcmd : '--32 -o $OBJ $ASM';
+            supported_target : system_any;
+            flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
+            labelprefix : '.L';
+            comment : '# ';
+          );
 {$endif x86_64}
 
 initialization
@@ -326,6 +337,7 @@ initialization
   RegisterAssembler(as_x86_64_as_info,Tx86ATTAssembler);
 {$else x86_64}
   RegisterAssembler(as_i386_as_info,Tx86ATTAssembler);
+  RegisterAssembler(as_i386_gas_info,Tx86ATTAssembler);
   RegisterAssembler(as_i386_gas_darwin_info,Tx86AppleGNUAssembler);
   RegisterAssembler(as_i386_as_aout_info,Tx86ATTAssembler);
 {$endif x86_64}