martin
cb9e09de9e
FpDebug: Use available symbol from stack to create SearchScope
...
git-svn-id: trunk@63835 -
2020-08-26 19:15:02 +00:00
martin
c15f2179e9
FpDebug: WorkerQueue, protect with try finally
...
git-svn-id: trunk@63834 -
2020-08-26 19:15:00 +00:00
martin
d62e55102b
FpDebug: use threads to scan units for symbol
...
git-svn-id: trunk@63829 -
2020-08-25 17:31:53 +00:00
martin
c9916553dd
FpDebug: extend/rework TFpThreadWorkerQueue
...
git-svn-id: trunk@63828 -
2020-08-25 17:31:51 +00:00
martin
d279fb5a4a
FpDebug: Move "uses" (ensure register) of imagereader classes from controller to DbgInfo (not all apps use a controller)
...
git-svn-id: trunk@63821 -
2020-08-24 11:19:20 +00:00
martin
54e4b88848
FpDebug: remove circular unit references
...
git-svn-id: trunk@63819 -
2020-08-23 22:57:41 +00:00
martin
b63067892d
FpDebug: More use of name hashes
...
git-svn-id: trunk@63816 -
2020-08-23 12:52:32 +00:00
martin
f34d943098
FpDebug: fix, TLazThreadedQueue, check result of push/pop item, instead of item=nil
...
git-svn-id: trunk@63815 -
2020-08-23 12:52:30 +00:00
martin
2d8cf332f9
FpDebug: Run some tasks in threads during startup
...
git-svn-id: trunk@63812 -
2020-08-22 20:27:17 +00:00
martin
953c9964f8
FpDebug: make more string params "const foo :string"
...
git-svn-id: trunk@63810 -
2020-08-22 20:27:14 +00:00
martin
6ed8bff46a
FpDebug: Faster upper/lower-case. (for ansi only idents)
...
git-svn-id: trunk@63809 -
2020-08-22 20:27:11 +00:00
martin
24d48052e3
FpDebug: Speed up fpdebug (GoNamedChild) by creating hashes for symbol names / Create Hash-lookup field for units to skip some CU
...
git-svn-id: trunk@63808 -
2020-08-22 20:27:10 +00:00
martin
24a3af8855
FpDebug: Refactor passing upper+lowercase name for search
...
git-svn-id: trunk@63807 -
2020-08-22 20:27:08 +00:00
martin
c4d125495e
FpDebug: Fix Controller.Call / wrong type for context param
...
git-svn-id: trunk@63794 -
2020-08-19 19:14:33 +00:00
martin
1bacaaff9f
FpDebug: Add reference for value.context
...
git-svn-id: trunk@63787 -
2020-08-18 23:12:51 +00:00
martin
d8007187b8
FpDebug, apps: Compilation fixes
...
git-svn-id: trunk@63785 -
2020-08-18 23:12:48 +00:00
martin
1ba76474e3
FpDebug: Separate Context and SearchScope
...
git-svn-id: trunk@63784 -
2020-08-18 23:12:46 +00:00
martin
93c1ca640f
FpDebug: Rename some context classes, and search functions. Start differentiating between Context and SearchScope
...
git-svn-id: trunk@63783 -
2020-08-18 23:12:42 +00:00
martin
743a1db4a0
FpDebug: Compile Hints / Missing function results
...
git-svn-id: trunk@63782 -
2020-08-18 23:12:39 +00:00
juha
125e794a87
Remove useless test for X <> Nil when using "is" operator.
...
git-svn-id: trunk@63779 -
2020-08-18 17:35:21 +00:00
martin
9ff4b0dc00
FpDebug: Win, add debugln for ContinueDbgEvent / WaitForDebugEvent
...
git-svn-id: trunk@63777 -
2020-08-18 11:37:54 +00:00
martin
633b2735dd
FpDebug: Test, fix compile
...
git-svn-id: trunk@63776 -
2020-08-18 11:37:52 +00:00
martin
f2959d4c98
FpDebug: Win, Only read ThreadState once per thread.
...
git-svn-id: trunk@63775 -
2020-08-18 00:04:04 +00:00
martin
5b077144a9
FpDebug: PascalBuilder, add missing output for some type declarations
...
git-svn-id: trunk@63772 -
2020-08-17 21:50:40 +00:00
martin
4145a55fee
FpDebug: small optimization for GetDerefAddress: TFpDbgMemLocation
...
git-svn-id: trunk@63771 -
2020-08-17 21:50:38 +00:00
martin
2e3e27feb2
FpDebug: Allow ClassType.Field => for static fields / return type on none static fields
...
git-svn-id: trunk@63770 -
2020-08-17 21:50:36 +00:00
martin
67a21fe3bb
FpDebug: Allow structure/class members to have DW_AT_const_value
...
git-svn-id: trunk@63769 -
2020-08-17 21:50:35 +00:00
martin
ee5e720d74
FpDebug: Safety checks for Value <> nil. (In case of broken dwarf info)
...
git-svn-id: trunk@63768 -
2020-08-17 21:50:33 +00:00
martin
2bba45a96c
FpDebug: SetRegisterValue for Windows
...
git-svn-id: trunk@63764 -
2020-08-16 20:23:35 +00:00
martin
1f229f6246
FpDebug: Fix compile on Windows
...
git-svn-id: trunk@63753 -
2020-08-16 12:40:36 +00:00
joost
a733105c1c
fpDebug: Ability to do simple function-calls
...
git-svn-id: trunk@63751 -
2020-08-16 10:20:37 +00:00
joost
a46dc42df8
* Parameter-type adapted, to clarify what kind of symbol should be passed
...
git-svn-id: trunk@63709 -
2020-08-09 21:15:39 +00:00
martin
838de9a502
FpDebug: Ensure PauseRequest calls break handler. On Linux Process.Pause does not trigger an PausedAtHardcodedBreak
...
git-svn-id: trunk@63597 -
2020-07-18 23:22:38 +00:00
mattias
61c53d6f41
LazUtils/FreeType: Separate FreeType stuff into its own package
...
git-svn-id: trunk@63558 -
2020-07-14 18:09:17 +00:00
mattias
8ceb09a67b
make: changed default darwin lcl platform from carbon to cocoa
...
git-svn-id: trunk@63551 -
2020-07-13 09:00:41 +00:00
martin
c84d9e5bfe
LazDebugFp, FpDebug: TestAssert does not set exception frame. Search by IP address
...
git-svn-id: trunk@63535 -
2020-07-08 22:39:00 +00:00
martin
69ee06144d
FpDebug: Fix searching frame by BasePointer
...
git-svn-id: trunk@63533 -
2020-07-08 22:38:56 +00:00
martin
57f2930395
FpDebug: Pause at hardcoded int3
...
git-svn-id: trunk@63513 -
2020-07-05 19:16:59 +00:00
martin
e55e3eec50
FpDebug: Refactor OnHitBreakpointEvent
...
git-svn-id: trunk@63512 -
2020-07-05 19:16:56 +00:00
martin
50c0885715
FpDebug/LazDebuggerfp: Make memory limits configurable
...
git-svn-id: trunk@63509 -
2020-07-05 01:18:32 +00:00
martin
9d8b224756
FpDebug: Improve using linker symbols (.symtab) on Linux. (Store SectionEnd Addr as upper bound for search)
...
git-svn-id: trunk@63501 -
2020-07-03 13:35:35 +00:00
martin
8158231ff0
FpDebug: Windows, fix PE-Symbol loader. Use correct offset for each section
...
git-svn-id: trunk@63488 -
2020-07-02 13:23:36 +00:00
martin
b9173dead1
FpDebug: Added workaround for frame detection. Exceptions stops at entry point, and there can not yet be a frame.
...
git-svn-id: trunk@63461 -
2020-06-28 14:43:13 +00:00
martin
5d80c349fb
FpDebug: find stackframe for exception
...
git-svn-id: trunk@63459 -
2020-06-28 14:43:10 +00:00
martin
688b1c9e2a
FpDebug: Improve stack frame detection (64bit)
...
git-svn-id: trunk@63458 -
2020-06-28 14:43:08 +00:00
mattias
9dcd9ee04d
updated makefiles
...
git-svn-id: trunk@63453 -
2020-06-28 11:01:41 +00:00
ondrej
75bf045f79
fpDebug: i386 compilation
...
git-svn-id: trunk@63442 -
2020-06-27 06:52:30 +00:00
joost
44f761cd43
FpDebug: array-bounds implemented
...
git-svn-id: trunk@63440 -
2020-06-26 21:01:39 +00:00
maxim
fd9a80af09
Translations: Brazilian Portuguese translation update by Marcelo B Paula, bug #37240
...
git-svn-id: trunk@63435 -
2020-06-23 21:25:15 +00:00
martin
7291cd0b91
FpDebug: more codepage safety checks
...
git-svn-id: trunk@63427 -
2020-06-23 12:52:59 +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
maxim
d16221820a
FPDebug: enabled i18n, fixed typos, added Russian translation
...
git-svn-id: trunk@63400 -
2020-06-19 23:04:56 +00:00
martin
21f849d337
FpDebug: shorten the output for pchar like types (strings in dwarf 2)
...
git-svn-id: trunk@63399 -
2020-06-19 21:05:17 +00:00
martin
4b28988db2
LasDebuggerFp: Better error handling when trying to cast to instance class (show none casted class, if cast not avail)
...
git-svn-id: trunk@63398 -
2020-06-19 17:45:26 +00:00
martin
be7b855369
FpDebug: Introduce configurable limits for mem usages / display len of array or string
...
git-svn-id: trunk@63397 -
2020-06-19 17:45:24 +00:00
martin
a62432ac71
FpDebug: Fixed reading memory for #0 terminated string data
...
git-svn-id: trunk@63393 -
2020-06-18 19:56:30 +00:00
martin
4570e9dea5
FpDebug: fix reading string constant, broken in r63193 #71fbdbd144 "support for codepages in Dwarf-3"
...
git-svn-id: trunk@63392 -
2020-06-18 18:08:00 +00:00
martin
f59a294a01
FpDebug: Fixed reading memory for #0 terminated string data
...
git-svn-id: trunk@63391 -
2020-06-18 18:06:26 +00:00
martin
24b1e22d91
FpDebug: Windows, show dll-entrypoint+offs in stack/thread list
...
git-svn-id: trunk@63387 -
2020-06-18 02:13:00 +00:00
joost
2d8d1f2342
Debugger: fpmake.pp updated, FpDbgHardcodedFreepascalInfo added
...
git-svn-id: trunk@63386 -
2020-06-17 21:56:49 +00:00
martin
f97bb256fd
FpDebug: add error message
...
git-svn-id: trunk@63384 -
2020-06-17 20:01:27 +00:00
martin
a667bbd318
FpDebug: PascalParser fix deref issues with typecasted pointers
...
git-svn-id: trunk@63383 -
2020-06-17 20:01:25 +00:00
martin
1b2bf99ec1
FpDebug: refactor showing exception details
...
git-svn-id: trunk@63380 -
2020-06-17 16:52:12 +00:00
martin
361235b421
FpDebug: Always get a Dwarf Context (if there are any units) => at least for global vars/symbols
...
git-svn-id: trunk@63365 -
2020-06-16 19:57:31 +00:00
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
Sergey Larin
16218b91f9
FpDebug: Fixed incorrect new length of FLocation array in TFpInternalBreakpoint.RemoveAddress
...
fix c1611124b4
2020-05-15 13:27:12 +03: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
martin
2282f707cf
FpDebug: Fix Command.DoContinue. Do not read DbgThread.GetInstrPtr if the event is caused by another thread. On Linux the none-event thread (belonging to the command) may not be paused/readable.
...
git-svn-id: trunk@62492 -
2020-01-04 19:02:04 +00:00
martin
6739277749
Revert "FpDebug: Windows, remove unused code" / WinProcess.Interrupt is used by app/fpd
...
git-svn-id: trunk@62489 -
2020-01-04 15:00:40 +00:00
martin
5fb2dfc3ed
FpDebug: Fix Mem-leak, DefaultMap was not freed. Issue #0036498
...
git-svn-id: trunk@62488 -
2020-01-04 15:00:38 +00:00
martin
54bbd61a23
Updated project file information. Patch by ccrause
...
git-svn-id: trunk@62487 -
2020-01-04 15:00:36 +00:00
martin
16a4757fa3
Fixed fpd memory leak caused by dangling TFpDbgMemConvertorLittleEndian.Create instance. Patch by ccrause
...
git-svn-id: trunk@62485 -
2020-01-04 03:56:59 +00:00
martin
365888b1de
Fix fpd memory leak in TBreakPointIdMap. Patch by ccrause
...
git-svn-id: trunk@62484 -
2020-01-04 03:56:58 +00:00
martin
4e918eebdd
Updated macho.pas from compiler folder. Needed the CPU_TYPE_ constants to identify target information. Patch by ccrause
...
git-svn-id: trunk@62483 -
2020-01-04 03:56:56 +00:00
martin
61e8a903ce
FpDebug: FpdCommand, moved "uses fgl" outside ifdef
...
git-svn-id: trunk@62482 -
2020-01-04 03:36:22 +00:00
martin
98aa637a42
FpDebug: debugln
...
git-svn-id: trunk@62406 -
2019-12-16 23:22:53 +00:00
martin
9a11939004
FpDebug: Fix range check (addresses in target are allowed to overflow)
...
git-svn-id: trunk@62386 -
2019-12-14 15:56:26 +00:00
martin
e3313cf793
FpDebug: Version to 0.9
...
git-svn-id: trunk@62347 -
2019-12-08 02:37:18 +00:00
martin
a2a811c87c
FpDebug: debugln
...
git-svn-id: trunk@62345 -
2019-12-08 00:18:18 +00:00
martin
489625b121
FpDebug, LazDebuggerFp: Implement step to except/finally / step over ignored exception
...
git-svn-id: trunk@62344 -
2019-12-08 00:18:17 +00:00
martin
c1611124b4
FpDebug: Added methods to add disabled breakpoints, and modify existing
...
git-svn-id: trunk@62343 -
2019-12-08 00:18:15 +00:00
martin
66a5571620
FpDebug: Clean/Remove the duplicate Finished/Handled on TDbgControllerCmd
...
git-svn-id: trunk@62342 -
2019-12-08 00:18:13 +00:00
martin
42eb28852f
FpDebug: Win, Fix dropping last char of dll names.
...
git-svn-id: trunk@62341 -
2019-12-08 00:18:12 +00:00
martin
b34bc4a730
FpDebug, LazDebuggerFp: Implemented OnLibrary(Un)LoadedEvent / Show in event log
...
git-svn-id: trunk@62340 -
2019-12-08 00:18:10 +00:00
martin
9cd1e928d5
FpDebug, LazDebuggerFp: Use FindProc instead of FindContext to get SymbolInfo entries
...
git-svn-id: trunk@62339 -
2019-12-08 00:18:09 +00:00
martin
cc3e23afb0
FpDebug: Win, Parse DLL-Entry points
...
git-svn-id: trunk@62338 -
2019-12-08 00:18:07 +00:00
martin
2dd36b3cd8
FpDebug: FPC sets some lines to line-num=0 => map them to the next avail line. This will at least be somewhere around the correct location.
...
git-svn-id: trunk@62337 -
2019-12-08 00:18:05 +00:00
martin
f64a5f7d3b
FpDebug: Rewrite of Step-In/Over/Out. Now handle (end-)stepping after leaving current procedure (i.e step to the outer line end, according to "In" or "Over")
...
git-svn-id: trunk@62336 -
2019-12-08 00:18:03 +00:00
martin
afd4dead10
FpDebug: Fix LineInfo, EndSequence was not handled, and some addresses resulted in wrong lines (even in the wrong procedure)
...
git-svn-id: trunk@62335 -
2019-12-08 00:18:01 +00:00
martin
d506a29b8c
FpDebug: Fix a potential double-free
...
git-svn-id: trunk@62320 -
2019-12-03 19:40:41 +00:00
martin
98cc84231b
FpDebug: Fix a crash / endless recursion, if a symbol (watch) is not found while in a finally block.
...
git-svn-id: trunk@62309 -
2019-11-28 02:30:01 +00:00
martin
3cd2c19fc8
FpDebug: more fixes for Disassembler, broken in r62171 #a4e3cbb35e
...
git-svn-id: trunk@62303 -
2019-11-27 01:52:39 +00:00
martin
9be880c527
FpDebug: fix Disassembler, broken in r62171 #a4e3cbb35e
...
git-svn-id: trunk@62291 -
2019-11-24 13:57:44 +00:00
martin
764dae935a
FpDebug: Fix leak on Linux / Thread objects were not always released
...
git-svn-id: trunk@62176 -
2019-11-03 17:05:42 +00:00
martin
17dda63638
FpDebug: Refactor freeing thread objects for exited threads
...
git-svn-id: trunk@62175 -
2019-11-03 17:05:40 +00:00
martin
751d6dd60d
FpDebug: Start basic detection of frame-base
...
git-svn-id: trunk@62174 -
2019-11-03 17:05:38 +00:00
martin
5f2f41dd34
FpDebug: Allow to create contexct from known ProcSym / Updated TDbgCallstackEntry.GetParamsAsString / Avoid double look-up of proc-symbol
...
git-svn-id: trunk@62172 -
2019-11-03 17:05:35 +00:00
martin
a4e3cbb35e
FpDebug: refactor dis-asm / Split internal (enum) and text dis-asm / optimize call detection
...
git-svn-id: trunk@62171 -
2019-11-03 17:05:33 +00:00
martin
2cebe95d18
FpDebug: refactor dis-asm / Disassemble to enum-opcode
...
git-svn-id: trunk@62170 -
2019-11-03 17:05:31 +00:00
martin
e5692c88e3
FpDebug: ensure any StackFrame data is cleared on run. (fix displaying old stacktraces)
...
git-svn-id: trunk@62139 -
2019-10-28 17:07:06 +00:00
martin
1739434138
FpDebug: fix range check error in FindProcSymbol. (int64 vs qword).
...
git-svn-id: trunk@62138 -
2019-10-28 17:07:04 +00:00
martin
f955aac408
Fix compile / issue #0036204
...
git-svn-id: trunk@62112 -
2019-10-24 20:22:45 +00:00
mattias
d0e20a7e06
fpdebug: clean up
...
git-svn-id: trunk@62108 -
2019-10-22 15:10:12 +00:00
martin
23a034b033
FpDebug: Change/Fix shortstring detection after array stride fix in fpc. (change by Issue #0036144 )
...
git-svn-id: trunk@62048 -
2019-10-13 12:25:42 +00:00
martin
b11f360499
FpDebug: limit array stride workaround to fpc < 3.3 / Fix stride calculations
...
git-svn-id: trunk@62047 -
2019-10-13 12:25:40 +00:00
martin
765c460114
FpDebug: small change to array address error checks
...
git-svn-id: trunk@62046 -
2019-10-13 12:25:39 +00:00
martin
22aca35233
FpDebug: Use LastError from value object.
...
git-svn-id: trunk@62045 -
2019-10-13 12:25:37 +00:00
martin
fc63e31186
FpDebug: Prevent a stack overflow, recursive display of record in record constructor "TFoo.Create(a: TFoo)". Outer "AFlags" were hidden, preventing the recursion from being detected
...
git-svn-id: trunk@62037 -
2019-10-11 12:07:24 +00:00
martin
ec3e5b6a07
FpDebug: fix crash on nil-deref.
...
- On Windows FCurrentThread is nil during the ExitProcess event.
- On all platforms CreateThread can (in theory) return nil.
git-svn-id: trunk@62034 -
2019-10-11 12:07:19 +00:00
martin
ec207608a5
FpDebug: Windows, when terminating the process (stop debugger) collect all pending events.
...
git-svn-id: trunk@62033 -
2019-10-11 12:07:17 +00:00
martin
c1cec4c5d9
FpDebug: Add operators mod, and, or, xor
...
git-svn-id: trunk@62028 -
2019-10-10 21:30:20 +00:00
martin
29fa84ca54
FpDebug: Pascal Expression Parser, add constant ansistring. Add operator to compare/concatenate strings
...
git-svn-id: trunk@62026 -
2019-10-10 21:30:16 +00:00
martin
61e152cc7d
FpDebug: accept PChar(nil) as string
...
git-svn-id: trunk@62025 -
2019-10-10 21:30:14 +00:00
martin
cd76eb1ef2
FpDebug: Improve wide/utf8 string/char handling
...
git-svn-id: trunk@62021 -
2019-10-10 12:19:40 +00:00
martin
3374d667aa
FpDebug: Fix overload compile error with fpc 3.2 / DestSize can not exceed the int64 range
...
git-svn-id: trunk@62019 -
2019-10-10 11:06:47 +00:00
martin
6fb009a232
FpDebug: Fix calculating length of open array param
...
git-svn-id: trunk@62018 -
2019-10-10 01:01:43 +00:00
martin
9bdf6eb943
FpDebug: Tests for TFpDbgValueSize operators
...
git-svn-id: trunk@62015 -
2019-10-09 20:06:26 +00:00
martin
9997f386ba
FpDebug: bitpacked array. workaround for issue #36144
...
git-svn-id: trunk@62013 -
2019-10-09 20:06:22 +00:00
martin
cbe21ff4f3
FpDebug: implement watching bitpacked array/record
...
git-svn-id: trunk@62012 -
2019-10-09 20:06:21 +00:00
martin
f96c6b9f66
FpDebug: Fix "set of (10..20)" (subrange)
...
git-svn-id: trunk@62011 -
2019-10-09 20:06:18 +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
4020102b98
FpDebug: Refactor Step-Into. No longer use watchpoints.
...
git-svn-id: trunk@61989 -
2019-10-05 11:09:47 +00:00
martin
a631e91e53
FpDebug: rename TFpInternalBreakpointBase into TFpDbgBreakpoint / Make other packages use TFpDbgBreakpoint instead of internal class.
...
git-svn-id: trunk@61987 -
2019-10-05 11:09:44 +00:00
martin
9b5b0c8db2
FpDebug: Check stackframe for FindContext in range / out of index
...
git-svn-id: trunk@61985 -
2019-10-05 11:09:40 +00:00
martin
1097debc48
FpDebug: fix crash when evaluating enum "member". (The identifier representing one of the values of the enum)
...
git-svn-id: trunk@61969 -
2019-10-03 18:38:13 +00:00
martin
fa44aa0f0b
LazDebuggerFp, FpDebug: Refactor FindContext
...
git-svn-id: trunk@61968 -
2019-10-03 18:38:11 +00:00
martin
3e1d403bae
LazDebuggerFp, FpDebug: Attach and Detach (Windows/Linux)
...
Attach on Linux does not work for apps started with "run without debugging". (Maybe/Probably because the IDE does a separate waitpid on those, and interferes with the waitpid of the debugger?)
git-svn-id: trunk@61967 -
2019-10-03 18:38:10 +00:00
martin
69d200ec8d
FpDebug: check if running before scheduling a pause signal (needed so pause can be called when ProcessLoop is not running / but also checks if the loop does a lot of deInternalContinue
...
git-svn-id: trunk@61966 -
2019-10-03 18:38:08 +00:00
martin
6591981f5f
FpDebug: Fix leak introduced in r61951 #cc3a453334 / missing deref for ValueObject in Locals eval
...
git-svn-id: trunk@61957 -
2019-10-02 11:48:28 +00:00
martin
aa60af3f9e
FpDebug: Remove circular refs
...
git-svn-id: trunk@61953 -
2019-09-29 21:43:54 +00:00
martin
ab5154ae18
FpDebug: Move type related code from TFpSymbolDwarfDataProc to TFpSymbolDwarfTypeProc.
...
git-svn-id: trunk@61952 -
2019-09-29 21:43:53 +00:00
martin
cc3a453334
FpDebug: Remove circular cache for ValueObject.
...
git-svn-id: trunk@61951 -
2019-09-29 21:43:51 +00:00
martin
495c172050
FpDebug: Remove LastMember for structures (part of circle ref with StructureValue)
...
git-svn-id: trunk@61950 -
2019-09-29 21:43:49 +00:00
martin
ef00bc4391
FpDebug: PascalBuilder, re-use existing procedure info.
...
git-svn-id: trunk@61941 -
2019-09-28 19:08:21 +00:00
martin
6dbfb412aa
FpDebug: Remove circular ref handling for LocalProcInfo (no longer circular)
...
git-svn-id: trunk@61940 -
2019-09-28 19:08:19 +00:00
martin
b67765f419
FpDebug: Move cache for SelfParam to Context / remove circular ref for LocalProc.
...
git-svn-id: trunk@61939 -
2019-09-28 19:08:18 +00:00
martin
df73d42186
FpDebug: Remove duplicate ApplyContext calls
...
git-svn-id: trunk@61938 -
2019-09-28 19:08:16 +00:00
martin
82f84c23c4
FpDebug: Remove FlastResult from FindSymbol
...
git-svn-id: trunk@61937 -
2019-09-28 19:08:15 +00:00
martin
2ec08f8a9c
FpDebug: rename TDbgInfo.FindSympol into FindProcSymbol
...
git-svn-id: trunk@61936 -
2019-09-28 19:08:13 +00:00
martin
c7ccbdc276
FpDebug: Change ParentTypeInfo to only hold the structure/array/enum to which the value belongs. Also move it to TFpValue to make it circle-ref free.
...
Introduce LocalProcInfo for the "local procedure" (if any) to which the symbol belongs.
git-svn-id: trunk@61935 -
2019-09-28 19:08:11 +00:00
martin
0b2536f3f0
FpDebug: Merge StructTypeCast.GetMember... to parent class methods
...
git-svn-id: trunk@61934 -
2019-09-28 19:08:09 +00:00
martin
320accefd9
FpDebug: allow SetLastError( no-error )
...
git-svn-id: trunk@61933 -
2019-09-28 19:08:07 +00:00
martin
436265bf70
FpDebug: Remove unused member list
...
git-svn-id: trunk@61932 -
2019-09-28 19:08:06 +00:00
martin
2ee62a6a50
FpDebug: Remove TypeCastTargetType, use DwarfTypeSymbol (former Owner) which now includes all outer (un-nested) types
...
git-svn-id: trunk@61925 -
2019-09-26 16:37:26 +00:00
martin
ca3bcf9fa2
FpDebug: Clean up. Remove ValueSymbol => same as DbgSymbol
...
git-svn-id: trunk@61924 -
2019-09-26 16:37:25 +00:00
martin
9c280bd0e3
FpDebug: Refactor TFpSymbol.Size
...
git-svn-id: trunk@61923 -
2019-09-26 16:37:22 +00:00
martin
d7a8a70916
FpDebug: Make Pointer deref work without item size. (In case size is not avail, or too big)
...
git-svn-id: trunk@61920 -
2019-09-24 23:36:40 +00:00
martin
9b5a4935a0
FpDebug: fix wrong type for bound-symbol fields / Enable TypedAddress
...
git-svn-id: trunk@61918 -
2019-09-24 23:36:37 +00:00
martin
544b5e616b
FpDebug: rename var
...
git-svn-id: trunk@61917 -
2019-09-24 23:36:35 +00:00
martin
4f54cfa13b
FpDebug: clean up a few occasions where FContext is set twice
...
git-svn-id: trunk@61916 -
2019-09-24 23:36:34 +00:00
martin
f37ef11330
FpDebug: Remove HasBounds (which did not have a ValueObject). Make SubRanges check for their own size too.
...
git-svn-id: trunk@61915 -
2019-09-24 23:36:32 +00:00
martin
1e7c605983
FpDebug: more verbose last error
...
git-svn-id: trunk@61914 -
2019-09-24 23:36:30 +00:00
martin
ea3dfb1fa9
FpDebug: Improve detection of class vs record vs object
...
git-svn-id: trunk@61903 -
2019-09-19 17:29:17 +00:00
martin
f9d28f268b
FpDebug: 64bit debugger exe does not have a 10bit Extended (as in 32bit exe). Cross debugger can therefore not display such values. Return an error.
...
git-svn-id: trunk@61902 -
2019-09-19 13:08:44 +00:00
martin
e2590a7c19
FpDebug: Ensure that the Context is passed on to new Value-objects. Fix crash on nil pointer
...
git-svn-id: trunk@61900 -
2019-09-18 22:14:02 +00:00
martin
804b5a7be4
FpDebug: Windows, fix closing handles for sub-processes (not currently debugged). Also correctly detach.
...
git-svn-id: trunk@61892 -
2019-09-16 21:49:27 +00:00
martin
4137324e48
FpDebug: Check result of ReadThreadState. Do not use invalid data (on windows this lead to nil deref crash)
...
git-svn-id: trunk@61891 -
2019-09-16 21:49:25 +00:00
martin
52a25d352c
FpDebug: move ...Command.Init into the thread. In case it needs to access process data.
...
git-svn-id: trunk@61883 -
2019-09-15 13:22:01 +00:00
martin
618ad4ba32
FpDebug: Fix stepping over an breakpoint that continues (condition/auto-continue/...) / Fix stepping over recursive calls
...
git-svn-id: trunk@61882 -
2019-09-15 13:22:00 +00:00
martin
533670667b
FpDebug: Stepping commands, refactor (partly) detection of "call" instruction.
...
git-svn-id: trunk@61881 -
2019-09-14 14:33:10 +00:00
martin
48f15f849d
FpDebug: Stepping commands, refactor HiddenBreakpoint:
...
- Move to base-class
- No need to check for other breakpoints (fpdebug can now handle several brk at same address)
- Stop step-out, if break failed to set
git-svn-id: trunk@61880 -
2019-09-14 14:33:09 +00:00
martin
c5fe550fbe
FpDebug: Stepping commands, set Handled = Finished => so the loop will end if a step is done
...
git-svn-id: trunk@61878 -
2019-09-14 14:27:48 +00:00
martin
cc1055fbed
FpDebug: Windows, fix stepping over (temp-removed) breakpoint.
...
- If another thread received a signal before the "step-finished signal" (e.g. thread created / pending sigs) then the temp-break was back in place and kept in place -> the break was hit again instead of stepping over it.
- If another thread exited (and the exit signal was received before the "step-finished signal" then no handling was done at all (no threads suspended / no temp remove breaks)
git-svn-id: trunk@61877 -
2019-09-14 14:27:47 +00:00
martin
fc1a436bed
FpDebug: Linux, do not add any SigStop to deferred event list. (It going to be ignored as deInternalContinue anyway)
...
git-svn-id: trunk@61876 -
2019-09-14 14:27:45 +00:00
martin
4be5e94e3e
FpDebug: Linux, do not modify running processes (in case of deInternalContinue, some processes may not be paused)
...
git-svn-id: trunk@61875 -
2019-09-14 14:27:44 +00:00
martin
c7fae55176
FpDebug: fix flag for breakpoint
...
git-svn-id: trunk@61874 -
2019-09-14 14:27:42 +00:00
martin
151412f007
FpDebug: improve stepping.
...
Refactor: Capture initial data before DoContinue
Fix/Improve: Only check and continue the thread that is stepped / Make HiddenBreakpoint hidden from the rest of the controller.
git-svn-id: trunk@61873 -
2019-09-14 14:27:41 +00:00
martin
f17b2727f4
FpDebug: re-arrange order of some classes
...
git-svn-id: trunk@61872 -
2019-09-14 14:27:39 +00:00
martin
85a2eb7321
FpDebug: fixed uninitialized var, could prevent debugger from stopping when app exits
...
git-svn-id: trunk@61869 -
2019-09-13 12:09:32 +00:00
martin
3fce95a1c2
FpDebug: Windows, debugln/dbgs include WOW64 names
...
git-svn-id: trunk@61867 -
2019-09-12 15:33:14 +00:00
martin
c9beb9dffe
FpDebug: Windows, fixed Process.Continue with single step request
...
git-svn-id: trunk@61866 -
2019-09-12 15:33:12 +00:00
martin
cae3f56d05
FpDebug: fixed nil pointer crash when clearing breakpoints, after the debugged app exited.
...
git-svn-id: trunk@61865 -
2019-09-12 15:33:11 +00:00
martin
df6722dd5f
FpDebug: Ensure that exit thread aborts any running command. (The command may change the event-enum-code in FPDEvent, and try to continue running)
...
git-svn-id: trunk@61864 -
2019-09-12 15:33:09 +00:00
martin
63087a3084
FpDebug: Linux, ensure a breakpoint is reported once for each thread, if hit at the same time
...
git-svn-id: trunk@61853 -
2019-09-10 18:52:46 +00:00
martin
230c6983fb
FpDebug: fix compile on linux
...
git-svn-id: trunk@61851 -
2019-09-10 13:33:39 +00:00
martin
1958b8edea
FpDebug: Windows, Added WoW64
...
git-svn-id: trunk@61848 -
2019-09-10 01:40:49 +00:00
martin
a2978c370e
FpDebug: Windows, remove unused code
...
git-svn-id: trunk@61847 -
2019-09-10 01:40:48 +00:00
martin
a3fb24b828
FpDebug: load some kernel functions dynamically, to avoid stopping the IDE from starting on pre-vista systems.
...
git-svn-id: trunk@61846 -
2019-09-09 21:13:57 +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
ece9967721
FpDebug: Keep the loop running, if internal stepping causes deBreakPoint without actually hitting a breakpoint. Required because now there can be several such singlesteps in one iteration of the loop.
...
git-svn-id: trunk@61840 -
2019-09-08 19:03:11 +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
2f812db331
FpDebug: Windows, suspend other threads while single stepping over a (temp-removed) breakpoints.
...
- Other threads could cause an event, before the thread does single-step. Then the breakpoint gets restored to early
- Other threads could run through the code, while the breakpoint is removed. They would not stop as they should.
git-svn-id: trunk@61838 -
2019-09-08 19:03:08 +00:00
martin
966ecb9382
FpDebug: debugln for windows API events
...
git-svn-id: trunk@61834 -
2019-09-08 18:52:42 +00:00
martin
e6e7bf4355
FpDebug: Linux, improve "Stop all" loop
...
git-svn-id: trunk@61833 -
2019-09-08 18:52:41 +00:00
martin
595f8b9f3e
FpDebug: Linux, refactor signal handling for signals that need to be postponed. Need to collect signals with no existing thread yet, as they will create that thread.
...
git-svn-id: trunk@61832 -
2019-09-08 18:52:39 +00:00
martin
aa85ec85ed
FpDebug: Linux, removed unused code
...
git-svn-id: trunk@61831 -
2019-09-08 18:52:38 +00:00
martin
1ab353e555
FpDebug: Linux, reduce the amount of calls to temp-remove/restore breakpoints
...
git-svn-id: trunk@61830 -
2019-09-08 18:52:36 +00:00
martin
85a8100c39
FpDebug: Linux, fix for temp-removed breakpoints were not always restored (if another thread had pending events, writing the breakpoint in WaitForEvent would fail, due to thread running / signal not yet collected)
...
git-svn-id: trunk@61829 -
2019-09-08 18:52:35 +00:00
martin
999d567e45
FpDebug: debugln for Linux
...
git-svn-id: trunk@61828 -
2019-09-08 18:52:33 +00:00
martin
9defda8b5c
FpDebug: Linux, prevent crash on nil deref
...
git-svn-id: trunk@61819 -
2019-09-05 20:05:58 +00:00
martin
addf952338
FpDebug: Less debugln noise when checking if break exists
...
git-svn-id: trunk@61818 -
2019-09-05 20:05:57 +00:00
martin
d9731de769
FpDebug, LazDebuggerFp: More debugln for Breakpoints
...
git-svn-id: trunk@61817 -
2019-09-05 20:05:55 +00:00
martin
c86c8d65e6
FpDebug: reduce logged errors for messages that are expected (cannot write to terminated process)
...
git-svn-id: trunk@61816 -
2019-09-05 20:05:54 +00:00
martin
00417e251e
FpDebug: Fix stackframe evaluation / In some cases (if stack win was closed, when brk-point hit) only the top frame was displayed.
...
git-svn-id: trunk@61806 -
2019-09-02 00:44:52 +00:00
martin
9fedf06c5f
FpDebug: fix context (crash) during stack eval / currently unused code
...
git-svn-id: trunk@61805 -
2019-09-02 00:44:50 +00:00
martin
386be78e7c
FpDebug: improve finding a name (or other info) to display type name (un-named pointers) / ^__vtbl_....
...
git-svn-id: trunk@61803 -
2019-09-02 00:44:48 +00:00
martin
34e84c690e
FpDebug: rename variable
...
git-svn-id: trunk@61802 -
2019-09-02 00:44:46 +00:00
martin
5408d59907
FpDebug: Clean up, error will be set already
...
git-svn-id: trunk@61801 -
2019-09-02 00:44:45 +00:00
martin
14ef5eb9fc
FpDebug: Refactor ReadBounds
...
git-svn-id: trunk@61800 -
2019-09-02 00:44:43 +00:00
martin
767d2014d8
FpDebug: Refactor GetDataAddress
...
git-svn-id: trunk@61799 -
2019-09-02 00:44:41 +00:00
martin
538976df00
FpDebug: Implement DW_AT_allocated and DW_AT_associated
...
git-svn-id: trunk@61791 -
2019-08-31 20:59:09 +00:00
martin
6b65857351
FpDebug: Refactor cache for Address/DataAddress
...
git-svn-id: trunk@61790 -
2019-08-31 20:59:08 +00:00
martin
4b2740c97a
FpDebug: DW_AT_data_member_location now handles constant offset too. Moved to ComputeDataMemberAddress
...
git-svn-id: trunk@61789 -
2019-08-31 20:59:06 +00:00
martin
0d8b455ac6
FpDebug: rename one of the two LocationFromTag methods
...
git-svn-id: trunk@61788 -
2019-08-31 20:59:04 +00:00
martin
a8ec28c709
FpDebug: PascalParser, added = / <> operator for classes/interfaces
...
git-svn-id: trunk@61783 -
2019-08-29 15:12:45 +00:00
martin
aa7a4b709c
FpDebug: better detection of skInterface, skClass, skObject, skRecord. Added DW_TAG_interface_type.
...
git-svn-id: trunk@61782 -
2019-08-29 15:12:43 +00:00
martin
d18be77617
FpDebug: Move more fpc specific behaviour to fpdbgdwarffreepascal.pas
...
git-svn-id: trunk@61779 -
2019-08-28 15:36:18 +00:00
martin
94eaca854f
FpDebug: Rename TDbgSymbolForwarder to TFpSymbolForwarder
...
git-svn-id: trunk@61777 -
2019-08-28 15:36:15 +00:00
martin
3469cab38f
FpDebug: Rename FpSymbol.Member* to NestedSymbol* / Distinguish from FpValue.Member
...
git-svn-id: trunk@61776 -
2019-08-28 15:36:13 +00:00
martin
7096bc4c00
FpDebug: pascal-builder improve tolerance for unknown types in classes
...
git-svn-id: trunk@61755 -
2019-08-24 20:39:57 +00:00
martin
280666f480
FpDebug: Fix watches for Pointer
...
git-svn-id: trunk@61753 -
2019-08-24 20:39:54 +00:00
martin
ee04ce523f
FpDebug: Refactor MemberCount for structures
...
git-svn-id: trunk@61752 -
2019-08-24 20:39:53 +00:00
martin
42ba3bfcc7
FpDebug: Refactor TFpSymbolDwarfTypeSubRange bound info
...
git-svn-id: trunk@61751 -
2019-08-24 20:39:51 +00:00
martin
fb065ad50b
FpDebug: Remove unused (and redundant) cache for Members
...
git-svn-id: trunk@61750 -
2019-08-24 20:39:50 +00:00
martin
4c4fa5b667
FpDebug: Remove unused code HasDwarfDataAddress
...
git-svn-id: trunk@61748 -
2019-08-22 21:33:27 +00:00
martin
f92c11c44a
FpDebug: Remove some duplicate code for GetDataAddress
...
git-svn-id: trunk@61747 -
2019-08-22 21:33:25 +00:00
martin
c69090c512
FpDebug: Rework TFpValueDwarfPointer.GetDataAddress, the data address is the pointer, not the deref-address.
...
git-svn-id: trunk@61746 -
2019-08-22 21:33:24 +00:00
martin
ce99e791cb
FpDebug: Clean up / Remove duplicate method DataAddr
...
git-svn-id: trunk@61743 -
2019-08-22 21:33:19 +00:00
martin
335f49891d
FpDebug: display info about types in watches
...
git-svn-id: trunk@61734 -
2019-08-20 18:58:50 +00:00
martin
0ce9055f11
FpDebug: Fix/Improve watches of Function/-ref
...
git-svn-id: trunk@61732 -
2019-08-20 18:58:47 +00:00
martin
936f07e67a
FpDebug: remove unused Count
...
git-svn-id: trunk@61725 -
2019-08-18 13:43:50 +00:00
martin
6a6c02491f
FpDebug: Fix type-declaration in watches for function refs
...
git-svn-id: trunk@61723 -
2019-08-18 13:43:47 +00:00
martin
5a7c9f1487
FpDebug: Refactor class names for TFpDbgValue and TFpDbgSymbol descendants.
...
git-svn-id: trunk@61722 -
2019-08-18 13:43:45 +00:00
martin
a8233705f3
FpDebug, fpdumpdwarf: partial fix compilation
...
git-svn-id: trunk@61721 -
2019-08-18 13:43:42 +00:00
martin
afb6089d74
FpDebug: Display function-ref variables
...
git-svn-id: trunk@61521 -
2019-07-03 18:26:32 +00:00
martin
9f1b5ca3f2
Debugger: introduce watch type skFunctionRef
...
git-svn-id: trunk@61520 -
2019-07-03 18:26:31 +00:00
martin
96ba76e670
FpDebug: Fix FindProcSymbol, always search all CompilationUnits
...
git-svn-id: trunk@61516 -
2019-07-03 18:26:24 +00:00
martin
2ca01a1067
FpDebug: Allow constants in type-cast to be treated as address
...
git-svn-id: trunk@61501 -
2019-06-30 19:17:01 +00:00
martin
3fa2c1926a
FpDebug: LocationParser: clean up and optimize (peek instead of pop)
...
git-svn-id: trunk@61500 -
2019-06-30 19:16:59 +00:00
martin
5110e434a6
FpDebug: Refactor reading Bounds
...
git-svn-id: trunk@61499 -
2019-06-30 19:16:58 +00:00
martin
dd77814ad7
FpDebug: Remove relation between TFpDbgSymbol and TFpDbgValue
...
git-svn-id: trunk@61498 -
2019-06-30 19:16:56 +00:00
martin
ebbd6b5e0b
FpDebug: Fix Overflow in max array/string size
...
git-svn-id: trunk@61497 -
2019-06-30 19:16:55 +00:00
martin
16b217f5b9
FpDebug: Cleanup
...
git-svn-id: trunk@61493 -
2019-06-30 19:16:47 +00:00
martin
87642bb738
FpDebug: Experimental/IFDEF code for auto-deref pointer to structure
...
git-svn-id: trunk@61453 -
2019-06-23 11:14:27 +00:00
martin
7f8306fad7
FpDebug: Allow LocationParser (dwarf loc expressions) to work with mlfSelfMem (for constants which have their value in the dwarf headers, rather than the process mem)
...
git-svn-id: trunk@61451 -
2019-06-23 11:14:24 +00:00
martin
4d779b1188
FpDebug: Ensure Object-address for location-parser is stored
...
git-svn-id: trunk@61450 -
2019-06-23 11:14:23 +00:00
martin
2a8f0cab85
FpDebug: More tests.
...
git-svn-id: trunk@61449 -
2019-06-23 11:14:20 +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
martin
a2744edd0a
FpDebug: clean up
...
git-svn-id: trunk@61420 -
2019-06-18 18:39:24 +00:00
martin
dc28cea48d
FpDebug: Fix potential int-overflow.
...
git-svn-id: trunk@61419 -
2019-06-18 18:39:22 +00:00
martin
f2698e4d03
FpDebug: make fpc wide/unicode-string workaround, depend on fpc-version
...
git-svn-id: trunk@61417 -
2019-06-18 18:39:19 +00:00
martin
970cf11642
FpDebug: DwarfClassMap (fpc specific classes), use instances.
...
git-svn-id: trunk@61416 -
2019-06-18 18:39:17 +00:00
martin
5d6b05e0c0
FpDebug: Move reading dwarf-2 length of dyn-array to fpc specific unit (fpdbgdwarffreepascal)
...
git-svn-id: trunk@61415 -
2019-06-18 18:39:15 +00:00
martin
5effef2a57
FpDebug: Refactor "AttribIdx". Reduce repeated calls.
...
git-svn-id: trunk@61414 -
2019-06-18 18:39:13 +00:00
martin
befba0c77b
FpDebug: Fix mem leak in strings/dwarf-3
...
git-svn-id: trunk@61413 -
2019-06-18 18:39:11 +00:00
martin
c13bcb61c2
FpDebug, fpd-app: fix some compile errors
...
git-svn-id: trunk@61335 -
2019-06-07 12:24:00 +00:00
martin
3f6a435b48
FpDebug, fpd-app: fix some compile errors
...
git-svn-id: trunk@61330 -
2019-06-06 20:45:34 +00:00
martin
9075dc0db1
FpDebug, fpd-app: fix some compile errors
...
git-svn-id: trunk@61328 -
2019-06-06 20:14:47 +00:00
martin
157ea70bdb
FpDebug: Fix upper/lower spelling of Contents/MacOS
...
git-svn-id: trunk@61066 -
2019-04-27 15:10:17 +00:00