Merge branch 'update-avr' into 'main'

Implement SetStackPointerRegisterValue and SetInstructionPointerRegisterValue for AVR.

See merge request freepascal.org/lazarus/lazarus!271
This commit is contained in:
Martin 2024-02-08 09:37:25 +00:00
commit 077368e6e3

View File

@ -91,6 +91,7 @@ end;
procedure LoadRegisterValues; override;
procedure SetRegisterValue(AName: string; AValue: QWord); override;
function GetInstructionPointerRegisterValue: TDbgPtr; override;
procedure SetInstructionPointerRegisterValue(AValue: TDbgPtr); override;
function GetStackBasePointerRegisterValue: TDbgPtr; override;
procedure SetStackPointerRegisterValue(AValue: TDbgPtr); override;
function GetStackPointerRegisterValue: TDbgPtr; override;
@ -418,6 +419,8 @@ end;
procedure TDbgAvrThread.SetStackPointerRegisterValue(AValue: TDbgPtr);
begin
FRegs.regs[SPindex] := AValue;
FRegsChanged := true;
end;
function TDbgAvrThread.GetStackPointerRegisterValue: TDbgPtr;
@ -436,6 +439,12 @@ begin
ReadDebugReg(SPindex, result);
end;
procedure TDbgAvrThread.SetInstructionPointerRegisterValue(AValue: TDbgPtr);
begin
FRegs.regs[PCindex] := AValue;
FRegsChanged := true;
end;
{ TDbgAvrProcess }
function TDbgAvrProcess.CreateThread(AthreadIdentifier: THandle; out IsMainThread: boolean): TDbgThread;