mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-19 14:19:31 +02:00
* load left properly into a register in tx86addnode.second_addordinal, resolves #36287
git-svn-id: trunk@43449 -
This commit is contained in:
parent
9d0389aa53
commit
5f3050961f
@ -1520,16 +1520,11 @@ unit nx86add;
|
||||
end
|
||||
else
|
||||
begin
|
||||
{ at least one location is a register, re-use it, so we can try two operand opcodes }
|
||||
{ at least one location should be a register, if yes, try to re-use it, so we can try two operand opcodes }
|
||||
if left.location.loc<>LOC_REGISTER then
|
||||
begin
|
||||
if right.location.loc<>LOC_REGISTER then
|
||||
begin
|
||||
tmpreg:=cg.getintregister(current_asmdata.CurrAsmList,opsize);
|
||||
cg.a_load_loc_reg(current_asmdata.CurrAsmList,opsize,left.location,tmpreg);
|
||||
location_reset(left.location,LOC_REGISTER,opsize);
|
||||
left.location.register:=tmpreg;
|
||||
end
|
||||
hlcg.location_force_reg(current_asmdata.CurrAsmList,left.location,left.resultdef,left.resultdef,false)
|
||||
else
|
||||
begin
|
||||
location_swap(left.location,right.location);
|
||||
|
Loading…
Reference in New Issue
Block a user