Commit Graph

1266 Commits

Author SHA1 Message Date
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
Martin
d99e76636d FpDebug: fix storing "step info" (symbol/line at PC) 2023-01-09 16:46:53 +01:00
Martin
c59f34e9ba FpDebug: fixed spelling / thanks to ccrause 2023-01-08 19:33:20 +01:00
ccrause
171be791ea [RSP] Do not acknowledge an OK response, since qemu complains about receiving an acknowledge after an OK response. It is not clear whether this is in accordance with the RSP protocol specification. 2023-01-08 17:05:04 +01:00
ccrause
1bad121570 [RSP] Removed unused variables. 2023-01-08 17:05:03 +01:00
ccrause
411eebba23 [RSP] Add HWBreak parameter to Add/DeleteBreakWatchPoint method so that TProcess can decide whether a HW or SW break should be inserted on the target. 2023-01-08 17:05:02 +01:00
ccrause
06c4f184d7 [RSP] Bug fix: add the register value to the command to be sent over RSP. Rename ConvertHexWithLittleEndianSwap to HexToIntLittleEndian as this is closer to the regular HexToInt function. Add IntToHexLittleEndian function. 2023-01-08 17:05:01 +01:00
ccrause
b58c6a5dcb Add call saved registers for AVR to InitializeABIRules. 2023-01-08 17:04:59 +01:00
ccrause
b787b45f59 Specify CIE address size for AVR8 architecture. 2023-01-08 17:04:58 +01:00
Martin
cc31d7752a FpDebug: fix watching fields in "old style" objects 2022-12-07 01:44:51 +01:00
Martin
d8f2ce5a1f FpDebug: fix mem leak 2022-12-06 00:15:35 +01:00
Martin
cdafe7d9a3 FpDebug: make "^char" display string-like, like PChar. 2022-12-06 00:15:35 +01:00
Martin
55f314c9ac FpDebug: Fix subtraction for some pointers / Fix type-info for @char, so minus considers them compatible. 2022-12-06 00:15:34 +01:00
Martin
4c879cc73c FpDebug: Fix disassembler operand size for $a3 "move [...], reg" 2022-12-02 03:19:38 +01:00
Martin
143aaab00f FpDebug: WatchResultData, more error checks 2022-12-02 01:01:33 +01:00