mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-30 04:56:25 +03:00
49bbe8aca7
cg_llvm: Use `LLVMDIBuilderCreateEnumeratorOfArbitraryPrecision` - Part of https://github.com/rust-lang/rust/issues/134001 - Follow-up to https://github.com/rust-lang/rust/pull/146763 --- This PR replaces our custom `LLVMRustDIBuilderCreateEnumerator` FFI binding with an equivalent LLVM-C binding to `LLVMDIBuilderCreateEnumeratorOfArbitraryPrecision`, which was introduced in LLVM 21. I have also added comments to the remaining `LLVMRustDIBuilder` functions explaining why they currently can't use an LLVM-C binding, and noted some other functions that can use LLVM-C bindings in the future.
The codegen crate contains the code to convert from MIR into LLVM IR,
and then from LLVM IR into machine code. In general it contains code
that runs towards the end of the compilation process.
For more information about how codegen works, see the rustc dev guide.