From 96ed4e793250f5e4197d18eb4a154e2fd3a052e1 Mon Sep 17 00:00:00 2001 From: masta Date: Sun, 17 Feb 2013 00:01:00 +0000 Subject: [PATCH] Fixed access to freed memory in ShiftShiftShift2ShiftShift 1a on ARM ShiftShiftShift2ShiftShift tried to access a wrong and already freed instruction the find out whatever a shift will result in a 0 result. For some reason this only resulted in a bug on x86_64 linux host crosscompiler builds. git-svn-id: trunk@23624 - --- compiler/arm/aoptcpu.pas | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/compiler/arm/aoptcpu.pas b/compiler/arm/aoptcpu.pas index 7c7a201469..b8550d8108 100644 --- a/compiler/arm/aoptcpu.pas +++ b/compiler/arm/aoptcpu.pas @@ -809,7 +809,7 @@ Implementation hp1.free; hp2.free; - if taicpu(hp1).oper[2]^.shifterop^.shiftimm>=32 then + if taicpu(p).oper[2]^.shifterop^.shiftimm>=32 then begin taicpu(p).freeop(1); taicpu(p).freeop(2);