rust/compiler/rustc_llvm/llvm-wrapper
Julia Tatz 0504a33383 Preserve, clarify, and extend debug information
`-Cdebuginfo=1` was never line tables only and
can't be due to backwards compatibility issues.
This was clarified and an option for line tables only
was added. Additionally an option for line info
directives only was added, which is well needed for
some targets. The debug info options should now
behave the same as clang's debug info options.
2023-03-31 07:28:39 -04:00
..
.editorconfig
ArchiveWrapper.cpp
CoverageMappingWrapper.cpp rustc_llvm: replace llvm::makeArrayRef with ArrayRef constructors. 2023-01-11 11:25:15 -05:00
Linker.cpp
LLVMWrapper.h record llvm cgu instruction stats 2023-02-25 16:18:56 +08:00
PassWrapper.cpp Auto merge of #109720 - Dylan-DPC:rollup-u564m8s, r=Dylan-DPC 2023-03-29 09:45:26 +00:00
README
RustWrapper.cpp Preserve, clarify, and extend debug information 2023-03-31 07:28:39 -04:00
SymbolWrapper.cpp Remove an extraneous include 2023-03-07 22:46:39 -08:00

This directory currently contains some LLVM support code. This will generally
be sent upstream to LLVM in time; for now it lives here.

NOTE: the LLVM C++ ABI is subject to between-version breakage and must *never*
be exposed to Rust. To allow for easy auditing of that, all Rust-exposed types
must be typedef-ed as "LLVMXyz", or "LLVMRustXyz" if they were defined here.

Functions that return a failure status and leave the error in
the LLVM last error should return an LLVMRustResult rather than an
int or anything to avoid confusion.

When translating enums, add a single `Other` variant as the first
one to allow for new variants to be added. It should abort when used
as an input.

All other types must not be typedef-ed as such.