mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-18 10:29:08 +02:00
* make thlcgcpu.g_intf_wrapper usable for sparc64 as well
git-svn-id: trunk@36665 -
This commit is contained in:
parent
e2226598ab
commit
cbe9a1b65f
@ -113,12 +113,12 @@ implementation
|
|||||||
begin
|
begin
|
||||||
if (procdef.extnumber=$ffff) then
|
if (procdef.extnumber=$ffff) then
|
||||||
Internalerror(200006139);
|
Internalerror(200006139);
|
||||||
{ mov 0(%rdi),%rax ; load vmt}
|
{ load vmt}
|
||||||
reference_reset_base(href,voidpointertype,paraloc^.register,0,sizeof(pint),[]);
|
reference_reset_base(href,voidpointertype,paraloc^.register,0,sizeof(pint),[]);
|
||||||
cg.a_load_ref_reg(list,OS_ADDR,OS_ADDR,href,NR_G1);
|
cg.a_load_ref_reg(list,OS_ADDR,OS_ADDR,href,NR_G1);
|
||||||
{ jmp *vmtoffs(%eax) ; method offs }
|
{ jmp to method }
|
||||||
reference_reset_base(href,voidpointertype,NR_G1,tobjectdef(procdef.struct).vmtmethodoffset(procdef.extnumber),sizeof(pint),[]);
|
reference_reset_base(href,voidpointertype,NR_G1,tobjectdef(procdef.struct).vmtmethodoffset(procdef.extnumber),sizeof(pint),[]);
|
||||||
list.concat(taicpu.op_ref_reg(A_LD,href,NR_G1));
|
cg.a_load_ref_reg(list,OS_ADDR,OS_ADDR,href,NR_G1);
|
||||||
list.concat(taicpu.op_reg(A_JMP,NR_G1));
|
list.concat(taicpu.op_reg(A_JMP,NR_G1));
|
||||||
{ Delay slot }
|
{ Delay slot }
|
||||||
list.Concat(TAiCpu.Op_none(A_NOP));
|
list.Concat(TAiCpu.Op_none(A_NOP));
|
||||||
|
Loading…
Reference in New Issue
Block a user