Commit Graph

1280 Commits

Author SHA1 Message Date
Martin
f0ce562200 FpDebug: more range check exceptions / fixed missing begin/end 2023-04-02 20:35:34 +02:00
Martin
11c09530bd FpDebug: do not attempt to cache for unknown array types 2023-03-31 23:20:43 +02:00
Martin
2df8c6199b FpDebug: clear cache for array slice entries. Fix range check, when operating on addresses in target. 2023-03-31 23:16:30 +02:00
Martin
f7ab7582f2 FpDebug: Added basic code for DW_TAG_string_type 2023-03-28 10:53:28 +02:00
Maxim Ganetsky
aba8a43de8 FPDebug: updated Russian translation 2023-03-25 16:39:01 +03:00
Martin
0deadb0dbb FpDebug: find self in class procedure 2023-03-25 08:45:20 +01:00
Martin
c996f57220 Debugger: display data address for strings 2023-03-23 21:31:55 +01:00
Martin
a0ef09293b FpDebug: add intrinsic "len" as shortcut for "length" 2023-03-23 21:31:11 +01:00
Martin
badfeecb5d Debugger: renamed several interfaces, changing "T" prefix to "I" prefix 2023-03-22 19:41:24 +01:00
Martin
0d507a4009 FpDebug: fix nil deref crash in pascal parser. 2023-03-22 11:02:10 +01:00
Martin
73f0e0ea68 FpDebug: FpDbgDwarfFreepascal, when searching all units, search "system" unit last. It can contain 16bit PInteger, even if the app is ObjPas. Also prevent the scoped enums true/false/word in sysutils and typinfo. Related to issue #40173 2023-03-21 18:04:19 +01:00
Martin
c5057d55ed FpDebug: add flag dafHasArtifical - only read value, if present 2023-03-21 16:41:54 +01:00
Martin
3bff86dc23 FpDebug: save time by checking name hash before reading attributes. 2023-03-21 16:41:54 +01:00
Martin
afe8ba3180 LazDebuggerFp, FpDebug: Improve some error messages / Start on i18n 2023-03-21 16:41:53 +01:00
Martin
c56eb62226 FpDebug: Disassemble fixed/remove data for wrong annotations, if value is indirect or relative to register 2023-03-19 21:54:58 +01:00
Martin
33556f939f FpDebug: unrolling stack, using CFI - fixed address in stack-entry (do not subtract 1) 2023-03-17 21:26:23 +01:00
Martin
981c7d949e FpDebug: Disassembler fix line addr/offs for annotation 2023-03-15 13:55:15 +01:00
Martin
ee4e48864e LazDebuggerFp, FpDebug: Disassembler now annotates lines with call,jmp,je,... with info on the target address. 2023-03-15 00:19:40 +01: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
42ae1a7765 LazDebuggerFp, FpDebug: deal with process-exit while watch-eval-function-call 2023-03-13 12:32:29 +01:00
Martin
2d20810ef6 FpDebug: fixed intrinsic "pos", added: lower, upper, round, trunc 2023-03-13 00:02:39 +01:00
Martin
db27ef882d FpDebug: clean up compile hints 2023-03-12 22:34:28 +01:00
Martin
ca71d82350 FpDebug: Implement substrings via the range-index. MyStr[5..9] now return a substring. 2023-03-12 22:34:27 +01:00
Martin
d331e3ef77 FpDebug: fixes for "substr" intrinsic / optimize using new substring reading 2023-03-12 22:34:27 +01:00
Martin
ea78367138 FpDebug: Improve reading char from "string[index]". Read only the char in question / Do not fail on MemLimit.MaxStringLen 2023-03-12 22:34:27 +01:00
Martin
aa0082f22c FpDebug: Implement array slice in pascal parser, and allow operations on the slice to be mapped to each element. 2023-03-12 22:34:26 +01:00
Martin
3f185f585d FpDebug: Improved error detection, if an array/struct is in un-readable memory, don't keep trying for each element/field 2023-03-11 14:16:16 +01:00
Martin
8ae6281e61 FpDebug: implement set operator = <> >< + - 2023-03-11 12:04:20 +01:00
Martin
d097213d7e FpDebug: "enum in set-variable" operator. 2023-03-10 23:43:53 +01:00
Martin
50296e8cf9 FpDebug: Optimize building result data for arrays. Type-name is the same for each array element. 2023-03-07 17:50:51 +01:00
Martin
8970a4768b FpDebug: Improve partial mem-read. Check early if the address is readable at all. 2023-03-02 20:11:47 +01:00
Martin
0db62b486e FpDebug: added mem-read cache for ArrayToResData / PascalBuilder 2023-03-02 19:56:41 +01:00
Martin
1caa678dcf Debugger: Clean up debugln without log_group 2023-03-02 19:56:37 +01:00
Martin
196981e0a7 FpDebug, app/FpdServer: fixed compilation 2023-03-02 19:56:36 +01:00
Juha
994659c015 Add loongarch64 support. FPC trunk supports it, too. Issue #40127, patch by Alfred Glänzer. 2023-02-25 23:24:38 +02: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
b752e5b684 FpDebug: refactor GetLineAddresses and FindProcSymbol - Always go through TDbgProcess 2023-02-16 14:49:29 +01:00
Martin
57da4cd7fd FpDebug: allow calling functions from function-pointer variables. (Not yet method variables) 2023-02-12 21:30:15 +01:00
Martin
9569f7beff FpDebug: Added DW_AT_vtable_elem_location 2023-02-12 20:43:03 +01:00
Martin
f86112c649 FpDebug: Added support for DW_AT_entry_pc. Implemented <func>.EntryPCAddress to return the entry-point. 2023-02-12 18:50:28 +01:00
Martin
766684e0f6 FpDebug: Added error checking. Ensure pointer to information-entry points to an existing entry. 2023-02-06 10:56:56 +01:00
Martin
dd5d291621 FpDebug: Fix watching local/param with name "this". Variables with "this" as name were hidden by the "self" param (that fpc encodes as "this") 2023-02-04 13:24:56 +01:00
Martin
60d221f23a FpDebug: Show "self" in locals window. Fpc encodes it as "this", so FpDebug must replace the name. Issue #39907 and part of issue #40000 2023-02-04 13:00:19 +01:00
Martin
e3a3d33c99 FpDebug: Windows (10 up), use WaitForDebugEventEx to support Utf16 OutputDebugStringW 2023-02-04 08:52:29 +01:00
Maxim Ganetsky
1652b4acf1 Translations: Turkish translation update by Onur ERÇELEN, issue #40106 2023-02-02 23:52:31 +03:00
Martin
448bb20ba6 FpDebug: Refactor TBreakLocationMap, so that "OrigValue" is no longer exposed. Move some functionality from TProcess to TBreakLocationMap. 2023-01-25 20:54:59 +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