Commit Graph

120 Commits

Author SHA1 Message Date
Martin
d25d085dbb FpDebug: Do not free current DbgThread while still in use / Will be freed after next run/step. (Linux) 2025-01-09 11:44:15 +01:00
Martin
6f1cd0c4b5 FpDebug: Linux, fix reading proc/maps to get loaded libraries. 2025-01-07 18:36:04 +01:00
Martin
9fd6981814 FpDebug: Linux, check if thread is known. 2024-11-23 14:55:27 +01:00
Martin
1bc39f7331 FpDebug: Linux, Improve ReadData for partial reads 2024-09-29 16:41:20 +02:00
Martin
166db6365e FpDebug: Improve target-mem-read on Linux. Issue #41161 Patch by Alexander (Rouse_) Bagel 2024-09-28 18:56:56 +02:00
Martin
9092967d44 FpDebug: display-format for ymm/xmm 2024-07-12 16:45:49 +02:00
Martin
836e23ff27 FpDebug: fix new registers as watch result / get text, instead of read-int / add unique reg-nums 2024-07-11 12:21:40 +02:00
Martin
b55faa7970 FpDebug: Linux, added float registers 2024-07-10 23:46:52 +02:00
Martin
85f227d16f FpDebug: Linux, remove define / always true 2024-07-10 20:21:13 +02:00
Juha
12f7bbf511 FpDebug: Remove an unused and non-existent used unit. 2024-06-30 09:06:51 +03:00
Maxim Ganetsky
2547c55391 Revert "DebuggerIntf: Use units from fcl-proc331/ without "in 'fcl-proc331/...'" syntax."
This reverts commit 6350e1a094.

It broke compilation with FPC 3.2.2. Some other solution should be
found.
2024-06-29 21:38:56 +03:00
Juha
6350e1a094 DebuggerIntf: Use units from fcl-proc331/ without "in 'fcl-proc331/...'" syntax. 2024-06-29 16:22:20 +03:00
martin
5c5e12448d FpDebug, Linux: Fix leaked handle 2024-03-20 19:45:06 +01:00
Martin
6aa6ea6983 Ide, Debugger, FpDebug: Implement StdIn/StdOut file redirection. Issue #40458 2024-03-18 14:01:44 +01:00
ccrause
dcd15396b9 Further refactoring of TFpBreakPointMap and TGenericBreakPointTargetHandler for x86 and AVR 2024-02-19 12:23:45 +01:00
Martin
e2e2f26c91 FpDebug: change HasBreakpointInfoForAddress, replace IP-1 by GetInstructionPointerForHasBreakpointInfoForAddress 2024-02-13 22:31:28 +01:00
Martin
47c34d2e7e FpDebug: fix reading pty for console window. 2024-02-10 22:12:52 +01:00
ccrause
3ecbb52069 Updated MemModel structure. 2024-01-14 19:29:12 +01:00
Martin
476cfd4484 FpDebug: refactor stack unwinding. Introduce TDbgStackUnwinder and new classes for X86 2023-11-28 01:40:48 +01:00
Martin
d55f353980 FpDebug: 32bit linux target. "HasId" takes an untyped arg. The caller must always pass 64 bits. (itu8 is used to create the map) 2023-10-14 14:33:53 +02:00
Martin
7689b1865f FpDebug: Fix freeing SOLibEventBreakpoint (when process is stopped, do not access thread state) 2023-05-26 14:05:17 +02:00
Martin
cac376d0f9 LazDebuggerFp, FpDebug: Fix watch-function-call when debuggee has crashed. Prevent the function call 2023-03-13 12:32:30 +01:00
Martin
5895004fde FpDebug: Fix memleak with breakpoint for libraries 2023-02-19 09:36:07 +01:00
Martin
0a13765ec4 FpDebug: Fix setting breakpoint for deLoadLibrary detection. Move to correct thread. 2023-02-16 18:21:51 +01:00
Martin
04b384b34d FpDebug: Set breakpoints in libraries (dll/so). Update existing breakpoints when library is loaded. Add state (ok, fail, pending) to breakpoints. 2023-02-16 16:39:03 +01:00
Martin
5d091f5d5b FpDebug: Refactor breakpoints, move unit+line (or proc-name) to DpDebug. Change default scope to search all already loaded libraries. 2023-02-16 16:39:02 +01:00
Martin
ad9a460928 FpDebug, Linux: Improve stepping over breakpoint.
When the signal for a newly launched thread was received while the single-step was still in progress, then "RestoreTempBreakInstructionCodes" failed (as the thread was still running), and the breakpoint (int3) ended up missing (no longer stopping at the breakpoint).
2023-01-24 18:03:16 +01:00
Martin
45b69e8d9d Debugger: Allow to suspend/resume individual threads / only with FpDebug, only while paused - for the next run/step. 2022-09-11 03:28:53 +02:00
Martin
db69b34e2a FpDebug: Fixes for watch-function-eval: allow function to recursively enter itself. 2022-09-10 18:01:36 +02:00
Martin
b3cae05fee FpDebug: fix restoring registers (e.g. after function eval) 2022-09-07 04:36:33 +02:00
Martin
1d0daee376 FpDebug: fix setting negative value to Register for 32bit target. 2022-06-30 02:20:53 +02:00
Martin
f4f7cca11d FpDebug: fix reading range checks on Linux 2022-06-29 19:42:18 +02:00
Pascal Riekenberg
2bc0a9b371 Debugger: added support for TThread.NameThreadForDebugging 2022-06-28 07:35:40 +02:00
Martin
b014798858 LazDebuggerFp, FpDebug: Enable watch-eval calling function with strings as param/result (only DWARF 3 / up) 2022-06-21 00:29:07 +02:00
Martin
63a6ce4f32 FpDebug: added IFDEF $INLINE OFF 2022-06-21 00:06:04 +02:00
Joost van der Sluis
8205a04199 FpDebug: On Windows the RelocationOffset can only be calculated after the file-header has been read. So the whole logic to obtain the RelocationOffset out of the LoadedTargetImageAddr and ImageBase is refactored 2021-12-15 01:21:10 +01:00
Joost van der Sluis
70d007f0de FpDebug: Differentiate between the BaseAddr and the RelocationOffset 2021-12-13 23:18:10 +01:00
Martin
842abf97c1 FpDebug: Remove some asserts that were to strict. The check is done in ReadThreadState. If that has already been done, the functions do not need the requirement. 2021-12-12 21:00:28 +01:00
Joost van der Sluis
e9f1ffb855 FpDebug: Load libraries on Linux, and skip incompatible binaries. Also on Windows, for consistency and stability 2021-12-08 22:18:04 +01:00
Martin
9877946d86 FpDebug: reduced debugln 2021-12-07 23:21:42 +01:00
Joost van der Sluis
bc4718efae FpDebug: Ability to pass multiple libraries to OnLibrary(Un)LoadedEvent and detection of loading of libraries on Linux 2021-12-05 01:46:45 +01:00
ccrause
c219bac7dc Fix initialization of TDbgLinuxProcess.AttachToInstance. 2021-11-07 15:20:23 +02:00
ccrause
4055d9420b Consolidated parameters for TDbgProcess.Create, StartInstance and AttachToInstance. 2021-11-06 14:23:31 +01:00
ccrause
923fce0cb0 Change StartInstance and AttachInstance to normal methods. TDbgController now calls OSDbgClasses.DbgProcessClass to create a process class instance with a TDbgProcessConfig parameter which can be subclassed and passed around for configuration. The remote configuration is now passed via this parameter as a subclass. 2021-11-06 14:23:28 +01:00
Martin
6fc5c2fcdd FpDebug: more asserts for correct thread usage 2021-10-13 21:48:32 +02:00
Martin
f47220cc47 FpDebug: Add asserts 2021-09-26 02:09:18 +02:00
martin
6661f86edd Debugger: allow to force lazloggerbase via define
git-svn-id: trunk@65227 -
2021-06-14 07:30:45 +00:00
martin
3deb9a41fe FpDebug: Improve target-mem read/write on Linux / Allow bigger writes
git-svn-id: trunk@65225 -
2021-06-14 07:30:37 +00:00
martin
ce0d1a0bc8 LazDebuggerFp, FpDebug: Beta, Allow function calls in watches
git-svn-id: trunk@65151 -
2021-05-29 22:51:09 +00:00
joost
fe6e63ed13 FpDebug: Handle signals during function-calls
git-svn-id: trunk@65130 -
2021-05-24 22:15:35 +00:00