mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-17 03:39:28 +02:00
Fixed internal error in GOT related code for ARM internal assembler.
git-svn-id: trunk@30188 -
This commit is contained in:
parent
439027a8de
commit
52e505bff7
@ -1861,6 +1861,8 @@ implementation
|
||||
result:=LengthSleb128(value);
|
||||
aitconst_half16bit:
|
||||
result:=2;
|
||||
aitconst_got:
|
||||
result:=sizeof(pint);
|
||||
aitconst_gotoff_symbol:
|
||||
result:=4;
|
||||
else
|
||||
|
@ -331,6 +331,8 @@ implementation
|
||||
result:=R_ARM_CALL;
|
||||
RELOC_RELATIVE_CALL_THUMB:
|
||||
result:=R_ARM_THM_CALL;
|
||||
RELOC_GOT32:
|
||||
result:=R_ARM_GOT_BREL;
|
||||
else
|
||||
result:=0;
|
||||
writeln(objrel.typ);
|
||||
|
@ -1497,6 +1497,10 @@ Implementation
|
||||
{ Required for DWARF2 support under Windows }
|
||||
ObjData.writereloc(Tai_const(hp).symofs,sizeof(longint),Objdata.SymbolRef(tai_const(hp).sym),RELOC_SECREL32);
|
||||
end;
|
||||
{$ifdef arm}
|
||||
aitconst_got:
|
||||
ObjData.writereloc(Tai_const(hp).symofs,sizeof(longint),Objdata.SymbolRef(tai_const(hp).sym),RELOC_GOT32);
|
||||
{$endif arm}
|
||||
aitconst_gotoff_symbol:
|
||||
ObjData.writereloc(Tai_const(hp).symofs,sizeof(longint),Objdata.SymbolRef(tai_const(hp).sym),RELOC_GOTOFF);
|
||||
aitconst_uleb128bit,
|
||||
|
@ -70,6 +70,7 @@ interface
|
||||
RELOC_RELATIVE_24,
|
||||
RELOC_RELATIVE_24_THUMB,
|
||||
RELOC_RELATIVE_CALL_THUMB,
|
||||
RELOC_GOT32,
|
||||
{$endif arm}
|
||||
{ Relative relocation }
|
||||
RELOC_RELATIVE,
|
||||
|
Loading…
Reference in New Issue
Block a user