* made TAArch64ClangGASAssembler inherit from TAArch64Assembler and removed custom

$TARGET handling (handled by the general triple handling now)

git-svn-id: trunk@45808 -
This commit is contained in:
Jonas Maebe 2020-07-19 14:30:38 +00:00
parent eb7ba1690e
commit edb660ed58

View File

@ -47,16 +47,13 @@ unit agcpugas;
constructor CreateWithWriter(info: pasminfo; wr: TExternalAssemblerOutputFile; freewriter, smart: boolean); override;
end;
TAArch64ClangGASAssembler=class(TGNUassembler)
TAArch64ClangGASAssembler=class(TAArch64Assembler)
private
function TargetStr:String;
procedure TransformSEHDirectives(list:TAsmList);
protected
function sectionflags(secflags:TSectionFlags):string;override;
public
function MakeCmdLine:TCmdStr; override;
procedure WriteAsmList; override;
constructor CreateWithWriter(info: pasminfo; wr: TExternalAssemblerOutputFile; freewriter, smart: boolean); override;
end;
const
@ -105,24 +102,6 @@ unit agcpugas;
{ CLang AArch64 Assembler writer }
{****************************************************************************}
constructor TAArch64CLangGASAssembler.CreateWithWriter(info: pasminfo; wr: TExternalAssemblerOutputFile; freewriter, smart: boolean);
begin
inherited;
InstrWriter := TAArch64InstrWriter.create(self);
end;
function TAArch64ClangGASAssembler.TargetStr:String;
begin
case target_info.system of
system_aarch64_win64:
result:='aarch64-windows';
else
internalerror(2020032201);
end;
end;
procedure TAArch64ClangGASAssembler.TransformSEHDirectives(list:TAsmList);
function convert_unwinddata(list:tasmlist):tdynamicarray;
@ -574,13 +553,6 @@ unit agcpugas;
end;
function TAArch64ClangGASAssembler.MakeCmdLine:TCmdStr;
begin
Result:=inherited MakeCmdLine;
Replace(Result,'$TARGET',TargetStr);
end;
procedure TAArch64ClangGASAssembler.WriteAsmList;
begin
{ clang does not support all the directives we need, so we need to