+ plt support for x86_64

git-svn-id: trunk@1578 -
This commit is contained in:
florian 2005-10-23 14:47:09 +00:00
parent 89094457c5
commit bc7fab1aeb
2 changed files with 12 additions and 1 deletions

View File

@ -155,6 +155,8 @@ interface
else
begin
AsmWrite(o.ref^.symbol.name);
if o.ref^.refaddr=addr_pic then
AsmWrite('@PLT');
if o.ref^.offset>0 then
AsmWrite('+'+tostr(o.ref^.offset))
else

View File

@ -536,8 +536,17 @@ unit cgx86;
procedure tcgx86.a_call_name(list : taasmoutput;const s : string);
var
sym : tasmsymbol;
r : treference;
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;