Jeremy
e6627b760d
Implement better logic for handling scrfile indices, related to #86
2024-02-11 21:02:48 -06:00
Jeremy
cb92c9fdfa
Small optimization to reduce unnecessary frame copying
2024-02-11 15:59:56 -06:00
Jeremy
36a16df075
Handle an edge case with dwarf file indices, identified in #86
2024-02-11 15:25:18 -06:00
Jeremy
d7aac52f8b
Add configuration to control resolution of inlined calls
2024-02-04 11:03:03 -06:00
Jeremy
b8c66cd855
Remove old comment
2024-01-29 22:29:35 -06:00
Jeremy Rifkin
79931c8823
Parsing of mach-o symbol tables, generation of debug maps, and resolution through object files ( #82 )
2024-01-29 22:12:59 -06:00
eightfold
218957dfb0
New C api ( #80 )
...
Updated C API following the requested scheme. May implement "exceptions"
later...
Closes #38
---------
Co-authored-by: Jeremy Rifkin <51220084+jeremy-rifkin@users.noreply.github.com>
2024-01-23 00:16:20 -06:00
Jeremy Rifkin
a654f2082e
Mach-o refactoring ( #77 )
...
This is the first step towards a more comprehensive mach-o system. Next
step will be to add support for symbol table parsing.
2024-01-14 23:36:30 -06:00
Jeremy
399e52f460
Try again to fix libdwarf #includes
2024-01-14 15:23:02 -06:00
Jeremy
ca76080968
Updates to better support external libdwarf, because nothing about how libdwarf's cmake is setup is consistent
2024-01-13 01:31:10 -06:00
Jeremy
e8fd01bbe1
Fallback to the cu cache or walking cu's if aranges lookup fails
2023-12-06 00:21:44 -05:00
Jeremy
9113cc5ffc
Some refactoring, bring object_frame in line with safe_object_frame. Also renamed address_relative_to_object_base_in_memory.
2023-11-20 23:13:21 -06:00
Jeremy
2a4a8066d3
Rework the object trace interface a bit and clarify their purpose. Also rename minimal_object_trace to safe_object_trace
2023-11-20 23:01:19 -06:00
Jeremy
327a6e8318
Fix two more includes
2023-11-18 23:42:49 -06:00
Jeremy
88319b13a7
Turns out one of the includes was needed
2023-11-18 23:39:59 -06:00
Jeremy
6da8ee0773
Fix a couple includes
2023-11-18 23:38:03 -06:00
Jeremy
5657a07ed4
Remove some no longer needed includes
2023-11-18 23:35:43 -06:00
Jeremy
0e462c7b03
Some restructuring of the directory layout
2023-11-18 23:28:48 -06:00
Jeremy
0de366f7d6
Add column support for libdwarf
2023-11-15 22:50:10 -05:00
Jeremy
a518cd8874
Walk subprogram children to handle lambdas better and also cast better
2023-11-15 21:30:11 -05:00
Jeremy
79bc580519
Handle multiple symbol back-ends better
2023-11-15 15:09:08 -05:00
Jeremy
0084de0f05
Some tweaks and fixes
2023-11-15 12:17:18 -05:00
Jeremy
feef9a3265
Fix
2023-11-15 11:55:59 -05:00
Jeremy
aed456bc63
Handle null lines / columns better
2023-11-15 11:52:24 -05:00
Jeremy
c6ea891629
Address -Wmissing-field-initializers warnings
2023-11-14 22:58:10 -05:00
Jeremy
259d596f76
Re-enable warnings
2023-11-08 23:59:48 -05:00
Jeremy
4c1c42c61d
Add frame_ptr alias
2023-11-08 21:32:34 -05:00
Jeremy
7929d239bd
Create a cache for CU srcfiles
2023-11-08 20:47:29 -05:00
Jeremy
2f8e1a5ff7
More work to get inline resolution going
2023-11-08 19:46:31 -05:00
Jeremy
6fbedd0ed6
Commend out prints
2023-11-08 14:59:53 -05:00
Jeremy
5bf66156cd
Minor fixes
2023-11-08 14:47:15 -05:00
Jeremy
7ffec7b3c0
Inital work to walk inline tree and show inlined calls
2023-11-08 13:05:39 -05:00
Jeremy
6d62936c7b
cache path and line number
2023-11-07 00:05:32 -05:00
Jeremy
9096531e23
Either LUT or walk for line info based on cache mode
2023-11-06 23:20:11 -05:00
Jeremy
fef039ba26
Setup a lookup table for line info
2023-11-06 22:38:21 -05:00
Jeremy
781c30f63f
Fix build
2023-11-06 15:16:33 -05:00
Jeremy
ae5d2392fe
More std::
2023-10-08 22:48:12 -04:00
Jeremy
4d2580185f
Sonar fixes
2023-10-07 13:59:57 -04:00
Jeremy
53ceb99b46
Sonar fixes: More nullptr literal use, take std::fuction by const&, and [[noreturn]]
2023-10-05 12:08:47 -04:00
Jeremy
12b80f7af1
Some fixes
2023-10-05 11:01:03 -04:00
Jeremy
3cdcc847c9
Fix gcc 5
2023-10-04 14:30:17 -04:00
Jeremy
b80026596f
Some warning fixes
2023-10-04 13:09:45 -04:00
Jeremy
909ce8155f
Remove some old junk from the universal mach-o bodge
2023-10-02 11:01:21 -04:00
Jeremy
b46ebe7f54
Update libdwarf code to remove fat mach-o bodge and properly handle fat mach-o files
2023-09-30 19:28:35 -04:00
Jeremy
d4bc913607
Setup global dwarf_resolver cache for dwarf resolving
2023-09-30 03:37:16 -04:00
Jeremy
e82f6e360f
Two small refactors
2023-09-30 03:36:07 -04:00
Jeremy
d964842bdb
Refactor some helper functions and wrappers for dawrf into another file
2023-09-29 15:13:35 -04:00
Jeremy
d84a3167d9
Add cache mode config
2023-09-29 12:50:47 -04:00
Jeremy
93dde93802
Caching and optimization work for dwarf
2023-09-29 11:09:17 -04:00
Jeremy Rifkin
6de61e7755
Add StackWalk64 backend ( #48 )
2023-09-24 17:30:56 -04:00