Dan Gohman
c40a114e23
Add a way to find .eh_frame_hdr
using __GNU_EH_FRAME_HDR
.
...
GNU ld on at least some platforms adds a symbol `__GNU_EH_FRAME_HDR` for
the `.eh_frame_hdr` section. Add a cargo feature `fde-gnu-eh-frame-hdr`
to enable use of this.
2021-10-02 10:13:04 -07:00
Gary Guo
32ad71301c
Throw error if architecture is not supported
2021-09-06 23:33:30 +01:00
Gary Guo
789082f176
Add AArch64 support
2021-09-06 23:27:01 +01:00
Gary Guo
e39f404854
Add patch to use latest version of gimli
2021-09-06 23:24:31 +01:00
Gary Guo
41e805c1cf
Handle signal frame
2021-08-27 18:33:06 +01:00
Gary Guo
10dccf7dc4
Describe baremetal
2021-08-26 22:48:44 +01:00
Gary Guo
c970b0d1fb
Fix warning
2021-08-26 22:40:56 +01:00
Gary Guo
f4dd644e67
Static FDE searcher
2021-08-26 22:40:10 +01:00
Gary Guo
0bb383ea30
Remove fp from RISC-V context if d is not enabled
2021-08-26 22:39:07 +01:00
Gary Guo
2988ed52fb
Update readme
2021-08-26 13:30:39 +01:00
Gary Guo
370c02ac46
Add readme
2021-08-26 13:26:51 +01:00
Gary Guo
57b6852c97
RISC-V unwinder support
2021-08-26 12:58:22 +01:00
Gary Guo
f34aa1824f
Fix build
2021-08-26 12:39:51 +01:00
Gary Guo
2212467faf
Add riscv arch def
2021-08-26 12:38:45 +01:00
Gary Guo
62878b5995
Move arch code around
2021-08-26 12:35:20 +01:00
Gary Guo
1e46c7ea3a
Allow unwinder to be turned off
2021-08-26 12:33:42 +01:00
Gary Guo
e1c7c1ae60
Refactor
2021-08-26 12:11:24 +01:00
Gary Guo
210e6def4c
Add backtrace to panic-handler feature
2021-08-26 11:50:19 +01:00
Gary Guo
8e20d33822
Remove unsafe from signatures wihth callback
2021-08-26 11:49:38 +01:00
Gary Guo
2fc17fc631
Add an example
2021-08-26 11:06:45 +01:00
Gary Guo
af45cc8701
Move dummy panic handler to lib as well
2021-08-26 11:00:25 +01:00
Gary Guo
6e74064c7f
Implement basic panic handler
2021-08-26 10:55:35 +01:00
Gary Guo
af031eb4b1
Panic utilities
2021-08-26 10:54:02 +01:00
Gary Guo
487ca98456
Add print helpers
2021-08-26 10:01:58 +01:00
Gary Guo
f0e87da0aa
Implement rust personality
2021-08-26 09:56:15 +01:00
Gary Guo
e205fb9e64
Move dummy personality to libunwind
2021-08-26 09:54:17 +01:00
Gary Guo
bf908d9562
Relax &mut to &UnwindContext for accessors
2021-08-26 08:15:20 +01:00
Gary Guo
68baa798fb
Add a feature gate to control whether hide self from trace
2021-08-26 05:40:08 +01:00
Gary Guo
a942d60e1a
Allow dwarf expr support to be turned off
2021-08-26 05:37:45 +01:00
Gary Guo
d22df752ca
Move the system allocator to libunwind as a feature
2021-08-26 05:27:35 +01:00
Gary Guo
5e4c957df4
Workaround rust issue 50007
2021-08-26 05:24:02 +01:00
Gary Guo
f76376c101
Add a cdylib target
2021-08-26 05:01:50 +01:00
Gary Guo
7c07a5dbd9
Add helper methods to UnwindAction
2021-08-26 04:57:02 +01:00
Gary Guo
20ca20e7f8
Remove std dependency
2021-08-26 04:27:01 +01:00
Gary Guo
83537e0211
Gate FDE finder under features
2021-08-26 03:56:15 +01:00
Gary Guo
c195fc91eb
Use spinlock if std feature is off
2021-08-26 03:50:33 +01:00
Gary Guo
54cbb9f8fc
Use core::ffi::c_void instead of libc::c_void
2021-08-26 03:48:18 +01:00
Gary Guo
855a3d3a9f
Full unwinding implementation
2021-08-26 03:30:28 +01:00
Gary Guo
874abe87d2
Make frame optional to be able to denote end-of-stack in context
2021-08-26 03:28:02 +01:00
Gary Guo
e588ffdf2e
Implement unwind accessors
2021-08-26 02:03:28 +01:00
Gary Guo
69f47111a0
Add unwind ABI defs
2021-08-26 02:02:13 +01:00
Gary Guo
61275d40b8
cfg-gate x86_64 module
2021-08-26 01:52:17 +01:00
Gary Guo
28f545a5c8
Enforce unsafe_op_in_unsafe_fn
2021-08-26 01:51:59 +01:00
Gary Guo
dd94e27b1f
Implement frame unwinder
2021-08-25 21:37:41 +01:00
Gary Guo
8b06d29ed8
misc changes
2021-08-25 21:36:42 +01:00
Gary Guo
5ecb44d1e3
Implement context save/restore asm for x86_64
2021-08-25 05:59:24 +01:00
Gary Guo
c9385a3f21
FDE finder
2021-08-25 02:55:49 +01:00