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
Martin
bcb511f8c1
FpDebug: fix parsing linemap, after commit 5e1326dab3
2022-11-22 16:29:09 +01:00
mattias
5e1326dab3
fpdebug: fixed crash
2022-11-22 02:36:49 +01:00
mattias
6671244b72
updated makefiles, fixed compile fpdebug with fpc 3.2.2
2022-11-13 13:23:46 +01:00
Martin
8ef10902f3
FpDebug: Stack, CFI - For older FPC (broken CFI) always continue non-CFI eval.
2022-10-27 15:42:59 +02:00
Martin
9e813a6a78
FpDebug: Watch-Function-Eval, support QWord parameters on 32 bit targets
2022-09-25 19:49:42 +02:00
Martin
78caaf4fc2
FpDebug: Dwarfviewer, do not parse after unknown OP.
2022-09-23 20:29:17 +02:00
Martin
3ebada48d3
FpDebug: Allow more params passed to function in watch-function-eval
2022-09-23 20:28:20 +02:00
Martin
753799d887
FpDebug: add intrinsics "Pos(SubStr, SearchStr)" and "SubStr(Str, Start, Len, DoPtr)
2022-09-18 23:48:59 +02:00
Martin
4bdc8f2702
FpDebug: add intrinsic "RefCnt()" => RefCount for AnsiString/LongString (Dwarf-3) and dyn array.
2022-09-18 23:48:59 +02:00
Martin
4910e764bb
FpDebug: Improve PChar handling in pointer math.
2022-09-18 23:48:59 +02:00
Martin
41c9abc8a5
FpDebug: fix typo
2022-09-16 19:55:14 +02:00
zeljan1
78b42debff
Revert "Merge branch 'main' of https://gitlab.com/freepascal.org/lazarus/lazarus into main"
...
This reverts commit 9c4ae10819
, reversing
changes made to 0e040a0d77
.
2022-09-16 18:00:17 +02:00
Martin
8e038f924e
FpDebug: fix typo
2022-09-14 18:40:17 +02:00
Martin
313a112a65
FpDebug: fix type
2022-09-14 16:38:04 +02:00
Martin
ffaa538517
Debugger: increase safety net for max stack frames
2022-09-14 16:38:04 +02:00
Martin
45b69e8d9d
Debugger: Allow to suspend/resume individual threads / only with FpDebug, only while paused - for the next run/step.
2022-09-11 03:28:53 +02:00
Martin
712b3e161d
FpDebug: Fixes for watch-function-eval: allow function to ignore breakpoints set by the user.
2022-09-10 21:36:09 +02:00
Martin
db69b34e2a
FpDebug: Fixes for watch-function-eval: allow function to recursively enter itself.
2022-09-10 18:01:36 +02:00
Martin
0bdae9fa28
FpDebug: fix crash in stack after "watch eval" call. Don't clear stack data.
2022-09-09 22:56:08 +02:00
Martin
126dd815cd
FpDebug: fix range check error in stack
2022-09-09 22:54:06 +02:00
Martin
099f690aea
FpDebug: Fix parsing &Identifer in watches
2022-09-09 13:04:36 +02:00
Martin
659d6aec30
Debugger: changed default intrinsic prefic to ":" / require bracket if no prefix
2022-09-09 12:24:47 +02:00
Martin
6126d94aaf
FpDebug: add intrinsic "CC()" => ChildClass for dynamic casting to instance class
2022-09-08 22:53:52 +02:00
Martin
7e6a705caf
FpDebug: Fix array (element len), issue introduced in 116b22ed72
"Introduce "Intrinsics functions" for watches."
2022-09-07 20:08:42 +02:00
Martin
116b22ed72
FpDebug: Introduce "Intrinsics functions" for watches. Add "length()" for string (dwarf-3) and array
2022-09-07 04:36:34 +02:00
Martin
f58a7bde79
LazDebuggerFp: add %register syntax for watches
2022-09-07 04:36:34 +02:00
Martin
b3cae05fee
FpDebug: fix restoring registers (e.g. after function eval)
2022-09-07 04:36:33 +02:00
Martin
ae209a52a4
FpDebug: fix callstack eval, after CFI ended.
2022-09-06 13:59:01 +02:00
Martin
528dc04f52
FpDebug: Fix compilation of dwarfviewer.
2022-09-04 10:52:57 +02:00
Martin
a0b19ffcf9
FpDebug: Fix Mac-ImageReader. Deal with Symbols of type N_PEXT. And fix, for entries where N_SECT is encountered before N_GSYM. Issue #39696
2022-09-04 10:52:57 +02:00
Martin
1c5a6ca5d7
FpDebugger: fix value-converters crash in array. Arrays elements must have a static type, and must not depend on the instance.
2022-08-23 16:08:21 +02:00
ccrause
4c3d53137f
Only break out of search loop if current Result contains the sfHasLine flag.
2022-08-08 09:25:20 +02:00
Martin
795b94703f
FpDebug: missing result initialization
2022-08-07 23:19:17 +02:00
Martin
f3bf79fa35
Debugger: fix calling abstract method "BelongsToInstance" on watchpoint. Introduced 4e4c402b62
2022-08-05 17:33:28 +02:00
Martin
dd22337fc3
FpDebug: fix accessing nil pointer
2022-08-05 17:33:28 +02:00
Martin
1c87d53199
Debugger: implement reading class.unitname from RTTI
2022-08-05 02:45:01 +02:00
Martin
8749ca4f20
FpDebug: fix address for interfaces
2022-08-05 02:44:29 +02:00
Martin
2f4e270270
FpDebug: Windows, rewrite of "step after hitting breakpoint". Fix issues with incorrect steps (Instr-Ptr not reset) in multi thread scenario, when the int3 had been remove in the meantime.
2022-08-02 15:20:50 +02:00
Martin
48043da966
Debugger: Converter, match "*" and inheritance via "is:"
2022-08-01 18:41:17 +02:00
Martin
de03939782
LazDebuggerFp: Converter JsonForDebug
2022-07-27 01:17:36 +02:00
Martin
099c102565
FpDebug, LazDebuggerFp: more string support for function-eval / support string literals as param
2022-07-27 01:17:36 +02:00
Martin
f3476e5274
FpDebug: Callcontext, rename TFpValueCallParamStringByRef to TFpSymbolCallParamOrdinalOrPointer
2022-07-27 01:17:36 +02:00
Martin
8a0a21a7bc
LazDebuggFp,FpDebug: fix racing conditions
...
- while TDbgController.SendEvents runs in the main thread, the work-thread may run TDbgControllerCallRoutineCmd
- TDbgControllerCallRoutineCmd may run, while the main thread attempts to set the next command
- CallStack code was from before the WorkQueue was introduced. It needs a different approach. (without attempting to start a new worker)
2022-07-27 01:17:35 +02:00
martin
2fce58a3de
FpDebug: support DW_TAG_variant_part
2022-07-13 21:19:35 +02:00
Martin
d0d616e131
FpDebug: keep CurrentContext during function-eval calls. (access by other threads)
2022-07-13 10:27:47 +02:00
Martin
77857b84ce
FpDebug: improve dyn array detection
2022-07-13 10:27:47 +02:00
Joost van der Sluis
a680001c2e
FpDebug: Workaround in fpmake.pp for usage with fpc 3.2.2
2022-07-10 12:54:03 +02:00
Joost van der Sluis
7e67d9b871
FpDebug: fpmake.pp updated
2022-07-10 12:46:13 +02:00
Joost van der Sluis
a7d0a6e0b2
FpDebug: Keep register-names in stacktrace
2022-07-03 18:44:12 +02:00
Martin
6243770298
LazDebuggerFp: reduced default limit for max array members returned. Arrays can now be paged. (and RecurseCnt can override it) / removed hardcode 1000 limit.
2022-07-03 01:54:28 +02:00
Martin
248732defe
debugln
2022-07-02 01:57:49 +02:00
Joost van der Sluis
dee6e4a482
FpDebug: Duplicate code removed
2022-07-02 00:48:42 +02:00
Joost van der Sluis
4ed7f56bb4
FpDebug: Handle CIEs and FDEs without instructions properly
2022-07-02 00:31:15 +02:00
Martin
3c322a009f
FpDebug: Win, improved logging for errors
2022-07-01 01:06:08 +02:00
Martin
9e67808d84
LazDebuggerFp: improve errors for function calling
2022-07-01 01:06:08 +02:00
Martin
dcf2a00767
FpDebug: use Wow64SuspendThread for cross debugging.
2022-06-30 13:00:45 +02:00
Martin
4c6633754c
FpDebug: fix empty array (nil) access from changes in 62145cd833
, "Use Dwarf Call Frame Information (CFI) for stack-tracing when available.
2022-06-30 12:05:22 +02:00
Martin
ae2ca525ca
FpDebug: Win, Clear Exception after function-eval-call failed (with SigSegV)
2022-06-30 02:46:01 +02:00
Martin
0429c822c1
LazDebuggerFp: debugln for function calling (watch-eval)
2022-06-30 02:30:15 +02:00
Martin
9fb4edfbe5
FpDebug: PascalParser, fixed unary minus after comma.
2022-06-30 02:30:14 +02:00
Martin
1d0daee376
FpDebug: fix setting negative value to Register for 32bit target.
2022-06-30 02:20:53 +02:00
Martin
f4f7cca11d
FpDebug: fix reading range checks on Linux
2022-06-29 19:42:18 +02:00
Martin
bdb719b82a
FpDebug: fix reading large dwarf info on 32bit Linux
2022-06-29 18:52:32 +02:00
Martin
2d7b1138f4
FpDebug: allow function calls on Linux-32bit
2022-06-29 17:42:08 +02:00
Martin
649e4600ef
FpDebug: fix range check error from changes in 62145cd833
, "Use Dwarf Call Frame Information (CFI) for stack-tracing when available.
2022-06-29 16:26:22 +02:00
Joost van der Sluis
07cba653fa
FpDebug: Avoid crash on invalid CFI-information
2022-06-29 10:02:56 +02:00
Joost van der Sluis
62145cd833
FpDebug: Use Dwarf Call Frame Information (CFI) for stack-tracing when available. Refactored some stuff to be able to place it in a separate unit.
2022-06-28 23:09:34 +02:00
Pascal Riekenberg
2bc0a9b371
Debugger: added support for TThread.NameThreadForDebugging
2022-06-28 07:35:40 +02:00
Martin
1c008e121d
Debugger: improve SysVarToLStr - convert fields of structures too / array in Inspector
2022-06-27 22:34:08 +02:00
Martin
131d1062df
Debugger: allow calling SysVarToLStr for variants (via user defined type-names)
2022-06-23 13:54:18 +02:00
Martin
943ebed455
LazDebuggerFp, FpDebug: Fix mem leak in watch-eval calling functions.
2022-06-21 20:08:47 +02:00
Martin
f606986f1b
LazDebuggerFp, FpDebug: Enable watch-eval calling functions with records as param (Win-64/32 / Linux-64)
2022-06-21 00:29:07 +02:00
Martin
b014798858
LazDebuggerFp, FpDebug: Enable watch-eval calling function with strings as param/result (only DWARF 3 / up)
2022-06-21 00:29:07 +02:00
Martin
63a6ce4f32
FpDebug: added IFDEF $INLINE OFF
2022-06-21 00:06:04 +02:00
Martin
ae8bbb1cd6
FpDebug: Refactor TFpDbgInfoCallContext (add "AddParam" / remove Dbg-Process from "CreateParamSymbol")
2022-06-21 00:06:04 +02:00
Martin
bba0a43742
FpDebug: Refactor TFpSymbolDwarfFunctionResult, don't reload data from info-entry - use existing type
2022-06-21 00:06:03 +02:00
Martin
4d3a8af105
FpDebug: Fix uninitialized result in watch-to-intf
2022-06-18 18:08:08 +02:00
Marc
1966405611
FpDebug: Initialize mask register
2022-06-15 22:52:56 +02:00
Martin
e2f50ee30d
FpDebug: fixed memory leak in FindExportedSymbolInUnit
2022-06-13 22:05:22 +02:00
Martin
90453ce72b
Debugger: Inspect-Win, implement paging for large arrays
2022-06-12 22:14:12 +02:00
Martin
0b051af509
IDE, FpDebug: evaluate more sub-items for Inspect Dialog.
2022-06-12 22:14:12 +02:00
Martin
f65d3b93ee
Debugger: FpDebug, LazDebuggerIntf, Inspect-Win, basic distinction for proc/func/ref types.
2022-06-12 22:14:12 +02:00
Marc
d942d2ec7f
Revert "FpDebug: Handle exceptions in disassembler", since the disassember doesn't generate exceptions anymore
...
This reverts commit 96271ad5c6
.
2022-06-12 18:09:20 +02:00
Marc
9c4acef131
FpDebug: Fix check in groupP and change exceptions into asserts
2022-06-12 18:06:07 +02:00
Martin
41cb28febf
FpDebug: fix crash on nil object
2022-06-12 11:43:05 +02:00
Martin
96271ad5c6
FpDebug: Handle exceptions in disassembler
2022-06-10 15:41:58 +02:00
Martin
f2cbe3d582
FpDebug: PascalParser fix nil object access.
2022-06-09 17:46:25 +02:00
Martin
b0de3bcc01
FpDebug: Use PrettyPrinter and rdkPrePrinted for (nested) not-yet-implemented types (LazDebuggerIntf)
2022-06-09 17:46:24 +02:00
Martin
e7b23f98d0
LazDebuggerIntf, FpDebug: add array and structure types
2022-06-09 17:46:23 +02:00
Martin
e3d41a28e0
FpDebug: Provide access to internal nested type info
2022-06-09 17:46:23 +02:00
Martin
01a6b1dd5f
DebuggerIntf, FpDebug: add boolean
2022-06-06 21:08:57 +02:00
Martin
19e0cbf641
DebuggerIntf, FpDebug: add char/widechar
2022-06-06 20:54:36 +02:00
Marc
16321fbd3e
FpDebug: Fix range error
2022-05-31 21:47:04 +02:00
Marc
3052c2b048
FpDebug: Add AVX512 extensions of exiting instructions
2022-05-30 22:56:04 +02:00
Marc
86871bc4a7
FpDebug: Clear SIMD flags by default
2022-05-30 22:56:03 +02:00
Marc
fbda5d361c
FpDebug: Add load/save option to asmtest
2022-05-30 22:56:02 +02:00
Marc
1e7b32ab20
FpDebug: Split register type enum into register family and operand size as register size
2022-05-30 22:56:02 +02:00
Marc
5d21207723
FpDebug: Replace opcode set with all (new) opcodes
2022-05-30 22:56:01 +02:00
mattias
3140a3db66
fpdebug: added mips and misel
2022-05-29 20:09:45 +02:00
mattias
9e762cde89
udpated makefiles
2022-05-29 19:34:19 +02:00
Martin
fba36b9318
FpDebug: More fixes for "Solved AV in StateMachineValid" 239b2be664
/ crash in asm window
2022-05-16 23:10:15 +02:00
Martin
0426064e8f
LazDebuggerIntf, FpDebug: add enum/sets
2022-05-16 23:10:14 +02:00
Martin
f190c1ff0b
FpDebug: remove empty code
2022-05-16 23:10:14 +02:00
Martin
3ea0e03d3b
FpDebug: Improve char/widechar from expression/const - implement size and ord-value
2022-05-16 23:10:14 +02:00
Martin
2991d62a16
FpDebug: refactor wait for comp-unit. (check address before enter WaitForScopeScan)
2022-05-16 17:03:05 +02:00
Martin
8baaf99684
FpDebug: Improve fix for dangling pointer to FScanAllWorker.FScanScopeList.
2022-05-16 17:03:05 +02:00
Joost van der Sluis
be75a9d85e
FpDebug: Fixed mistake in attempt to solve AV in StateMachineValid
2022-05-13 22:50:52 +02:00
Joost van der Sluis
239b2be664
FpDebug: Solved AV in StateMachineValid
2022-05-13 20:27:54 +02:00
Martin
7d9af9a857
FpDebug: disable warning "case not covering all values"
2022-05-12 21:19:34 +02:00
Martin
ef032fca2d
FpDebug: provide trace debugln for errors in worker threads
2022-05-12 21:19:34 +02:00
Martin
315bb059d8
FpDebug: fix overflow in stack eval
2022-05-09 23:48:30 +02:00
Martin
915fbfa830
FpDebug: Workaround for dangling pointer to FScanAllWorker.FScanScopeList (in FCompUnitScope.FScopeListPtr), set by FScanScopeList.BuildList.
2022-05-09 01:22:32 +02:00
martin
5a01f79d1c
FpDebug: Find line info when dwarf subprogram-tag is missing. Use line info with linker info. This fixes stepping into old-style "TFoo = object ... end"
2022-05-05 02:46:33 +02:00
Joost van der Sluis
abad276cd4
FpDebug: Fixed 'Unable to open file SYSV00000000' exceptions
2022-05-01 23:08:45 +02:00
Martin
94ae766164
FpDebug: PascalParser, allow $ sign in identifiers. Required for mangled classnames / specialized generics ...
2022-04-22 12:04:46 +02:00
Martin
ca8c6a84e2
FpDebug: Fix PascalParser.ResetEvaluation
2022-04-22 12:04:46 +02:00
Joost van der Sluis
09d676c6ba
FpDebug: Ability to request a strings codepage
2022-03-26 20:13:00 +01:00
Martin
76d9771c34
Debugger: More LazDebuggerIntf. Add/Improve numeric, pointer, float and string watches
2022-03-24 00:39:04 +01:00
Martin
1ba6c2f11a
FpDebug: Fix for FpGdbmi (Windows). FpGdbmi does not knew the LoadedAddr, replace the nil value with the default ImageBase.
2022-03-24 00:39:03 +01:00
Martin
4f8efdd21f
FpDebug: fix warnings.
2022-03-24 00:39:03 +01:00
Martin
22ef2d781f
FpDebug: optimization
2022-03-24 00:39:02 +01:00
Martin
c7e123fd8d
FpDebug: Fix stack-overflow for types with recursive declaration.
2022-03-24 00:39:02 +01:00
Martin
624696270b
FpDebug: Fix QuoteWideText => wrong result len
2022-03-04 00:47:32 +01:00
Martin
625e655423
FpDebug: fix Memleak. Introduced in "PascalPrinter, Automatically deref pointers to string types. Issue #39559 " / a400e1f8c7
2022-03-04 00:37:27 +01:00
Martin
95a5c05edc
FpDebug: Do not process data, after MemRead failed.
2022-03-03 00:46:11 +01:00
Martin
27f4c50dbd
FpDebug: Fix RangeCheck, TByteArray has an upper limit of 32k.
2022-03-03 00:46:11 +01:00
Martin
a400e1f8c7
FpDebug: PascalPrinter, Automatically deref pointers to string types. Issue #39559
2022-02-26 04:01:32 +01:00
Martin
0e6769ac99
FpDebug, LazDebuggerFp: Implement tracking modified CPU registers (top stack-frame only)
2022-02-25 20:25:01 +01:00
mattias
26c9421318
updated Makefiles
2022-02-24 12:55:45 +01:00
Martin
8335731953
FpDebug: Fixed uninitialized variables.
2022-02-22 01:01:40 +01:00
Marc
9ba59b2dfc
FpDebug: Refactor TX86AsmDecoder.DoDisassemble into separate TX86Disassembler object
2022-02-20 16:49:46 +01:00
Marc
81f2319e01
FpDebug: Prepare SMID decoding for (E)VEX extensions
2022-02-17 23:53:43 +01:00
Marc
4e6bf84be4
FpDebug: Fix typo in cvttss2si, cvttsd2si, cvtss2si & cvtsd2si instruction
2022-02-17 23:53:43 +01:00
Martin
2333696004
FpDebug: Ensure internal breakpoint is freed, if cmd is finished. Add asserts
2022-02-10 23:30:23 +01:00
Martin
6993390bab
FpDebug: Improve Stack after calling TProc(nil) / Call to code not in apps memory
2022-02-09 19:30:40 +01:00
Martin
b6be0ae622
FpDebug: Improve Stack after calling TProc(nil) / Call to code not in apps memory
2022-02-09 15:39:26 +01:00
Marc
11992ed7d7
FpDebug: Fix decoding of extended general purpose registers
2022-02-06 17:52:20 +01:00
Marc
402360049e
FpDebug: Fix compilation of asmtest
2022-02-06 17:50:10 +01:00
Martin
2e8783e5e0
FpDebug: fix uninitialized return value
2022-02-01 17:18:19 +01:00
Martin
4482e0ddb8
FpDebug: add {$else} for targets not matched by any of the ifdef
2022-01-26 12:58:31 +01:00
Martin
220c850843
FpDebug: Windows, Fix addresses for non-Dwarf symbols. TFpSymbolInfo does not use the RelocationOffset, so addresses will be directly mapped to their loaded location.
2022-01-16 16:20:28 +01:00
Martin
0e5ea13b8a
FpDebug: Add {$IFDEF TEST_FPDEBUG_SINGLE_THREAD} so the code can be run single-threaded.
2022-01-10 14:08:38 +01:00
Martin
d1ac568e96
Debugger: New package LazDebuggerIntf / Replace TWatchValue with TWatchValueIntf
2022-01-10 14:08:37 +01:00
Joost van der Sluis
c8feb2d0e8
FpDebug: Replaced some Pascalish code to perform pointer calculations without range-overflows with code with range-checking disabled
2022-01-02 00:38:52 +01:00
Joost van der Sluis
a05f75154d
* FpDebug: Fix for handling processes that do not provide a real file-handle.
2022-01-01 17:29:43 +01:00
Joost van der Sluis
7750772722
FpDebug: Fix for handling libraries that do not provide a real file-handle.
2021-12-30 20:36:04 +01:00
ccrause
218ea083c3
DW_LINE_set_address and target address read operations should respect the target address size.
2021-12-29 14:52:02 +02:00
Joost van der Sluis
4e4c402b62
FpDebug: Remove breakpoints bound to a specific library when this library gets unloaded
2021-12-23 00:32:41 +01:00
Joost van der Sluis
e0c4d9c77b
FpDebug: cleanup and explanation of the difference between the ImageBase, RelocationOffset and LoadedTargetImageAddr
2021-12-16 00:35:18 +01:00
Joost van der Sluis
8205a04199
FpDebug: On Windows the RelocationOffset can only be calculated after the file-header has been read. So the whole logic to obtain the RelocationOffset out of the LoadedTargetImageAddr and ImageBase is refactored
2021-12-15 01:21:10 +01:00
Maxim Ganetsky
e71c784ab0
Translations: Brazilian Portuguese translation update by Marcelo B Paula, issue #39516
2021-12-15 02:21:23 +03:00
Joost van der Sluis
190a7267c4
FpDebug: Fixed compilation on Windows
2021-12-14 10:35:59 +01:00
Joost van der Sluis
70d007f0de
FpDebug: Differentiate between the BaseAddr and the RelocationOffset
2021-12-13 23:18:10 +01:00
Martin
842abf97c1
FpDebug: Remove some asserts that were to strict. The check is done in ReadThreadState. If that has already been done, the functions do not need the requirement.
2021-12-12 21:00:28 +01:00
Martin
85c71832e3
FpDebug: Win64 SEH finally sub-routines, show correct line for resolved symbol
2021-12-12 21:00:27 +01:00
Martin
a1c6e559e1
LazDebuggerFp: Cleanup compiler hints
2021-12-12 21:00:27 +01:00
Martin
a4b23e0b2a
FpDebug: PascalParser, Fix parsing float on localized PC.
2021-12-12 21:00:21 +01:00
Joost van der Sluis
2a51f03e2b
FpDebug fixed calculation of addresses, got broken in commit 5ff2a7d17c
2021-12-11 13:38:30 +01:00
Maxim Ganetsky
b2c460ee34
FpDebug: updated Russian translation
2021-12-11 01:23:43 +03:00
Joost van der Sluis
5ff2a7d17c
FpDebug: Calculate the relocated addresses of libraries
2021-12-10 20:17:46 +01:00
Joost van der Sluis
124083f794
FpDebug: Do not crash on unrecognized binary-formats
2021-12-10 17:57:07 +01:00
Joost van der Sluis
1dbef448b0
FpDebug: Removed spaces at start of the line in error-messages.
2021-12-10 17:31:33 +01:00
Martin
5c22ff5ad2
FpDebug: Fix stepping does not stop at next line (seen on Win7 only / Maybe issue #39383 ).
...
When checking if a step-in/over returned from going over a called proc (using the hidden-break), do not trust the BasePointer.
2021-12-10 00:29:26 +01:00
Martin
343eb4e47c
FpDebug: PascalParser, fixed parsing float. In Pascal the comma is a list-separator. It can not be decimal-point. So using the locale "DecimalSeparor" will get wrong results.
2021-12-09 18:17:57 +01:00
Martin
e618b09804
LazDebuggerFp: Fix Stepping and threads / Ensure loop exits with correct EventType
2021-12-09 18:17:56 +01:00
Maxim Ganetsky
b291a31f11
FPDebug: fixed compilation on Windows
2021-12-09 01:38:49 +03:00
Joost van der Sluis
e9f1ffb855
FpDebug: Load libraries on Linux, and skip incompatible binaries. Also on Windows, for consistency and stability
2021-12-08 22:18:04 +01:00
Joost van der Sluis
b9b35b4252
FpDebug: Set the TDbgImageReader.LoadedTargetImageAddr at creation, or else parts might already been read when it is set.
2021-12-08 00:43:17 +01:00
Joost van der Sluis
de0974f29e
FpDebug: Removed TDbgInstance.AddrOffset and other old attempts to relocate libraries properly
2021-12-08 00:43:17 +01:00
Joost van der Sluis
f073c52428
FpDebug: Search for line-information not only within the executable, but also in the loaded libraries
2021-12-07 23:31:41 +01:00
Martin
9877946d86
FpDebug: reduced debugln
2021-12-07 23:21:42 +01:00
Martin
499026c519
FpDebug: Win64 SEH finally sub-routines, find the symbol for the procedure actually owning the finally block
2021-12-07 22:56:11 +01:00
Martin
df98551a5f
FpDebug: Implement finding "address for line" before/after the requested line, if there is no entry for the request.
2021-12-07 20:35:49 +01:00
Martin
7534833eb6
FpDebug: Fixed passing dangling pointer. (Currently not used by LazDebuggerFp when doing deExitProcess)
2021-12-07 15:41:58 +01:00
Martin
07e3817870
FpDebug: fix mem leak. Libraries were not freed on Unload.
2021-12-06 00:40:25 +01:00
Martin
7e06003d9d
FpDebug: Fix race condition. After FQueue.RemoveThread(Self) the Queue (if waiting in TerminateAllThreads) can destroy itself. So it must no longer be accessed.
2021-12-05 22:44:04 +01:00
Martin
b3e07ba2b5
FpDebug: fix for logging
2021-12-05 22:44:04 +01:00
Joost van der Sluis
957f76456c
FpDebug: Detect Dwarf-5 debug headers and skip unsupported sections
2021-12-05 18:26:09 +01:00
Joost van der Sluis
bc4718efae
FpDebug: Ability to pass multiple libraries to OnLibrary(Un)LoadedEvent and detection of loading of libraries on Linux
2021-12-05 01:46:45 +01:00
Martin
d8188bb780
FpDebug: Show "class var" if in current context (no class/instance-name prefix).
2021-12-01 19:55:39 +01:00
Martin
a365f46170
FpDebug/FPD: Add FpDbgDwarfFreePascal - This activates the FPC specific dwarf interpretation.
2021-11-28 10:53:43 +01:00
Martin
b03c9ccbb7
Merge branch 'fpd1' into 'main'
...
Fix compilation of fpdebug\app\fpd
See merge request freepascal.org/lazarus/lazarus!49
2021-11-28 10:49:11 +01:00
Maxim Ganetsky
738e48c6b7
Translations: French translation update by Gilles Vasseur, issue #39487
2021-11-26 03:47:29 +03:00
Martin
ad58ebedf8
FpDebug, CmdLineDebuggerBase: Remove "design time".... / Add missing changes in packagefile
2021-11-25 21:01:06 +01:00
Martin
fcd147a0bf
FpDebug, CmdLineDebuggerBase, LazDebugTestBase: Remove "design time", those are run-time packages (they are for use in the IDE, be serving as base classes to other design time packages. But they should not be listed for installation into the IDE on their own.
2021-11-25 12:54:25 +01:00
ccrause
1e0b55da03
Move management of GController instance to TFDLoop.Inititialize and Destroy.
2021-11-21 10:26:10 +02:00
ccrause
7ae19d4eac
Add cthreads if compiled for unix by Fredvs
2021-11-21 10:25:55 +02:00
Martin
9213ca32e8
FpDebug: Fixed MemLeak on Windows: TProcessUtf8 was not freed / introduced in e104c4c418
- merge-request !41
2021-11-20 13:02:22 +01:00
Martin
f49b54bae5
FpDebug: add a few missing "const" for params
2021-11-14 15:36:41 +01:00
Martin
eac49ae44f
FpDebug: Fix DW_OP_reg0..31 should return the register-location, not the value in the register (except for DW_AT_frame_base). See note_732607024 in merge-request !28
2021-11-14 11:31:56 +01:00
Martin
0a7f1b1da9
FpDebug: Dwarf location-parser, allow to deref a register-location. See merge-request !28
2021-11-14 09:13:55 +01:00
Martin
9c5208b665
FpDebug: compilation fixes for Mac
2021-11-09 16:34:59 +01:00
Martin
95b4cf9043
FpDebug: compilation fixes for Mac
2021-11-08 15:09:01 +01:00
Martin
89cc21355f
FpDebug: fixed visibility warning for InitLoaders
2021-11-08 14:59:14 +01:00
Martin
32aaa9b127
FpDebug: Fix default value / fix test
2021-11-07 15:32:43 +01:00
ccrause
c219bac7dc
Fix initialization of TDbgLinuxProcess.AttachToInstance.
2021-11-07 15:20:23 +02:00
ccrause
7e5b510a4e
Update StartInstance and AttachInstance method signatures of TDbgWinProcess.
2021-11-06 16:17:58 +02:00
ccrause
dc38deaaa5
Fix signature of inherited call in TAvrProcess.Create.
2021-11-06 14:23:32 +01:00
ccrause
4055d9420b
Consolidated parameters for TDbgProcess.Create, StartInstance and AttachToInstance.
2021-11-06 14:23:31 +01:00
ccrause
923fce0cb0
Change StartInstance and AttachInstance to normal methods. TDbgController now calls OSDbgClasses.DbgProcessClass to create a process class instance with a TDbgProcessConfig parameter which can be subclassed and passed around for configuration. The remote configuration is now passed via this parameter as a subclass.
2021-11-06 14:23:28 +01:00
Martin
3b2e56528b
Merge branch 'fpdebug-AVR-2021-11-05' into 'main'
...
Fpdebug: Update AVR support (continuing from !36 )
See merge request freepascal.org/lazarus/lazarus!40
2021-11-06 09:01:24 +00:00
ccrause
9f02cfbf72
Remove write access to LoaderList property.
2021-11-05 21:43:44 +02:00
Martin
3b9f8954ba
fpDebug: Set Sect.VirtualAddress on Linux / See merge request !36 by ccrause
2021-11-05 17:44:25 +01:00
ccrause
9de2a8dfbc
Add a monitor command list to be called after uploading is finished.
2021-11-01 12:20:17 +02:00
ccrause
29cf0ce9d6
TRspConnection.ReadReply to consume all "O" packets until a valid other packet is received. Fixes issue when status query after monitor command resulted in a qemu gdbserver state error as a result of incorrect acknowledge packets.
2021-11-01 12:15:32 +02:00
ccrause
11682281de
Fix up naming convention of methods.
2021-11-01 12:15:13 +02:00
ccrause
7bd0e9ab2a
Remove commented code, fix comment
2021-11-01 12:15:13 +02:00
ccrause
45351f354b
Properly handle console output from gdbserver over RSP. Qemu monitor commands can reply with O packets.
2021-11-01 12:15:12 +02:00
ccrause
211a02deb9
Todo reminders for later improvements
2021-11-01 12:15:12 +02:00
ccrause
052a1245a7
Fix AVR watchpoint issue when watchpoint is already declared when program starts, which leads to an invalid watchpoint. AVR usually starts from address 0, so not calling FindSymbolScope when address is 0 causes this problem.
2021-11-01 12:15:06 +02:00
ccrause
afc60cf708
Fix data watchpoints.
2021-11-01 12:14:57 +02:00
ccrause
d19a267b19
Ensure convertHexWithLittleEndianSwap works for any length of text, provided it fits the range of QWord.
2021-11-01 12:14:57 +02:00
ccrause
5b824b677c
If PauseRequested is true, then both SIGINT and SIGTRAP should be treated as deBreakpoint.
2021-11-01 12:14:57 +02:00
ccrause
1529b34ca7
Change behaviour of WaitForSignal to time out after a short while so that other communication such as Ctrl+C can be transmitted while the target is running. Also distinguish between timeout and socket error.
2021-11-01 12:14:57 +02:00
ccrause
f56b453b29
Remove unused variables.
2021-11-01 12:14:56 +02:00
ccrause
77f10b113f
Copy CPU registers in refreshRegisterCache.
2021-11-01 12:14:48 +02:00
ccrause
42fa9a820a
Add code to extract "thread" stop reason as sent by qemu.
2021-11-01 12:14:48 +02:00
ccrause
a239cd8952
qemu doesnt support the "p" command to read an individual register. Change logic to update all registers with the "g" command when a single register is invalid.
2021-11-01 12:14:47 +02:00
ccrause
68d50adedf
Remove redundant check of FStatus
2021-11-01 12:14:47 +02:00
ccrause
c0f05c8dc6
MAX_CODE_BIN should be at least as big as MaxPrologueSize.
2021-11-01 12:14:47 +02:00
ccrause
50e7383718
Wrap socket Read + Write calls in try except to convert exceptions into a SockErr booleanproperty.
2021-11-01 12:14:47 +02:00
ccrause
e0dea1ca30
Workaround to not automatically create socket connection in constructor. The existing try except block did not catch socket expections in the constructor.
2021-11-01 12:14:46 +02:00
ccrause
4c493303a0
Handle simple interrupt frames.
2021-11-01 12:14:46 +02:00
ccrause
3b36f05e27
Remove FP from register list, since the information is already present in registers r28 and r29
2021-11-01 12:14:46 +02:00
ccrause
c6e6de1294
Fixed checking if AAddress is bracketed by StartPC and EndPC.
2021-11-01 12:14:33 +02:00
ccrause
23065e004c
Add functionality to get proc start/end addresses from debug info. Used to scan prologue and epilogue for frame information on AVR target.
2021-11-01 12:13:28 +02:00
ccrause
542c98a369
Use the same register names and dwarf indexes in all register lists.
2021-11-01 12:13:18 +02:00
ccrause
7f341cbe68
Tweak PrepareCallStackEntryList to cater for avr-gcc ABI. Added TAvrAsmDecoder.GetFunctionFrameReturnAddress to scan prologue and epilogue for frame information.
2021-11-01 12:13:17 +02:00
ccrause
02c76188e3
Fix indenting and missing bracket.
2021-11-01 12:13:17 +02:00
ccrause
762081ec6f
Fix offset of return PC on stack. Trivial (no locals or parameters) stack trace now works.
2021-11-01 12:13:17 +02:00
ccrause
165c4dae9a
Start with AVR call stack analysis
2021-11-01 12:13:17 +02:00
ccrause
c6df32a82c
Fix to make debugger stop at breakpoint at address 0. Only single step in TDbgAvrProcess.Continue if SingleStep parameter is true.
2021-11-01 12:13:16 +02:00
ccrause
b27172ff12
Check if reply to monitor command is a plain response, else hex decode the response.
2021-11-01 12:13:16 +02:00
ccrause
9c6de4853a
Add properties AfterUploadBreakZero and AfterUploadMonitorReset to test with atbackend.exe.
2021-11-01 12:13:09 +02:00
ccrause
f78d3dd6b8
Use loadable section information to automatically upload sections to target.
2021-11-01 12:12:43 +02:00
ccrause
00d5dd4589
Remove duplicate LoaderList property.
2021-11-01 12:12:21 +02:00
ccrause
5d14d15403
Added functionality to mark sections as loadable based on section information.
2021-11-01 12:11:48 +02:00
ccrause
e524997317
Trying to fix Pause behaviour over RSP: Disable FIsPaused assert in ThreadReadState method. Call WaitForSignal after sending Break request. Call Sleep after waiting for WaitForSignal so that a queued request has time to get processed.
2021-11-01 12:10:45 +02:00
ccrause
160c57451a
Fix redundant unit in uses clause.
2021-11-01 12:10:32 +02:00
ccrause
800ee2ac02
Add RSP host, port and upload options. Add property AfterConnectMonitorCmds to execute monitor commands after a connection with target is established.
2021-11-01 12:07:15 +02:00
ccrause
cbff56be77
Moved TXmlConfStringList from gdbmidebugger to DebuggerPropertiesBase to share this property class between gdbmidebugger and fpdebugdebugger.
2021-11-01 12:06:00 +02:00
Martin
57d356a2a2
Merge branch 'fpdebug-breakpoint-removeaddress-fix' into 'main'
...
FpDebug: Fixed incorrect new length of FLocation array in TFpInternalBreakpoint.RemoveAddress
See merge request freepascal.org/lazarus/lazarus!26
2021-10-21 13:43:43 +00:00
mattias
0354b47bc4
updated makefiles
2021-10-18 14:32:30 +02:00
Sergey Larin
20fc451aa1
FpDebug takes into account that FPC 3.3.1 changed offset of the CodePage field in TAnsiRec.
...
When reading strings, FpDebug sets the required CodePage to the received AnsiString, the value of which is read from the memory of the process being debugged.
2021-08-27 21:24:07 +03:00
Martin
ad741a8d7a
Revert "Disable PEEPHOLE opt in fpc 3.2.0 to fpc 3.2.3 => there is a bug that can cause crashed in fpdebug/lazutils"
...
This reverts commit 78bb88de35
.
2021-10-16 13:41:59 +02:00
Martin
78bb88de35
Disable PEEPHOLE opt in fpc 3.2.0 to fpc 3.2.3 => there is a bug that can cause crashed in fpdebug/lazutils
...
(cherry picked from commit 6d1185d76b
)
2021-10-16 11:45:10 +02:00
Martin
6fc5c2fcdd
FpDebug: more asserts for correct thread usage
2021-10-13 21:48:32 +02:00
Martin
0a2bc87781
FpDebug: Fixed mem leak.
2021-09-26 16:02:26 +02:00
Martin
f47220cc47
FpDebug: Add asserts
2021-09-26 02:09:18 +02:00
Maxim Ganetsky
91f499b984
FPDebug: fixed compilation on Windows with FPC trunk, patch by Rika, closes issue #39349
2021-09-02 01:24:53 +03:00
Martin
1c87dc96eb
FpDebug: refactor external debug info / Enable for Linux and Windows
2021-08-14 15:23:17 +02:00
martin
e61ab5d73d
FpDebug: remove double line break from formatted watches.
...
git-svn-id: trunk@65488 -
2021-07-22 00:29:26 +00:00
martin
b5bf7de6f9
FpDebug, Windows: Forward OutputDebugString to IDE.
...
git-svn-id: trunk@65475 -
2021-07-19 18:17:06 +00:00
martin
686e81d6e3
FpDebug: Start external dbg file support for Win
...
git-svn-id: trunk@65390 -
2021-07-06 21:39:38 +00:00
maxim
0711ae584c
Translations: Brazilian Portuguese translation update by Marcelo B Paula, bug #39152
...
git-svn-id: trunk@65372 -
2021-07-04 21:55:24 +00:00
martin
0244c95a33
FpDebug: Dynamically load DebugBreakProcess
...
git-svn-id: trunk@65291 -
2021-06-22 15:14:38 +00:00
mattias
91763f2247
set trunk version to 2.3.0
...
git-svn-id: trunk@65242 -
2021-06-15 14:00:39 +00:00
martin
a9bdfda626
FpDebug: version 1.0
...
git-svn-id: trunk@65231 -
2021-06-14 17:00:52 +00:00
martin
caa6a14163
FpDebug: "waitable section" / Protect some code from being entered twice
...
git-svn-id: trunk@65229 -
2021-06-14 08:12:49 +00:00
martin
6661f86edd
Debugger: allow to force lazloggerbase via define
...
git-svn-id: trunk@65227 -
2021-06-14 07:30:45 +00:00
martin
3deb9a41fe
FpDebug: Improve target-mem read/write on Linux / Allow bigger writes
...
git-svn-id: trunk@65225 -
2021-06-14 07:30:37 +00:00
martin
699930263c
DwarfViewer: fix compile
...
git-svn-id: trunk@65224 -
2021-06-14 07:30:35 +00:00
martin
e94b71c589
FpDebug: Allow multiple threads to call TFpThreadWorkerItem.WaitForFinish
...
git-svn-id: trunk@65187 -
2021-06-08 20:58:38 +00:00
martin
a3a0dd7e08
FpDebug: fix WITH_REFCOUNT_DEBUG for unitname.var
...
git-svn-id: trunk@65185 -
2021-06-08 19:32:26 +00:00
martin
48701f5d93
FpDebug: Improve encapsulation
...
git-svn-id: trunk@65183 -
2021-06-08 19:32:22 +00:00
martin
3644f4a2e2
FpDebug: Fix race condition. FScope accesses FScopeList which is changed by thread (dyn array re-alloc by SetLength)
...
git-svn-id: trunk@65172 -
2021-06-04 01:11:22 +00:00
martin
51ac1efe7a
FpDebug: change locking order. Avoid potential dead lock.
...
git-svn-id: trunk@65171 -
2021-06-04 01:11:20 +00:00
martin
561099dc46
FpDebug: Allow watches with unit prefix: unit1.MyValue
...
git-svn-id: trunk@65168 -
2021-06-03 16:42:41 +00:00
martin
a1b4044047
FpDebug: Fix mem-leak
...
git-svn-id: trunk@65167 -
2021-06-03 16:42:38 +00:00
martin
e828efa600
FpDebug: less compile hints
...
git-svn-id: trunk@65161 -
2021-06-01 13:55:10 +00:00
martin
0473f430ec
FpDebug: Less compile warnings
...
git-svn-id: trunk@65160 -
2021-05-31 14:24:55 +00:00
martin
a822d5c8f7
Reduce duplicate code
...
git-svn-id: trunk@65159 -
2021-05-31 14:24:53 +00:00
martin
ba0a0bdf67
FpDebug: Improve callback for function calling
...
git-svn-id: trunk@65156 -
2021-05-30 20:27:26 +00:00
martin
574b3a8178
LazDebuggerFp, FpDebug: Modify watches/values in target
...
git-svn-id: trunk@65154 -
2021-05-30 19:01:08 +00:00
martin
ce0d1a0bc8
LazDebuggerFp, FpDebug: Beta, Allow function calls in watches
...
git-svn-id: trunk@65151 -
2021-05-29 22:51:09 +00:00
martin
4d4db524ac
FpDebug: evaluate "pointer - pointer" return int (with pointermath)
...
git-svn-id: trunk@65150 -
2021-05-29 22:51:06 +00:00
martin
5191e4d8a2
FpDebug: Added some safety checks
...
git-svn-id: trunk@65144 -
2021-05-28 16:19:23 +00:00
maxim
076aee3ac9
LazDebuggerFpGdbmi: i18n-ed menu caption, regenerated translations and updated Russian translation
...
git-svn-id: trunk@65135 -
2021-05-25 21:42:56 +00:00
joost
fe6e63ed13
FpDebug: Handle signals during function-calls
...
git-svn-id: trunk@65130 -
2021-05-24 22:15:35 +00:00
joost
c136e832f9
FpDebug: Do not choke on unsupported third-party Dwarf extensions
...
git-svn-id: trunk@65129 -
2021-05-24 22:06:59 +00:00
martin
b3d254310b
FpDebug: Disassemble, fixed multibyte NOP Issue #0038625
...
git-svn-id: trunk@64992 -
2021-04-14 16:28:37 +00:00
martin
ee40b8f4c1
FpDebug: Disassemble, fixed 64bit register for push/pop Issue #0038626
...
git-svn-id: trunk@64991 -
2021-04-14 14:34:59 +00:00
martin
776651b5e3
FpDebug, test: DisAssembler testcase
...
git-svn-id: trunk@64990 -
2021-04-14 14:34:57 +00:00
martin
e75dd9a3a6
FpDebug: fix compilation with -dWITH_REFCOUNT_DEBUG
...
git-svn-id: trunk@64887 -
2021-03-28 20:26:23 +00:00
martin
82c6e8b284
FpDebug: Change debugging flags on process creation. Allow debugged 32bit processes to launch 64bit sub-processes without the debugger interfering. Sub-processes are anyway currently not debugged. Issue #0038546
...
git-svn-id: trunk@64779 -
2021-03-10 18:38:39 +00:00
mattias
65e16d03fb
fpdebug: less hints
...
git-svn-id: trunk@64686 -
2021-02-28 08:52:37 +00:00
juha
3f78f0d62d
New optimized functions in LazUtils: FilenameExtIs and FilenameExtIn. Used instead of CompareFileExt and similar.
...
git-svn-id: trunk@64583 -
2021-02-15 08:43:50 +00:00
mattias
62c37ad72a
updated Makefiles
...
git-svn-id: trunk@64567 -
2021-02-13 13:01:14 +00:00
martin
14dc58d892
FpDebug: test and helper apps, fixed some compile errors
...
git-svn-id: trunk@64555 -
2021-02-12 18:31:09 +00:00
martin
068feeb931
FpDebug: remove MemMgr.DefaultContext. All MemRead/Write must go via a location-context.
...
git-svn-id: trunk@64554 -
2021-02-12 18:31:07 +00:00
martin
ac0e547a58
FpDebug,AVR: fix communication with gdbserver / thread safety. Patch by Christo Crause Issue #0038443
...
git-svn-id: trunk@64544 -
2021-02-11 23:18:12 +00:00
martin
6857851554
FpDebug/LazDebugger: add asserts for thread safety
...
git-svn-id: trunk@64542 -
2021-02-11 22:40:29 +00:00
martin
fa5c3112f3
FpDebug, LazDebuggerFp: call FOnThreadProcessLoopCycleEvent for deProcessExits / Ensure breakpoints are handled in the loop-thread / some breakpoint fixes
...
git-svn-id: trunk@64538 -
2021-02-11 22:40:21 +00:00
martin
2ae82698cb
LazDebuggerFp: move breakpoints to thread worker queue
...
git-svn-id: trunk@64536 -
2021-02-11 22:40:17 +00:00
martin
54bf4844fc
LazDebuggerFp: Improve shutdown of thread queue.
...
git-svn-id: trunk@64535 -
2021-02-11 22:40:15 +00:00
juha
77e6853ca6
Components: Reduce calls to LowerCase().
...
git-svn-id: trunk@64515 -
2021-02-10 13:43:15 +00:00
mattias
ba067ea6be
fpdebug: fixed compile
...
git-svn-id: trunk@64508 -
2021-02-08 19:55:41 +00:00
juha
b53ad7ceed
Components: Reduce calls to UpperCase() and LowerCase(). Improves performance.
...
git-svn-id: trunk@64506 -
2021-02-08 19:09:30 +00:00
martin
04eb581af0
FpDebug: fix 32bit elf-imagereader (wrong variable used). Issue #38449 Patch by Christo Crause
...
git-svn-id: trunk@64501 -
2021-02-08 02:25:10 +00:00
juha
0feb7a5662
Codetools, Debugger: Use a faster compare method for case-insensitive strings and StringLists.
...
git-svn-id: trunk@64465 -
2021-02-05 11:28:11 +00:00
maxim
b63e036f48
Translations: Brazilian Portuguese translation update by Marcelo B Paula, bug #38436
...
git-svn-id: trunk@64457 -
2021-02-03 22:42:52 +00:00
martin
71e66e0c64
FpDebug: missing result initialization
...
git-svn-id: trunk@64400 -
2021-01-16 19:30:10 +00:00
martin
0027bd2412
FpDebug: better shortstring detection / pointer base-size for string/array types
...
git-svn-id: trunk@64399 -
2021-01-16 19:30:08 +00:00
martin
ba1a82803a
FpDebug: add size for function-ref
...
git-svn-id: trunk@64398 -
2021-01-16 19:30:06 +00:00
martin
fa1a2fa3b0
FpDebug: PascalParser, fixed unary +/- / Added unary for float / tests for float
...
git-svn-id: trunk@64388 -
2021-01-14 21:14:07 +00:00
martin
3f5954b07e
FpDebug: fixed evaluating signed/unsigned mixed AND
...
git-svn-id: trunk@64387 -
2021-01-14 21:14:05 +00:00
juha
42850cfe4d
LazUtils: Deprecate now obsolete unit LazUtf8Classes and remove its references from Lazarus code.
...
git-svn-id: trunk@64384 -
2021-01-14 12:41:32 +00:00
martin
9ffd47ce9f
FpDebug: check for nil, before accessing.
...
git-svn-id: trunk@64359 -
2021-01-08 23:07:55 +00:00
Sergey Larin
5d7d828c63
FpDebug: Support for the 4th argument when calling the function (Win64)
...
Related to a32ac8e665
2021-01-07 12:09:04 +03:00
joost
4b59383f64
FpDebug: Removed usage of hard-coded register
...
git-svn-id: trunk@64310 -
2020-12-30 19:15:57 +00:00
joost
a32ac8e665
FpDebug: support more function-arguments (x86_64)
...
git-svn-id: trunk@64295 -
2020-12-28 21:33:51 +00:00
joost
cfa42adfc3
FpDebug: Fpmake.pp updated
...
git-svn-id: trunk@64294 -
2020-12-28 21:27:55 +00:00
maxim
526e453330
FPDebug: fixed typos, regenerated translations and updated Russian translation
...
git-svn-id: trunk@64259 -
2020-12-20 22:11:02 +00:00
martin
a869c43f49
FpDebug: fix threadmap iterator in linux classes. Broken by locked-iterator
...
git-svn-id: trunk@64248 -
2020-12-20 12:38:51 +00:00
martin
3894fe4f86
FpDebug: fix threadmap iterator in linux classes. Broken by locked-iterator
...
git-svn-id: trunk@64247 -
2020-12-20 11:00:58 +00:00
martin
fa5199045e
LazDebuggerFp, FpDebug: Show an error message, if the debugger cannot run the application. Issue #0038167
...
git-svn-id: trunk@64243 -
2020-12-19 22:39:00 +00:00
martin
43e81576fe
FpDebug: Use thread-save iterator. Issue #0038047 , #38068 . Normal Iterators are added/removed to/from FIterators: TList => which is not thread save. Since the map in question never changes during iteration, the callbacks are not needed.
...
git-svn-id: trunk@64128 -
2020-11-12 12:02:33 +00:00
martin
e2c618e262
FpDebugger: Show classname for functions in stack.
...
git-svn-id: trunk@64022 -
2020-10-15 18:38:20 +00:00
martin
6156b1bf31
FpDebugDebugger: replace Control-thread with ThreadWorkQueue
...
git-svn-id: trunk@64020 -
2020-10-15 18:38:16 +00:00
martin
e229057f03
FpDebug: logging for ThreadWorkerQueue
...
git-svn-id: trunk@64019 -
2020-10-15 18:37:40 +00:00
martin
b5afc22435
FpDebug: Utils, Add TLockList / refactor, move to internal Fifo queue
...
git-svn-id: trunk@64017 -
2020-10-15 18:37:37 +00:00
martin
1db96371a5
FpDebug: fix stdcall
...
git-svn-id: trunk@63983 -
2020-10-09 14:17:22 +00:00
martin
bc13e22021
FpDebug: fix opening files with utf8 name on windows / prevent crash in trying to create filehandle, when an exception occurs. Issue #37884
...
git-svn-id: trunk@63978 -
2020-10-08 20:58:14 +00:00
martin
bb154702ae
FpDebug: Do not display (nested) records as pointer.
...
git-svn-id: trunk@63921 -
2020-09-25 22:08:47 +00:00
maxim
4c69c36745
FPDebug: fixed typo, regenerated translations and updated Russian translation
...
git-svn-id: trunk@63901 -
2020-09-20 23:35:54 +00:00
joost
566610a9ba
FpDebug: Cleanup of several issues introduced in r63899 #539c1f9a2b, in which a lot more was committed then planned. Among others utility functions to allow calling functions with parameters. The ability to set the value of (regvar) variables and some minor bug-fixes. As part of the parameter-support, addresses located in a register are not immediately read and converted to constants anymore. But the location of the actual register is stored. This might have unforeseen side-effects
...
git-svn-id: trunk@63900 -
2020-09-20 21:52:48 +00:00