mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-11-22 12:19:28 +01:00
m68k: made the vasm writer use the right section attributes, but disabled named sections until some vlink issues are sorted out
git-svn-id: trunk@35116 -
This commit is contained in:
parent
f1f18d6f83
commit
026f0e99f3
@ -35,6 +35,9 @@ unit ag68kvasm;
|
|||||||
|
|
||||||
type
|
type
|
||||||
tm68kvasm = class(Tm68kGNUassembler)
|
tm68kvasm = class(Tm68kGNUassembler)
|
||||||
|
protected
|
||||||
|
function sectionattrs(atype:TAsmSectiontype):string; override;
|
||||||
|
public
|
||||||
constructor CreateWithWriter(info: pasminfo; wr: TExternalAssemblerOutputFile; freewriter, smart: boolean); override;
|
constructor CreateWithWriter(info: pasminfo; wr: TExternalAssemblerOutputFile; freewriter, smart: boolean); override;
|
||||||
function MakeCmdLine: TCmdStr; override;
|
function MakeCmdLine: TCmdStr; override;
|
||||||
end;
|
end;
|
||||||
@ -60,6 +63,24 @@ unit ag68kvasm;
|
|||||||
InstrWriter := Tm68kInstrWriter.create(self);
|
InstrWriter := Tm68kInstrWriter.create(self);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
function tm68kvasm.sectionattrs(atype:TAsmSectiontype):string;
|
||||||
|
begin
|
||||||
|
case atype of
|
||||||
|
sec_code, sec_fpc, sec_init, sec_fini:
|
||||||
|
result:='acrx';
|
||||||
|
sec_data:
|
||||||
|
result:='adrw';
|
||||||
|
sec_rodata, sec_rodata_norel:
|
||||||
|
result:='adr';
|
||||||
|
sec_bss, sec_threadvar:
|
||||||
|
result:='aurw';
|
||||||
|
sec_stab, sec_stabstr:
|
||||||
|
result:='dr';
|
||||||
|
else
|
||||||
|
result:='';
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
function tm68kvasm.MakeCmdLine: TCmdStr;
|
function tm68kvasm.MakeCmdLine: TCmdStr;
|
||||||
var
|
var
|
||||||
objtype: string;
|
objtype: string;
|
||||||
@ -106,7 +127,7 @@ unit ag68kvasm;
|
|||||||
asmbin : 'vasmm68k_std';
|
asmbin : 'vasmm68k_std';
|
||||||
asmcmd: '-quiet -elfregs -gas $OTYPE $ARCH -o $OBJ $EXTRAOPT $ASM';
|
asmcmd: '-quiet -elfregs -gas $OTYPE $ARCH -o $OBJ $EXTRAOPT $ASM';
|
||||||
supported_targets : [system_m68k_amiga,system_m68k_atari,system_m68k_linux];
|
supported_targets : [system_m68k_amiga,system_m68k_atari,system_m68k_linux];
|
||||||
flags : [af_needar,af_smartlink_sections];
|
flags : [af_needar{,af_smartlink_sections}];
|
||||||
labelprefix : '.L';
|
labelprefix : '.L';
|
||||||
comment : '# ';
|
comment : '# ';
|
||||||
dollarsign: '$';
|
dollarsign: '$';
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user