Jeremy
|
ac13e71877
|
Implement signal-safe resolution of basic object information
|
2023-11-19 22:49:58 -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
|
77a2e3a22b
|
Rework the exception interface
|
2023-11-18 09:00:57 -06:00 |
|
Jeremy
|
0de366f7d6
|
Add column support for libdwarf
|
2023-11-15 22:50:10 -05:00 |
|
Jeremy
|
140166a4a7
|
Updated nested exception what message
|
2023-11-15 21: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
|
ab7e71f1b2
|
Add exception wrapping utilities, will help issues like #60
|
2023-11-15 21:24:26 -05:00 |
|
Jeremy
|
61d536bc02
|
Put noinline macro in header
|
2023-11-15 15:22:59 -05:00 |
|
Jeremy
|
520962162c
|
Improvement for trace printing with missing symbols or filenames
|
2023-11-15 15:10:22 -05:00 |
|
Jeremy
|
79bc580519
|
Handle multiple symbol back-ends better
|
2023-11-15 15:09:08 -05:00 |
|
Jeremy
|
fec5324502
|
Fix
|
2023-11-15 12:50:37 -05:00 |
|
Jeremy
|
f6468b7a01
|
Update _Unwind to not rely on a hard max frames
|
2023-11-15 12:48:01 -05:00 |
|
Jeremy
|
15572b029d
|
Bump hard max frames from 100 to 200
|
2023-11-15 12:47:36 -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
|
96a55fc686
|
Fix windows build, and prevent future warnings
|
2023-11-12 23:42:26 -05:00 |
|
Jeremy
|
e80afd460b
|
Add safe tracing interface
|
2023-11-12 23:31:41 -05:00 |
|
Jeremy Rifkin
|
5541ec5519
|
Add libunwind back-end (#62)
|
2023-11-12 17:15:59 -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
|
1ced7c8dc3
|
Minor tweaks
|
2023-11-08 19:41:13 -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
|
93de7b7060
|
spacing fix
|
2023-11-07 00:05:50 -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 Rifkin
|
98368fb417
|
CMake improvements (#57)
|
2023-11-06 12:12:07 -05:00 |
|
Jeremy
|
ae5d2392fe
|
More std::
|
2023-10-08 22:48:12 -04:00 |
|
Jeremy
|
ae484f0ed2
|
Improve terminate handler behavior when there's no active exception and also try to print a trace for non-cpptrace terminates
|
2023-10-08 14:55:21 -04:00 |
|
Jeremy
|
f6f64954de
|
Sonar suggestion
|
2023-10-07 17:43:39 -04:00 |
|
Jeremy
|
1d514c1532
|
Windows fix
|
2023-10-07 17:42:11 -04:00 |
|
Jeremy
|
05c3f7160b
|
Add specialized terminate handler and add error handling info to the README. Also updated demo.
|
2023-10-07 17:34:49 -04:00 |
|
Jeremy
|
2e0fa880bc
|
Small fixes
|
2023-10-07 15:05:50 -04:00 |
|
Jeremy
|
8bb8a2020c
|
Add some utilities for exception handling and detecting whether stderr is a terminal
|
2023-10-07 14:59:04 -04:00 |
|
Jeremy
|
df6c22f640
|
Sonar fix
|
2023-10-07 14:04:29 -04:00 |
|
Jeremy
|
4d2580185f
|
Sonar fixes
|
2023-10-07 13:59:57 -04:00 |
|
Jeremy
|
a422e132d4
|
Comments and sonar fixes
|
2023-10-07 13:43:39 -04:00 |
|
Jeremy Rifkin
|
b26c5e4ec8
|
Refactor cpptrace exception objects and simplify interface (#54)
|
2023-10-06 20:25:30 -04:00 |
|
Jeremy
|
bda3e2b169
|
Fix for msvc
|
2023-10-06 01:23:46 -04:00 |
|
Jeremy
|
2b1a2c7a19
|
Fix useless cast warning
|
2023-10-06 00:53:40 -04:00 |
|
Jeremy
|
2f507cc24d
|
Fix msvc build
|
2023-10-05 12:55:44 -04:00 |
|
Jeremy
|
0c03ac7a01
|
Refactor stacktrace::print
|
2023-10-05 12:41:52 -04:00 |
|
Jeremy
|
c3a27d15fb
|
Update trace objects to just be aggregates
|
2023-10-05 12:33:43 -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
|
af181bf981
|
Disabled on sonar
|
2023-10-05 11:16:55 -04:00 |
|
Jeremy
|
1b9e5916f6
|
Some fixes
|
2023-10-05 11:07:46 -04:00 |
|
Jeremy
|
12b80f7af1
|
Some fixes
|
2023-10-05 11:01:03 -04:00 |
|
Jeremy
|
3b5064f1ff
|
Fix forwarding issue
|
2023-10-05 10:58:03 -04:00 |
|
Jeremy
|
435b3cd001
|
Small fixes
|
2023-10-04 18:23:19 -04:00 |
|
Jeremy
|
4324901cd1
|
Fix stackwalk64 architecture detection
|
2023-10-04 15:31:59 -04:00 |
|
Jeremy
|
3cdcc847c9
|
Fix gcc 5
|
2023-10-04 14:30:17 -04:00 |
|
Jeremy
|
15b2f36934
|
Update warning supression
|
2023-10-04 13:14:21 -04:00 |
|
Jeremy
|
81b2e46df1
|
Support stackwalk64 for 32-bit x86
|
2023-10-04 13:13:48 -04:00 |
|
Jeremy
|
b80026596f
|
Some warning fixes
|
2023-10-04 13:09:45 -04:00 |
|
Jeremy
|
b236da4a0b
|
Patch for compilation on 32-bit msvc
|
2023-10-02 17:30:06 -04:00 |
|
Jeremy
|
909ce8155f
|
Remove some old junk from the universal mach-o bodge
|
2023-10-02 11:01:21 -04:00 |
|
Jeremy Rifkin
|
fcd0dcc62b
|
Adjust program counters for execinfo and capturestackbacktrace too (#50)
|
2023-10-02 11:00:13 -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
|
59b5e80256
|
Adjust pc for better line number reporting with StackWalk64
|
2023-09-24 18:21:41 -04:00 |
|
Jeremy Rifkin
|
6de61e7755
|
Add StackWalk64 backend (#48)
|
2023-09-24 17:30:56 -04:00 |
|
Jeremy Rifkin
|
c94b03ae6e
|
Refactor and rewrite a number of dwarf handling methods (#47)
Discard old implementations in favor of new implementations that are
safer and cleaner
|
2023-09-24 03:25:23 -04:00 |
|
Jeremy Rifkin
|
183cdf5a1c
|
Error handling improvements (#46)
|
2023-09-23 17:46:26 -04:00 |
|
Jeremy Rifkin
|
76fc93639e
|
Properly handle dwarf errors (#43)
|
2023-09-22 19:54:56 -04:00 |
|
Jeremy
|
f69448f781
|
Try to fix test and build workflows
|
2023-09-22 12:17:07 -04:00 |
|
Jeremy
|
dd928b249b
|
Add max_depth overloads
|
2023-09-22 12:04:25 -04:00 |
|
Jeremy
|
631d00470d
|
Handle an edge case in the dwarf code
|
2023-09-22 10:22:58 -04:00 |
|
Jeremy
|
1b0b7a43ea
|
Added trace::current() methods
|
2023-09-21 21:45:01 -04:00 |
|
Jeremy
|
99230cb8fe
|
Add support for gnu debuglink
|
2023-09-21 19:23:10 -04:00 |
|
Jeremy Rifkin
|
1689487978
|
Improve Mach-O support (#40)
|
2023-09-21 19:09:37 -04:00 |
|
Jeremy
|
214dd1df36
|
Lock around libdwarf calls
|
2023-09-20 18:28:55 -04:00 |
|
Jeremy
|
33c8cea2f9
|
Quick fixes
|
2023-09-20 17:46:34 -04:00 |
|
Jeremy
|
ddcfbe0a88
|
Column handling fixes
|
2023-09-20 17:39:51 -04:00 |
|
Jeremy
|
209ce45157
|
Library interface improvements
|
2023-09-20 17:38:57 -04:00 |
|
Jeremy
|
2324563290
|
Temp fix for CI
|
2023-09-20 09:44:37 -04:00 |
|
Jeremy
|
55941eaf7e
|
More quick fixes
|
2023-09-19 19:13:50 -04:00 |
|
Jeremy
|
08e5b021de
|
More quick fixes
|
2023-09-19 19:07:47 -04:00 |
|
Jeremy
|
c0a15d2677
|
More quick fixes
|
2023-09-19 18:57:03 -04:00 |
|
Jeremy
|
5d3755353f
|
Quick fixes
|
2023-09-19 18:52:52 -04:00 |
|
Jeremy
|
36174f9216
|
Improve error handling for object file parsing as well as a lot of cleanup and refactoring
|
2023-09-19 18:40:39 -04:00 |
|
Jeremy
|
a31fe3dc00
|
Make stacktrace_frame an aggregate again
|
2023-09-19 15:36:34 -04:00 |
|
Jeremy
|
799e7a7705
|
Remove clang-tidy
|
2023-09-19 15:26:51 -04:00 |
|
Jeremy
|
5c3df2571e
|
Rename stacktrace_frame.col to column, set a proper sentinel value, and update stacktrace.to_string to not have a tailing newline
|
2023-09-19 15:17:39 -04:00 |
|
Jeremy
|
137dc78710
|
Improve dbghelp symbolization thread safety
|
2023-09-19 11:05:04 -04:00 |
|
Jeremy
|
0620197285
|
Add winapi demangling
|
2023-09-19 11:03:45 -04:00 |
|