Commit Graph

89 Commits

Author SHA1 Message Date
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
dbd0141eac FpDebug: MemModel for Win/Darwin / fixes 2024-01-14 19:29:13 +01:00
Martin
476cfd4484 FpDebug: refactor stack unwinding. Introduce TDbgStackUnwinder and new classes for X86 2023-11-28 01:40:48 +01:00
Martin
41c9abc8a5 FpDebug: fix typo 2022-09-16 19:55:14 +02:00
zeljan1
78b42debff Revert "Merge branch 'main' of https://gitlab.com/freepascal.org/lazarus/lazarus into main"
This reverts commit 9c4ae10819, reversing
changes made to 0e040a0d77.
2022-09-16 18:00:17 +02:00
Martin
8e038f924e FpDebug: fix typo 2022-09-14 18:40:17 +02:00
Martin
313a112a65 FpDebug: fix type 2022-09-14 16:38:04 +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
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
Martin
9c5208b665 FpDebug: compilation fixes for Mac 2021-11-09 16:34:59 +01:00
Martin
95b4cf9043 FpDebug: compilation fixes for Mac 2021-11-08 15:09:01 +01: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
fa5199045e LazDebuggerFp, FpDebug: Show an error message, if the debugger cannot run the application. Issue #0038167
git-svn-id: trunk@64243 -
2020-12-19 22:39:00 +00:00
martin
1f395d4f2b FpDebug: fix darwin, issue #0037234
git-svn-id: trunk@63425 -
2020-06-23 12:45:34 +00:00
mattias
e660c90155 fpdebug: fix compile under darwin fpc 3.0.4
git-svn-id: trunk@63408 -
2020-06-20 19:01:26 +00:00
martin
1b2bf99ec1 FpDebug: refactor showing exception details
git-svn-id: trunk@63380 -
2020-06-17 16:52:12 +00:00
martin
a43e155cdb FpDebug, Debuggers, IDE: Make MemManager easier to access. (via Controller and Instance)
git-svn-id: trunk@63358 -
2020-06-16 13:42:42 +00:00
martin
57dc078ec5 FpDebug: fix compile on Mac
git-svn-id: trunk@62771 -
2020-03-17 12:42:13 +00:00
martin
8d0043c4c3 FpDebug: fix compile on Mac
git-svn-id: trunk@62765 -
2020-03-13 17:50:04 +00:00
martin
62facbb44d Renamed TDbgDisassembler class and all related classes to avoid name clashes with FpDebugDebugger classes.
Patch/Contributed by ccrause

git-svn-id: trunk@62757 -
2020-03-12 14:21:17 +00:00
martin
2ee9c0fe84 FpDebug: New TTargetDescriptor type used to store target specific information. All target specific classes are automatically registered in the respective initialization sections. TDbgController.Run modified to call CheckExecutableAndLoadClasses which loads target info from specified file, loads global disassembler instance and DbgProcess class. Patch/Contributed by ccrause
git-svn-id: trunk@62748 -
2020-03-12 14:20:33 +00:00
martin
2e1bd02f2d FpDebug: Refactor OsDbgClasses => move as field to DbgController and DbgProcess / Prepare for target specific classes
git-svn-id: trunk@62747 -
2020-03-12 14:09:16 +00:00
martin
676c17f1cf FpDebug: Refactor disassembler into class
git-svn-id: trunk@62746 -
2020-03-12 14:09:14 +00:00
martin
8b2fa08f3c FpDebug: More fixes to compile for Mac
git-svn-id: trunk@62009 -
2019-10-08 22:50:23 +00:00
martin
4b627656b1 FpDebug: Fix compile for Mac / removed 2 left over declarations / error introduced in watchpoint work
git-svn-id: trunk@62007 -
2019-10-08 18:18:10 +00:00
martin
5ff6c5c0c1 FpDebug: Partial implement WatchPoints.
- No local watches yet. Always global scope.
- Break on Write is the same Read/Write
- Info pop up has no old/new value
- No feedback (in some cases) if watch failed to set

git-svn-id: trunk@61990 -
2019-10-05 11:09:49 +00:00
martin
304f6e7be9 FpDebug: Fix requesting process to pause, broken in r61840 #ece9967721
git-svn-id: trunk@61845 -
2019-09-08 23:33:01 +00:00
martin
876682fc9d FpDebug: Handle hitting breakpoints, that have been removed while the event was waiting. Still need to re-execute the asm instruction that was hidden by int3
git-svn-id: trunk@61839 -
2019-09-08 19:03:09 +00:00
martin
8874afbe6a FpDebug/LazDebuggerFp: Refactor logging, use LazLogger for all logging.
git-svn-id: trunk@61427 -
2019-06-19 15:26:22 +00:00
zeljko
e3b3459bbd fpdebug: fixed compilation under darwin
git-svn-id: trunk@60231 -
2019-01-27 13:23:16 +00:00
martin
88aca89865 FpDebug: More refactor internal breakpoints. More control to OS classes. Improve stopping other threads on Linux
git-svn-id: trunk@60160 -
2019-01-23 21:28:44 +00:00
martin
a48c9c1b69 FpDebug: More refactor internal breakpoints. Move detection for ResetInstructionPointerAfterBreakpoint into OS classes.
git-svn-id: trunk@60142 -
2019-01-22 02:11:44 +00:00
mattias
9fef4bbe0d fpdebug: fixed framwork name Security
git-svn-id: trunk@59669 -
2018-11-26 22:31:09 +00:00
martin
c54639d227 FpDebug: Allow to specify poNewConsole on windows
git-svn-id: trunk@59488 -
2018-11-07 23:13:11 +00:00
martin
a80f8c659c FpDebug: refactor for loading MacOs sym in mixed lldb/gdb debug
git-svn-id: trunk@58395 -
2018-06-24 19:31:39 +00:00
joost
1f5eb8d171 fpdebug: Improved handling of threads, removed several assumptions that the main-thread was being debugged
git-svn-id: trunk@58128 -
2018-06-04 21:52:32 +00:00
mattias
0924792e5f fpdebug: using TProcessUTF8
git-svn-id: trunk@50596 -
2015-12-04 16:03:20 +00:00
joost
c53e775af5 FpDebug: The developers at Apple were not able to build a linker
with the ability to deal with Dwarf-debug info. Added the ability
to read the Dwarf-debug info from the object files and to map the
corresponding addresses to their position in the final executable.

git-svn-id: trunk@48864 -
2015-04-25 19:15:09 +00:00
joost
6469a000d3 FpDebug: Removed empty method.
git-svn-id: trunk@48639 -
2015-04-05 20:23:20 +00:00
joost
8f9d2106db FpDebug: Re-structured the reading of debug-information from multiple files.
git-svn-id: trunk@48638 -
2015-04-05 20:08:17 +00:00
joost
8b06480841 FpDebug: Avoid endless exceptions when the debugger does not have enough rights to debug on Darwin.
git-svn-id: trunk@48515 -
2015-03-26 20:30:56 +00:00
joost
0923ac9836 FpDebug: - Ability to disable usage of a pseudo-tty
- Ability to supply tty to bind standard input/output to

git-svn-id: trunk@48450 -
2015-03-22 01:08:00 +00:00
joost
a3f3091a75 * Extract debug-info from real executable when debugging an application folder
git-svn-id: trunk@47188 -
2014-12-13 09:15:26 +00:00
joost
2725568fae FpDebug: Give a warning when the UUID of the dSym-bundle and the debuggee do not match
git-svn-id: trunk@46149 -
2014-09-07 11:25:34 +00:00