mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-19 23:19:24 +02:00
* x86-64: we can spill replace 32 bit operations if the operation does not modify a register
git-svn-id: trunk@49097 -
This commit is contained in:
parent
8ea95e9b95
commit
7811b915a9
@ -407,8 +407,10 @@ implementation
|
||||
{ 32 bit operations on 32 bit registers on x86_64 can result in
|
||||
zeroing the upper 32 bits of the register. This does not happen
|
||||
with memory operations, so we have to perform these calculations
|
||||
in registers. }
|
||||
if (opsize=S_L) then
|
||||
in registers.
|
||||
|
||||
However, for instructions not modifying registers, this is not a problem }
|
||||
if (opsize=S_L) and (opcode<>A_CMP) and (opcode<>A_TEST) and (opcode<>A_BT) then
|
||||
replaceoper:=-1;
|
||||
{$endif x86_64}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user