mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-06-05 00:41:26 +02:00
+ added uses_registers overloaded method for sparc
This commit is contained in:
parent
cab15224db
commit
247effd0cc
@ -52,6 +52,7 @@ interface
|
|||||||
procedure do_register_allocation(list:Taasmoutput;headertai:tai);override;
|
procedure do_register_allocation(list:Taasmoutput;headertai:tai);override;
|
||||||
procedure allocexplicitregisters(list:Taasmoutput;rt:Tregistertype;r:Tcpuregisterset);override;
|
procedure allocexplicitregisters(list:Taasmoutput;rt:Tregistertype;r:Tcpuregisterset);override;
|
||||||
procedure deallocexplicitregisters(list:Taasmoutput;rt:Tregistertype;r:Tcpuregisterset);override;
|
procedure deallocexplicitregisters(list:Taasmoutput;rt:Tregistertype;r:Tcpuregisterset);override;
|
||||||
|
function uses_registers(rt:Tregistertype):boolean;override;
|
||||||
{ sparc special, needed by cg64 }
|
{ sparc special, needed by cg64 }
|
||||||
procedure handle_load_store(list:taasmoutput;isstore:boolean;op: tasmop;reg:tregister;ref: treference);
|
procedure handle_load_store(list:taasmoutput;isstore:boolean;op: tasmop;reg:tregister;ref: treference);
|
||||||
procedure handle_reg_const_reg(list:taasmoutput;op:Tasmop;src:tregister;a:aword;dst:tregister);
|
procedure handle_reg_const_reg(list:taasmoutput;op:Tasmop;src:tregister;a:aword;dst:tregister);
|
||||||
@ -336,6 +337,22 @@ implementation
|
|||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
function TCgSparc.uses_registers(rt:Tregistertype):boolean;
|
||||||
|
begin
|
||||||
|
case rt of
|
||||||
|
R_INTREGISTER :
|
||||||
|
result:=rgint.uses_registers;
|
||||||
|
R_MMREGISTER :
|
||||||
|
result:=false;
|
||||||
|
R_FPUREGISTER :
|
||||||
|
result:=rgfpu.uses_registers;
|
||||||
|
else
|
||||||
|
internalerror(2003120900);
|
||||||
|
end;
|
||||||
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure tcgsparc.add_move_instruction(instr:Taicpu);
|
procedure tcgsparc.add_move_instruction(instr:Taicpu);
|
||||||
begin
|
begin
|
||||||
rgint.add_move_instruction(instr);
|
rgint.add_move_instruction(instr);
|
||||||
@ -1216,7 +1233,10 @@ begin
|
|||||||
end.
|
end.
|
||||||
{
|
{
|
||||||
$Log$
|
$Log$
|
||||||
Revision 1.72 2003-10-29 15:18:33 mazen
|
Revision 1.73 2003-12-09 09:44:22 mazen
|
||||||
|
+ added uses_registers overloaded method for sparc
|
||||||
|
|
||||||
|
Revision 1.72 2003/10/29 15:18:33 mazen
|
||||||
+ added fake MM Registers support because of generic code need it.
|
+ added fake MM Registers support because of generic code need it.
|
||||||
|
|
||||||
Revision 1.71 2003/10/24 15:20:37 peter
|
Revision 1.71 2003/10/24 15:20:37 peter
|
||||||
|
Loading…
Reference in New Issue
Block a user