Commit Graph

818 Commits

Author SHA1 Message Date
martin
10fafd96d0 FpDebug: remove deprecated FindContext(address-only)
git-svn-id: trunk@63364 -
2020-06-16 19:57:29 +00:00
martin
c41f071d7b FpDebug: Context for unknown location
git-svn-id: trunk@63363 -
2020-06-16 19:57:27 +00:00
martin
4e26ecdd80 FpDebug: fix shortstrings, broken in r63193 #71fbdbd144 "support for codepages in Dwarf-3"
git-svn-id: trunk@63361 -
2020-06-16 13:42:47 +00:00
martin
201400311a FpDebug: fix WideString, broken in r63193 #71fbdbd144 "support for codepages in Dwarf-3"
git-svn-id: trunk@63360 -
2020-06-16 13:42:45 +00:00
martin
8a702248e3 FpDebug: fixed wrong type-cast in TFpValueDwarfArray.DoGetOrdering, TFpValueDwarfFreePascalArray, GetInstanceClassNameFromPVmt
git-svn-id: trunk@63359 -
2020-06-16 13:42:44 +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
mattias
40fd619b36 fpdebug: compile with 3.0.4
git-svn-id: trunk@63357 -
2020-06-16 11:26:06 +00:00
martin
e84ff269e4 FpDebug: change GetInstanceClassNameFromPVmt to go through TFpDwarfFreePascalSymbolClassMap
git-svn-id: trunk@63356 -
2020-06-15 18:19:02 +00:00
martin
8d02777940 FpDebug: refactor getting instantiated classname.
git-svn-id: trunk@63355 -
2020-06-15 16:18:26 +00:00
joost
6c4605be97 FpDebug: Added hardcoded debug-info for the evaluation of Exception-classes
git-svn-id: trunk@63349 -
2020-06-12 22:00:53 +00:00
martin
3aff869045 FpDebug: Implemented StepOverTo
git-svn-id: trunk@63304 -
2020-06-06 00:53:46 +00:00
joost
c326b7a628 fpDebug: Fixed endless loop when the debuggee receives an exception-signal. (Calling wstopsig on the signal twice is not the way to go)
git-svn-id: trunk@63282 -
2020-06-03 22:08:16 +00:00
joost
97716ad3a4 * Missing file added to package, and marked some units as specific for a target
git-svn-id: trunk@63214 -
2020-05-23 07:32:45 +00:00
joost
5c8d50b386 FPMake: Regenerated
git-svn-id: trunk@63210 -
2020-05-22 15:11:27 +00:00
joost
71fbdbd144 FpDebug: support for codepages in Dwarf-3 FreePascal (3.0.0 and up) AnsiStrings
git-svn-id: trunk@63193 -
2020-05-21 15:11:26 +00:00
martin
c9dea89ec8 FpDebug: Linux, Fix accessing dangling pointer while pausing all threads. (thread removed, after exit-signal)
git-svn-id: trunk@63156 -
2020-05-14 15:55:07 +00:00
martin
c6680d5c01 FpDebug: Improve Step-over/in when stepping of the last "end" line of a procedure. Always step to next line in caller.
git-svn-id: trunk@63075 -
2020-04-25 13:23:28 +00:00
martin
3370955c2b FpDebug: Fix pause on linux
git-svn-id: trunk@63067 -
2020-04-24 20:08:20 +00:00
martin
ee2ae9567c FpDebug: Do not ignore SigTrap
git-svn-id: trunk@63065 -
2020-04-24 20:08:17 +00:00
martin
fb73a010b2 FpDebug: Remember single-step if other threads cause events / deferred events
git-svn-id: trunk@63063 -
2020-04-24 20:08:14 +00:00
martin
11ad3881e8 FpDebug: stepping, avoid double step out.
git-svn-id: trunk@63062 -
2020-04-24 20:08:13 +00:00
martin
074fc3b2f0 FpDebug: Fix "stepped out" detection for step-over/in. Do not stop an "leave" command.
git-svn-id: trunk@63061 -
2020-04-24 20:08:11 +00:00
martin
f2d5fd797b FpDebug: Refactor storing/comparing stack-pointer/frame for step-out detection. Allow different architectures to provide sub-classes
git-svn-id: trunk@63060 -
2020-04-24 20:08:09 +00:00
martin
35706ffaa6 FpDebug: Improve step-commands for threads. Events in other threads, do not need single-stepping
git-svn-id: trunk@63059 -
2020-04-24 20:08:07 +00:00
martin
ec587a8ac1 FpDebug: Refactor internal jump detection
git-svn-id: trunk@63058 -
2020-04-24 20:08:06 +00:00
martin
6c936074db FpDebug: added error checks in disassembler tools
git-svn-id: trunk@63034 -
2020-04-20 15:31:47 +00:00
martin
ea30b6f6b9 FpDebug: Detect internal forwarding jumps, and avoid stopping at them
git-svn-id: trunk@63033 -
2020-04-20 15:31:45 +00:00
martin
944fd0d817 FpDebug: Fixed result of ReadCodeAt. Enable detection of prologue. Fix step-out, fix stack window.
git-svn-id: trunk@63032 -
2020-04-20 12:55:14 +00:00
martin
840b55b4a8 FpDebug: Fix step out, if current is in prologue / IsSteppedOut did not catch as BasePointer was still on outer proc.
git-svn-id: trunk@63031 -
2020-04-20 12:55:12 +00:00
juha
651a6436a2 Support Haiku build. Makefiles are generated from Makefile.fpc files using proper tools. Issue #36316, patch from Alfred.
git-svn-id: trunk@62890 -
2020-04-05 11:35:01 +00:00
martin
1f69cf465e FpDebug: fix typecast/deref for generated-pointer-type "^Foo($1234)", for signed values.
git-svn-id: trunk@62810 -
2020-03-25 15:51:07 +00:00
mattias
a472e9ef09 buildintf: split from ideintf
git-svn-id: trunk@62795 -
2020-03-22 11:58:11 +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
8ac43cbd8d Change PtrUInt to TDbgPtr to be consistent with FpDbgClasses unit
git-svn-id: trunk@62759 -
2020-03-12 20:00:13 +00:00
martin
93ee5eb352 Detect socket closed or other error and set status to SIGHUP. Do not access FConnection methods that read or write to socket when status = SIGHUP.
Patch/Contributed by ccrause

git-svn-id: trunk@62758 -
2020-03-12 14:21:18 +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
9df6eea67a Enable/IFDEF reverse disassembling for X86 to test concept. Base algorith not great for X86 variable length encoding
Patch/Contributed by ccrause

git-svn-id: trunk@62755 -
2020-03-12 14:21:13 +00:00
martin
121b9389ee Naive implementation of reverse disassembling
Patch/Contributed by ccrause

git-svn-id: trunk@62754 -
2020-03-12 14:21:12 +00:00
martin
6d6903e246 Introduce minimum and maximum instruction size properties to TDbgDisassembler. This is useful for buffering calculations, also in reverse disassembling. Preread required memory before disassembling to reduce impact of remote target access
Patch/Contributed by ccrause

git-svn-id: trunk@62753 -
2020-03-12 14:21:10 +00:00
martin
b014fcdeeb Let the TProcess call decide, if calls must be made in the correct thread (debugger-thread). Linux/trace only allows the dbg thread access.
git-svn-id: trunk@62752 -
2020-03-12 14:21:08 +00:00
martin
0aed1400c1 Added FpDbgAvrClasses to uses list so that AVR debugging is available in fpd
Patch/Contributed by ccrause

git-svn-id: trunk@62751 -
2020-03-12 14:21:07 +00:00
martin
7940dbf1b5 Basic AVR functionality
Patch/Contributed by ccrause

git-svn-id: trunk@62750 -
2020-03-12 14:21:05 +00:00
martin
8877a5b195 Change Insert/RemoveBreakInstructionCode to virtual because this implementation refers to target specific functionality (int3)
Patch/Contributed by ccrause

git-svn-id: trunk@62749 -
2020-03-12 14:20:34 +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
juha
d9daa6776b FpDebug: Prevent an access violation in TDbgImageLoader constructor. Issue #36763.
git-svn-id: trunk@62700 -
2020-03-06 20:09:47 +00:00
martin
e1a09a86f4 FpDebug: fix checking for ImageBase (currently not implemented). Issue #0036499
git-svn-id: trunk@62512 -
2020-01-08 16:56:19 +00:00
martin
439be6f619 FpDebug: Linux, removed assert. Condition can occur when process terminates, as threads have not been restarted
git-svn-id: trunk@62496 -
2020-01-04 19:44:02 +00:00