mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-12 20:33:13 +02:00
* don't change a sequence of shifts and sub/adds into a lea() in case
the flags are read afterwards (broke shldl/sub/sbb sequence generated for 64 bit "*2", which appears in bitpacked size calculation) git-svn-id: trunk@7336 -
This commit is contained in:
parent
c9c82ddbf8
commit
20206500aa
1
.gitattributes
vendored
1
.gitattributes
vendored
@ -6879,6 +6879,7 @@ tests/test/tprec10.pp svneol=native#text/plain
|
||||
tests/test/tprec11.pp svneol=native#text/plain
|
||||
tests/test/tprec12.pp svneol=native#text/plain
|
||||
tests/test/tprec13.pp svneol=native#text/plain
|
||||
tests/test/tprec14.pp svneol=native#text/plain
|
||||
tests/test/tprec2.pp svneol=native#text/plain
|
||||
tests/test/tprec3.pp svneol=native#text/plain
|
||||
tests/test/tprec4.pp svneol=native#text/plain
|
||||
|
@ -1497,7 +1497,9 @@ begin
|
||||
(((taicpu(hp1).opcode = A_INC) or
|
||||
(taicpu(hp1).opcode = A_DEC)) and
|
||||
(taicpu(hp1).oper[0]^.typ = Top_Reg) and
|
||||
(taicpu(hp1).oper[0]^.reg = taicpu(p).oper[1]^.reg))) Do
|
||||
(taicpu(hp1).oper[0]^.reg = taicpu(p).oper[1]^.reg))) and
|
||||
(not GetNextInstruction(hp1,hp2) or
|
||||
not instrReadsFlags(hp2)) Do
|
||||
begin
|
||||
TmpBool1 := False;
|
||||
if (taicpu(hp1).oper[0]^.typ = Top_Const) then
|
||||
|
9
tests/test/tprec14.pp
Normal file
9
tests/test/tprec14.pp
Normal file
@ -0,0 +1,9 @@
|
||||
type
|
||||
tr = bitpacked record
|
||||
l: longint;
|
||||
end;
|
||||
|
||||
begin
|
||||
if bitsizeof(tr) <> 32 then
|
||||
halt(1);
|
||||
end.
|
Loading…
Reference in New Issue
Block a user