|
@@ -42,6 +42,10 @@ unit agarmgas;
|
|
procedure WriteInstruction(hp : tai);override;
|
|
procedure WriteInstruction(hp : tai);override;
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
+ TArmAppleGNUAssembler=class(TAppleGNUassembler)
|
|
|
|
+ constructor create(smart: boolean); override;
|
|
|
|
+ end;
|
|
|
|
+
|
|
|
|
|
|
const
|
|
const
|
|
gas_shiftmode2str : array[tshiftmode] of string[3] = (
|
|
gas_shiftmode2str : array[tshiftmode] of string[3] = (
|
|
@@ -68,6 +72,17 @@ unit agarmgas;
|
|
end;
|
|
end;
|
|
|
|
|
|
|
|
|
|
|
|
+{****************************************************************************}
|
|
|
|
+{ GNU/Apple PPC Assembler writer }
|
|
|
|
+{****************************************************************************}
|
|
|
|
+
|
|
|
|
+ constructor TArmAppleGNUAssembler.create(smart: boolean);
|
|
|
|
+ begin
|
|
|
|
+ inherited create(smart);
|
|
|
|
+ InstrWriter := TArmInstrWriter.create(self);
|
|
|
|
+ end;
|
|
|
|
+
|
|
|
|
+
|
|
{****************************************************************************}
|
|
{****************************************************************************}
|
|
{ Helper routines for Instruction Writer }
|
|
{ Helper routines for Instruction Writer }
|
|
{****************************************************************************}
|
|
{****************************************************************************}
|
|
@@ -251,7 +266,20 @@ unit agarmgas;
|
|
comment : '# ';
|
|
comment : '# ';
|
|
);
|
|
);
|
|
|
|
|
|
|
|
+ as_arm_gas_darwin_info : tasminfo =
|
|
|
|
+ (
|
|
|
|
+ id : as_darwin;
|
|
|
|
+ idtxt : 'AS-Darwin';
|
|
|
|
+ asmbin : 'as';
|
|
|
|
+ asmcmd : '-o $OBJ $ASM -arch arm';
|
|
|
|
+ supported_target : system_any;
|
|
|
|
+ flags : [af_allowdirect,af_needar,af_smartlink_sections,af_supports_dwarf];
|
|
|
|
+ labelprefix : 'L';
|
|
|
|
+ comment : '# ';
|
|
|
|
+ );
|
|
|
|
+
|
|
|
|
|
|
begin
|
|
begin
|
|
RegisterAssembler(as_arm_gas_info,TARMGNUAssembler);
|
|
RegisterAssembler(as_arm_gas_info,TARMGNUAssembler);
|
|
|
|
+ RegisterAssembler(as_arm_gas_darwin_info,TArmAppleGNUAssembler);
|
|
end.
|
|
end.
|