mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-10-23 17:51:37 +02:00
+ some more usage of register temps
This commit is contained in:
parent
035c98cad2
commit
0b1069b6ab
@ -444,17 +444,15 @@ interface
|
||||
LOC_CREGISTER,
|
||||
LOC_REGISTER:
|
||||
begin
|
||||
{ make sure the register allocator doesn't reuse the }
|
||||
{ register e.g. in the middle of a loop }
|
||||
cg.a_load_reg_reg(exprasmlist,OS_INT,OS_INT,tempinfo^.loc.reg,
|
||||
tempinfo^.loc.reg);
|
||||
if release_to_normal then
|
||||
tempinfo^.loc.loc := LOC_REGISTER
|
||||
else
|
||||
begin
|
||||
{ make sure the register allocator doesn't reuse the }
|
||||
{ register e.g. in the middle of a loop }
|
||||
cg.a_load_reg_reg(exprasmlist,OS_INT,OS_INT,tempinfo^.loc.reg,
|
||||
tempinfo^.loc.reg);
|
||||
{ !!tell rgobj this register is no longer a regvar!! }
|
||||
cg.ungetregister(exprasmlist,tempinfo^.loc.reg);
|
||||
end;
|
||||
{ !!tell rgobj this register is no longer a regvar!! }
|
||||
cg.ungetregister(exprasmlist,tempinfo^.loc.reg);
|
||||
end;
|
||||
end;
|
||||
end;
|
||||
@ -471,7 +469,10 @@ begin
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.54 2004-02-03 19:48:06 jonas
|
||||
Revision 1.55 2004-02-04 18:45:29 jonas
|
||||
+ some more usage of register temps
|
||||
|
||||
Revision 1.54 2004/02/03 19:48:06 jonas
|
||||
* fixed and re-enabled temps in registers
|
||||
|
||||
Revision 1.53 2004/02/03 17:55:50 jonas
|
||||
|
@ -403,7 +403,7 @@ implementation
|
||||
if (filepara.left.nodetype <> loadn) then
|
||||
begin
|
||||
{ create a temp which will hold a pointer to the file }
|
||||
filetemp := ctempcreatenode.create(voidpointertype,voidpointertype.def.size,tt_persistent);
|
||||
filetemp := ctempcreatenode.create_reg(voidpointertype,voidpointertype.def.size,tt_persistent);
|
||||
|
||||
{ add it to the statements }
|
||||
addstatement(newstatement,filetemp);
|
||||
@ -2374,7 +2374,10 @@ begin
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.130 2004-02-03 22:32:54 peter
|
||||
Revision 1.131 2004-02-04 18:45:29 jonas
|
||||
+ some more usage of register temps
|
||||
|
||||
Revision 1.130 2004/02/03 22:32:54 peter
|
||||
* renamed xNNbittype to xNNinttype
|
||||
* renamed registers32 to registersint
|
||||
* replace some s32bit,u32bit with torddef([su]inttype).def.typ
|
||||
|
@ -321,7 +321,7 @@ implementation
|
||||
newblock:=internalstatements(newstatement);
|
||||
|
||||
{ create temp for result }
|
||||
temp := ctempcreatenode.create(p1.resulttype,p1.resulttype.def.size,tt_persistent);
|
||||
temp := ctempcreatenode.create_reg(p1.resulttype,p1.resulttype.def.size,tt_persistent);
|
||||
addstatement(newstatement,temp);
|
||||
|
||||
{ create call to fpc_getmem }
|
||||
@ -734,7 +734,10 @@ implementation
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.28 2004-02-03 22:32:54 peter
|
||||
Revision 1.29 2004-02-04 18:45:29 jonas
|
||||
+ some more usage of register temps
|
||||
|
||||
Revision 1.28 2004/02/03 22:32:54 peter
|
||||
* renamed xNNbittype to xNNinttype
|
||||
* renamed registers32 to registersint
|
||||
* replace some s32bit,u32bit with torddef([su]inttype).def.typ
|
||||
|
Loading…
Reference in New Issue
Block a user