Commit Graph

1291 Commits

Author SHA1 Message Date
Martin
044ee4f0bc LazDebuggerFp: load line info (blue dots) for libraries 2023-05-27 13:19:33 +02:00
mattias
7bc5b63fbb updated makefiles 2023-05-27 02:07:12 +02:00
Martin
7689b1865f FpDebug: Fix freeing SOLibEventBreakpoint (when process is stopped, do not access thread state) 2023-05-26 14:05:17 +02:00
Martin
26263f5f4e FpDebug: Fix "step out" finished early, in recursive code (end inside current call, at line of recursive call)
- After fixing "IsAtHiddenBreak" (check frame is *outside* ) there is no need for "if IsAtOrOutOfHiddenBreakFrame then"
2023-05-26 14:05:16 +02:00
Juha
becbb68a0d FpDebug: Use {$PUSH} {$T-} ... {$POP} instead of Pointer() typacasts in some places. 2023-05-21 18:16:44 +03:00
Juha
db2bca3949 Support compiling more of Lazarus + its components with -Sy option. 2023-05-21 01:32:42 +03:00
Juha
5c1be9de89 Support compiling most of Lazarus + its components with -Sy option. 2023-05-20 12:51:35 +03:00
Maxim Ganetsky
1fe3a8a931 FPDebug: updated Russian translation 2023-05-20 02:05:12 +03:00
Martin
69564087ab FpDebug: Allow to deref constant numbers, and show a memory-dump. Issue #36836 2023-05-19 18:13:41 +02:00
Martin
0b441dd73b FpDebug: disable peephole opt when using fpc 3.2.2 => otherwise fpc generates wrong code 2023-05-01 17:43:22 +02:00
Martin
0c94422e48 FpDebug: fix unrolling stack / complete fix for 33556f939f
- TDbgCallstackEntry handles the "addr - 1" by itself.
- But FindCallFrameInfo also needs it. It must search for the address of (or inside of) the asm "call ..." statement.
2023-04-27 16:44:43 +02:00
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