REGVAR x86-64 optimization bug
FPC [git main]
FPC target: x64
LINUX + WINDOWS
program app;
{$mode objfpc}
{$OPTIMIZATION OFF}
{$OPTIMIZATION REGVAR}
var
arr: array [0..3] of Double;
procedure mdtgen(n: Integer; var alu: Double);
var
nsr, ind, i, j: Integer;
sumrowi, h, s: Double;
palu, t, pp: PDouble;
singular : Boolean;
begin
palu := @alu;
pp := @alu;
nsr := n*sizeof(Double);
getmem(t, nsr);
for i:=1 to n do
begin
for j:=1 to n do;
ind:=1;
h := random;
singular := false;
sumrowi := palu[ind];
end;
s:=0.0;
i:=0;
h:=s+palu[i+i+0]; // <- ACCESS VIOLATION: addsd xmm0,[rax*8+rax]
freemem(t, nsr)
end;
begin
mdtgen(2, arr[0]);
end.
It seems to be related, or it's the same problem:
#40012 (closed)