mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-16 10:39:18 +02:00
* reuse more sparc code for sparc64
git-svn-id: trunk@36961 -
This commit is contained in:
parent
7f72c780d8
commit
37a5716819
@ -1397,9 +1397,9 @@ implementation
|
|||||||
function assembler_block : tnode;
|
function assembler_block : tnode;
|
||||||
var
|
var
|
||||||
p : tnode;
|
p : tnode;
|
||||||
{$if not(defined(sparc)) and not(defined(arm)) and not(defined(avr)) and not(defined(mips))}
|
{$if not(defined(sparcgen)) and not(defined(arm)) and not(defined(avr)) and not(defined(mips))}
|
||||||
locals : longint;
|
locals : longint;
|
||||||
{$endif}
|
{$endif not(defined(sparcgen)) and not(defined(arm)) and not(defined(avr)) and not(defined(mips))}
|
||||||
srsym : tsym;
|
srsym : tsym;
|
||||||
begin
|
begin
|
||||||
if parse_generic then
|
if parse_generic then
|
||||||
@ -1425,7 +1425,7 @@ implementation
|
|||||||
include(current_procinfo.flags,pi_is_assembler);
|
include(current_procinfo.flags,pi_is_assembler);
|
||||||
p:=_asm_statement;
|
p:=_asm_statement;
|
||||||
|
|
||||||
{$if not(defined(sparc)) and not(defined(arm)) and not(defined(avr)) and not(defined(mips))}
|
{$if not(defined(sparcgen)) and not(defined(arm)) and not(defined(avr)) and not(defined(mips))}
|
||||||
if (po_assembler in current_procinfo.procdef.procoptions) then
|
if (po_assembler in current_procinfo.procdef.procoptions) then
|
||||||
begin
|
begin
|
||||||
{ set the framepointer to esp for assembler functions when the
|
{ set the framepointer to esp for assembler functions when the
|
||||||
@ -1451,7 +1451,7 @@ implementation
|
|||||||
current_procinfo.framepointer:=NR_STACK_POINTER_REG;
|
current_procinfo.framepointer:=NR_STACK_POINTER_REG;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
{$endif not(defined(sparc)) and not(defined(arm)) and not(defined(avr)) not(defined(mipsel))}
|
{$endif not(defined(sparcgen)) and not(defined(arm)) and not(defined(avr)) not(defined(mipsel))}
|
||||||
|
|
||||||
{ Flag the result as assigned when it is returned in a
|
{ Flag the result as assigned when it is returned in a
|
||||||
register.
|
register.
|
||||||
|
@ -2410,7 +2410,7 @@ unit rgobj;
|
|||||||
if not spilled then
|
if not spilled then
|
||||||
exit;
|
exit;
|
||||||
|
|
||||||
{$if defined(x86) or defined(mips) or defined(sparc) or defined(arm) or defined(m68k)}
|
{$if defined(x86) or defined(mips) or defined(sparcgen) or defined(arm) or defined(m68k)}
|
||||||
{ Try replacing the register with the spilltemp. This is useful only
|
{ Try replacing the register with the spilltemp. This is useful only
|
||||||
for the i386,x86_64 that support memory locations for several instructions
|
for the i386,x86_64 that support memory locations for several instructions
|
||||||
|
|
||||||
@ -2425,7 +2425,7 @@ unit rgobj;
|
|||||||
mustbespilled:=false;
|
mustbespilled:=false;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
{$endif defined(x86) or defined(mips) or defined(sparc) or defined(arm) or defined(m68k)}
|
{$endif defined(x86) or defined(mips) or defined(sparcgen) or defined(arm) or defined(m68k)}
|
||||||
|
|
||||||
{
|
{
|
||||||
There are registers that need are spilled. We generate the
|
There are registers that need are spilled. We generate the
|
||||||
|
Loading…
Reference in New Issue
Block a user