rust/library/std
Matthias Krüger 1b1223df9f
Rollup merge of #102685 - nbdd0121:unwind, r=m-ou-se
Interpret EH actions properly

The EH actions stored in the LSDA follows the format of GCC except table (even for LLVM-generated code). An missing action in the table is the encoding for `Terminate`, see https://github.com/gcc-mirror/gcc/blob/master/libstdc%2B%2B-v3/libsupc%2B%2B/eh_personality.cc#L522-L526.

The currently code interprets it as `None`, as a workaround for #35011, an issue that seems to occur in LLVM 3.7 and not after 3.9. These are very old versions of LLVM and we don't support them anymore, so remove this workaround and interpret them properly.

Note that LLVM currently does not emit any `Terminate` actions, but GCC does. Although GCC backend currently doesn't do unwinding, removing it preemptively would prevent future developers from wasting time to figure out what's wrong.

``@rustbot`` label: +T-compiler
2022-10-11 18:59:49 +02:00
..
benches
primitive_docs Add primitive documentation to libcore 2021-09-12 02:23:08 +00:00
src Rollup merge of #102685 - nbdd0121:unwind, r=m-ou-se 2022-10-11 18:59:49 +02:00
tests Fold aarch64 feature +fp into +neon 2022-03-22 15:14:33 -07:00
build.rs Library changes for Apple WatchOS 2022-07-20 08:57:36 +01:00
Cargo.toml Update stdarch 2022-09-15 13:05:28 -04:00