mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-15 23:49:22 +02:00
+ plt support for x86_64
git-svn-id: trunk@1578 -
This commit is contained in:
parent
89094457c5
commit
bc7fab1aeb
@ -155,6 +155,8 @@ interface
|
|||||||
else
|
else
|
||||||
begin
|
begin
|
||||||
AsmWrite(o.ref^.symbol.name);
|
AsmWrite(o.ref^.symbol.name);
|
||||||
|
if o.ref^.refaddr=addr_pic then
|
||||||
|
AsmWrite('@PLT');
|
||||||
if o.ref^.offset>0 then
|
if o.ref^.offset>0 then
|
||||||
AsmWrite('+'+tostr(o.ref^.offset))
|
AsmWrite('+'+tostr(o.ref^.offset))
|
||||||
else
|
else
|
||||||
|
@ -536,8 +536,17 @@ unit cgx86;
|
|||||||
|
|
||||||
|
|
||||||
procedure tcgx86.a_call_name(list : taasmoutput;const s : string);
|
procedure tcgx86.a_call_name(list : taasmoutput;const s : string);
|
||||||
|
var
|
||||||
|
sym : tasmsymbol;
|
||||||
|
r : treference;
|
||||||
begin
|
begin
|
||||||
list.concat(taicpu.op_sym(A_CALL,S_NO,objectlibrary.newasmsymbol(s,AB_EXTERNAL,AT_FUNCTION)));
|
sym:=objectlibrary.newasmsymbol(s,AB_EXTERNAL,AT_FUNCTION);
|
||||||
|
reference_reset_symbol(r,sym,0);
|
||||||
|
if cs_create_pic in aktmoduleswitches then
|
||||||
|
r.refaddr:=addr_pic
|
||||||
|
else
|
||||||
|
r.refaddr:=addr_full;
|
||||||
|
list.concat(taicpu.op_ref(A_CALL,S_NO,r));
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user