mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-08-17 21:59:16 +02:00
FpDebug: fix I2O intrinsic / value to "out param" can't be passed as ref in other param.
This commit is contained in:
parent
f54755cc79
commit
c8f30b1459
@ -2604,7 +2604,7 @@ var
|
|||||||
Arg: TFpValue;
|
Arg: TFpValue;
|
||||||
ctx: TFpDbgLocationContext;
|
ctx: TFpDbgLocationContext;
|
||||||
Addr, CodeAddr: TDBGPtr;
|
Addr, CodeAddr: TDBGPtr;
|
||||||
DataLoc: TFpDbgMemLocation;
|
DataLoc, DataLoc2: TFpDbgMemLocation;
|
||||||
instr: TX86AsmInstruction;
|
instr: TX86AsmInstruction;
|
||||||
O1, O2: TInstructionOperand;
|
O1, O2: TInstructionOperand;
|
||||||
OpVal: Int64;
|
OpVal: Int64;
|
||||||
@ -2639,14 +2639,14 @@ begin
|
|||||||
else SetError('Could not get memory address');
|
else SetError('Could not get memory address');
|
||||||
exit;
|
exit;
|
||||||
end;
|
end;
|
||||||
ctx.ReadAddress(DataLoc, SizeVal(ctx.SizeOfAddress), DataLoc);
|
ctx.ReadAddress(DataLoc, SizeVal(ctx.SizeOfAddress), DataLoc2);
|
||||||
if not IsTargetNotNil(DataLoc) then begin
|
if not IsTargetNotNil(DataLoc2) then begin
|
||||||
if IsError(ctx.LastMemError) then SetError(ctx.LastMemError)
|
if IsError(ctx.LastMemError) then SetError(ctx.LastMemError)
|
||||||
else SetError('Could not get memory address');
|
else SetError('Could not get memory address');
|
||||||
exit;
|
exit;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
CodeAddr := DataLoc.Address;
|
CodeAddr := DataLoc2.Address;
|
||||||
instr := TX86AsmInstruction(FDisAssembler.GetInstructionInfo(CodeAddr));
|
instr := TX86AsmInstruction(FDisAssembler.GetInstructionInfo(CodeAddr));
|
||||||
|
|
||||||
if instr.X86OpCode = OPsub then begin
|
if instr.X86OpCode = OPsub then begin
|
||||||
|
Loading…
Reference in New Issue
Block a user