Commit Graph

115 Commits

Author SHA1 Message Date
Gary Guo
96888d814f core_intrinsics is now also marked as internal feature, so fix the warning 2023-12-30 21:31:25 +00:00
Sean Cross
cf89c1934c riscv32: align stack pointer to 16-bytes
Even though rv32 is only 32-bits, all RISC-V stacks must be aligned to a
16-byte boundary. For discussion on this, see:

https://github.com/riscv-non-isa/riscv-elf-psabi-doc/issues/21

As an example of why this is important, the `c.addi16sp` compressed
instruction is only able to adjust the stack pointer by 16-byte
increments.

Signed-off-by: Sean Cross <sean@xobs.io>
2023-12-27 18:48:56 +00:00
Gary Guo
ad1b65a9b6 Version bump and edition upgrade 2023-10-28 01:14:25 +01:00
Gary Guo
fdf70d1e18 Add more tests 2023-10-28 01:06:27 +01:00
Gary Guo
ad9086f9bb Update exception struct to match current version of rustc 2023-10-28 00:24:56 +01:00
Gary Guo
00a7465328 Update gimli version 2023-10-28 00:13:56 +01:00
Gary Guo
9704d0bf23 Fix warnings 2023-10-28 00:13:46 +01:00
Gary Guo
36895d362c Version bump 2023-08-06 14:35:59 +01:00
Gary Guo
a421b6d55c Update ABI user 2023-08-06 14:33:42 +01:00
Gary Guo
de5dd40a4f Add ABI-compatibility assertion 2023-08-06 14:33:42 +01:00
Gary Guo
8b05b629ae Adjust binding macro 2023-08-06 14:33:42 +01:00
Gary Guo
7477bc5b6f Adjust ABI safety requirement 2023-08-06 14:33:42 +01:00
Gary Guo
f5ef1d145e Make UnwindTraceFn take &UnwindContext only 2023-08-06 14:33:42 +01:00
Sean Cross
2f9e374431 find_fde: make text_base optional
No platforms currently use relative addressing. Make this parameter
optional in order to support targets where this value is not available.

Signed-off-by: Sean Cross <sean@xobs.io>
2023-08-06 13:00:25 +01:00
Sean Cross
1b30c6a79d cargo: support building as part of libstd
Support using `unwinding` as a backend for the libstd `unwind` crate.
This will enable unwinding support for new targets while allowing us to
continue to use `libunwind` from llvm for supported targets.

Signed-off-by: Sean Cross <sean@xobs.io>
2023-08-06 13:00:25 +01:00
Gary Guo
953591ff1b Fix CI text check to account for new panic info fmt 2023-08-05 16:44:24 +01:00
Gary Guo
e50b916b7f Allow internal_features lint 2023-08-05 16:04:53 +01:00
Gary Guo
3a16126550 Allow non-dummy feature to absorb dummy feature
This will allow building with --all-features
2023-08-05 16:01:57 +01:00
Gary Guo
29d292637b Allow unwinding_dyn to be built as staticlib 2023-07-29 15:02:45 +01:00
Taiki Endo
5c96fa7042 Simplify CI config 2023-07-16 14:39:17 +01:00
Dylan DPC
5fbf47a2d7 Update Cargo.toml 2023-07-02 16:10:00 +01:00
Gary Guo
372cb02d2a Version bump 2023-05-07 12:27:34 +01:00
Gary Guo
e3cf678839 Support DW_CFA_GNU_args_size 2023-05-07 12:20:27 +01:00
Gary Guo
dcb6ae6dc1 Add a dbg macro to the print utility 2023-05-07 12:20:27 +01:00
Gary Guo
73c9fbf66e Ensure 16B stack alignment for x86 2023-05-07 12:20:27 +01:00
Gary Guo
87851eb776 Add i686 to CI matrix 2023-05-07 12:20:27 +01:00
Gary Guo
a9bec9e719 Change save_context to invoke callback instead 2023-05-07 12:20:27 +01:00
Gary Guo
6dc1ed4d80 Test multiple targets in CI 2023-05-07 00:53:56 +01:00
Gary Guo
c7f06f852b Run the example as a CI test 2023-05-07 00:29:39 +01:00
Gary Guo
863a10ed9a
Create ci.yml 2023-05-07 00:15:01 +01:00
Gary Guo
a331c22665 Use libc abort instead intrinsic abort when available 2023-05-07 00:10:38 +01:00
Gary Guo
77f8403aae Remove stabilised feature 2023-05-06 23:59:35 +01:00
Gary Guo
b2ff52837f Bump version 2023-03-26 23:26:57 +01:00
Taiki Endo
c88a9016fc Add RISC-V RV32 support 2023-03-26 23:23:15 +01:00
Felix Yan
3dba9da864 Correct a typo in x86_64.rs 2023-03-20 23:04:06 +00:00
Nick Spinale
02b5c86f89 Add fde-custom feature 2023-01-14 09:25:33 +00:00
Gary Guo
2f3ffefe8e Bump version 2022-09-12 21:46:09 +01:00
Gary Guo
c72e9cb824 Increase unwind table stack size
GDB binary seems to need 2
2022-09-12 21:45:30 +01:00
Gary Guo
9217c76d3d Fix name for ForcedUnwind 2022-09-12 21:45:29 +01:00
Nick Spinale
fe407b61e1 Swap usage of drop_panic and foreign_exception 2022-09-08 18:26:30 +02:00
Gary Guo
4adf2d434f Remove lto as related rust issue is fixed 2022-05-04 15:29:40 +01:00
Gary Guo
e5bc3a1542 asm is stable 2022-02-24 23:17:26 +00:00
Louis Dupré Bertoni
e962a107bb Fix print macros without newline 2022-02-18 13:53:37 +00:00
Gary Guo
96fd6c3cae Bump version 2021-12-17 07:55:46 +00:00
Dan Gohman
35ad635000 Fix compilation on asm! for Rust nightly.
Add `use core::arch::asm;` in source files that use `asm!`, to fix
compilation on the latest Rust nightly.
2021-12-16 09:49:59 -08:00
Gary Guo
52086c73f8 Bump version 2021-10-26 01:11:10 +01:00
Gary Guo
9741d8a177 Remove alloc dependency 2021-10-13 16:58:06 +01:00
Gary Guo
6eb9fc4e0f Reduce needed register rules depending on targets 2021-10-12 18:30:39 +01:00
Gary Guo
6f4bf61efb Prevent heap allocation during stack unwind 2021-10-12 18:13:28 +01:00
Gary Guo
f12a54b320 Update README to reflect AArch64 and x86 support 2021-10-10 22:35:50 +01:00