Problem with half size var declaration through "absolute" on PtrInt param under optimization
Original Reporter info from Mantis: Sergei Baranov
-
Reporter name:
Original Reporter info from Mantis: Sergei Baranov
- Reporter name:
Description:
Source code sample, that cause Internal error on x86_64 platform with -O2:
function IsInt32 (Q : int64) : boolean;
var L : longint absolute Q;
begin
Result := int64 (L) = Q;
end;
Next, downshift var size to reveal incorrect optimization on i386.
Steps to reproduce:
Compile with -MDelphi -O2 attached sample.
Additional information:
2.6.4: ok.
without -O2: ok.
with -O2: ppc386.exe produce incorrect code, ppcrossx64.exe report "Internal error 200306031" when compile.
Mantis conversion info:
- Mantis ID: 27210
- Platform: i386,x86_64
- Version: 2.7.1
- Fixed in version: 3.1.1
- Fixed in revision: 31193 (#af2c7bf0)
- Monitored by: » luizamerico (Luiz Americo), » Vincent (Vincent Snijders)