mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-12-04 13:27:15 +01:00
+ AT_METADATA symbol type for data that is unrelated to the program
exectuion (such as debug information). It's handled the same as
AT_DATA by assemblers/assembler writers.
git-svn-id: trunk@34149 -
This commit is contained in:
parent
d4945f4fd0
commit
5ac99f62e9
@ -54,6 +54,8 @@ interface
|
||||
so it must be taken care of it when creating pic
|
||||
}
|
||||
AT_ADDR,
|
||||
{ Label for debug or other non-program information }
|
||||
AT_METADATA,
|
||||
{ Thread-local symbol (ELF targets) }
|
||||
AT_TLS,
|
||||
{ GNU indirect function (ELF targets) }
|
||||
|
||||
@ -563,7 +563,7 @@ implementation
|
||||
assigned(hp.next) and
|
||||
(tai(hp.next).typ in [ait_const,ait_datablock,ait_realconst])
|
||||
) or
|
||||
(hp.sym.typ=AT_DATA);
|
||||
(hp.sym.typ in [AT_DATA,AT_METADATA]);
|
||||
|
||||
end;
|
||||
|
||||
|
||||
@ -1011,7 +1011,8 @@ implementation
|
||||
case objsym.typ of
|
||||
AT_FUNCTION :
|
||||
elfsym.st_info:=elfsym.st_info or STT_FUNC;
|
||||
AT_DATA :
|
||||
AT_DATA,
|
||||
AT_METADATA:
|
||||
elfsym.st_info:=elfsym.st_info or STT_OBJECT;
|
||||
AT_TLS:
|
||||
elfsym.st_info:=elfsym.st_info or STT_TLS;
|
||||
|
||||
@ -558,7 +558,7 @@ uses
|
||||
end
|
||||
else if Assigned(ro.symbol.objsection) and
|
||||
(ro.symbol.bind=AB_LOCAL) and
|
||||
(ro.symbol.typ=AT_DATA) then
|
||||
(ro.symbol.typ in [AT_DATA,AT_METADATA]) then
|
||||
begin
|
||||
relextern:=false;
|
||||
symnum:=TMachoObjSection(ro.symbol.objsection).inSegIdx;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user