mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-22 11:49:23 +02:00
* fixed bug in location_force_reg32() when converting smaller values to
64 bit locations * use cg.op_const_reg_reg() instead of a move and then cg.op_const_reg() in location_force_reg32()
This commit is contained in:
parent
6bd0424826
commit
75d8e42d85
@ -227,7 +227,10 @@ implementation
|
||||
begin
|
||||
{ load a smaller size to OS_64 }
|
||||
if l.loc=LOC_REGISTER then
|
||||
hregister:=rg.makeregsize(l.registerlow,OS_INT)
|
||||
begin
|
||||
hregister:=rg.makeregsize(l.registerlow,OS_INT);
|
||||
cg.a_load_reg_reg(list,l.size,l.registerlow,hregister);
|
||||
end
|
||||
else
|
||||
hregister:=rg.getregisterint(list);
|
||||
{ load value in low register }
|
||||
@ -261,8 +264,8 @@ implementation
|
||||
end
|
||||
else
|
||||
begin
|
||||
cg.a_load_reg_reg(list,OS_32,hregister,hregisterhi);
|
||||
cg.a_op_const_reg(list,OP_SAR,31,hregisterhi);
|
||||
cg.a_op_const_reg_reg(list,OP_SAR,OS_32,31,hregister,
|
||||
hregisterhi);
|
||||
end;
|
||||
end
|
||||
else
|
||||
@ -1625,7 +1628,13 @@ implementation
|
||||
end.
|
||||
{
|
||||
$Log$
|
||||
Revision 1.26 2002-07-27 19:53:51 jonas
|
||||
Revision 1.27 2002-07-28 15:59:57 jonas
|
||||
* fixed bug in location_force_reg32() when converting smaller values to
|
||||
64 bit locations
|
||||
* use cg.op_const_reg_reg() instead of a move and then cg.op_const_reg()
|
||||
in location_force_reg32()
|
||||
|
||||
Revision 1.26 2002/07/27 19:53:51 jonas
|
||||
+ generic implementation of tcg.g_flags2ref()
|
||||
* tcg.flags2xxx() now also needs a size parameter
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user