about summary refs log tree commit diff
path: root/src/libstd/rt/unwind/gcc.rs
AgeCommit message (Collapse)AuthorLines
2015-09-11std: Internalize almost all of `std::rt`Alex Crichton-235/+0
This commit does some refactoring to make almost all of the `std::rt` private. Specifically, the following items are no longer part of its API: * DEFAULT_ERROR_CODE * backtrace * unwind * args * at_exit * cleanup * heap (this is just alloc::heap) * min_stack * util The module is now tagged as `#[doc(hidden)]` as the only purpose it's serve is an entry point for the `panic!` macro via the `begin_unwind` and `begin_unwind_fmt` reexports.
2015-08-02Fix compile errors for ARM.Vadim Chugunov-2/+2
2015-07-30Implement Win64 eh_personality natively.Vadim Chugunov-124/+17
2015-07-27Register new snapshots (2015-07-26 a5c12f4).Eduard Burtescu-4/+4
2015-07-23Rewrite the improper_ctypes lint.Eli Friedman-6/+5
Makes the lint a bit more accurate, and improves the quality of the diagnostic messages by explicitly returning an error message. The new lint is also a little more aggressive: specifically, it now rejects tuples, and it recurses into function pointers.
2015-07-21trans: Move rust_try into the compilerAlex Crichton-30/+32
This commit moves the IR files in the distribution, rust_try.ll, rust_try_msvc_64.ll, and rust_try_msvc_32.ll into the compiler from the main distribution. There's a few reasons for this change: * LLVM changes its IR syntax from time to time, so it's very difficult to have these files build across many LLVM versions simultaneously. We'll likely want to retain this ability for quite some time into the future. * The implementation of these files is closely tied to the compiler and runtime itself, so it makes sense to fold it into a location which can do more platform-specific checks for various implementation details (such as MSVC 32 vs 64-bit). * This removes LLVM as a build-time dependency of the standard library. This may end up becoming very useful if we move towards building the standard library with Cargo. In the immediate future, however, this commit should restore compatibility with LLVM 3.5 and 3.6.
2015-06-17More test fixes and fallout of stability changesAlex Crichton-2/+1
2015-05-19std: Implement aborting stubs for MSVC unwindingAlex Crichton-0/+342
At this time unwinding support is not implemented for MSVC as `libgcc_s_seh-1.dll` is not available by default (and this is used on MinGW), but this should be investigated soon. For now this change is just aimed at getting the compiler far enough to bootstrap everything instead of successfully running tests. This commit refactors the `std::rt::unwind` module a bit to prepare for SEH support eventually by moving all GCC-specific functionality to its own submodule and defining the interface needed.