diff options
| author | bors <bors@rust-lang.org> | 2021-01-01 00:59:12 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2021-01-01 00:59:12 +0000 |
| commit | 99ad5a1a2824fea1ecf60068fd3636beae7ea2da (patch) | |
| tree | f2c6fa747e14362fef92cbdd624b978fe93d3c5a /compiler/rustc_codegen_llvm | |
| parent | 44e3daf5eee8263dfc3a2509e78ddd1f6f783a0e (diff) | |
| parent | 96c11f98d7148f5d49cb1600101c7f9ce057c08b (diff) | |
| download | rust-99ad5a1a2824fea1ecf60068fd3636beae7ea2da.tar.gz rust-99ad5a1a2824fea1ecf60068fd3636beae7ea2da.zip | |
Auto merge of #80566 - Dylan-DPC:rollup-rns6est, r=Dylan-DPC
Rollup of 8 pull requests
Successful merges:
- #80323 (Update and improve `rustc_codegen_{llvm,ssa}` docs)
- #80368 (rustdoc: Render visibilities succinctly)
- #80514 (Fix broken ./x.py install)
- #80519 (Take type defaults into account in suggestions to reorder generic parameters)
- #80526 (Update LLVM)
- #80532 (remove unnecessary trailing semicolon from bootstrap)
- #80548 (FIx ICE on wf check for foreign fns)
- #80551 (support pattern as const parents in type_of)
Failed merges:
- #80547 (In which we start to parse const generics defaults)
r? `@ghost`
`@rustbot` modify labels: rollup
Diffstat (limited to 'compiler/rustc_codegen_llvm')
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/base.rs | 18 | ||||
| -rw-r--r-- | compiler/rustc_codegen_llvm/src/common.rs | 1 |
2 files changed, 9 insertions, 10 deletions
diff --git a/compiler/rustc_codegen_llvm/src/base.rs b/compiler/rustc_codegen_llvm/src/base.rs index 7d01f6a5499..d5be3132dee 100644 --- a/compiler/rustc_codegen_llvm/src/base.rs +++ b/compiler/rustc_codegen_llvm/src/base.rs @@ -1,17 +1,15 @@ -//! Codegen the completed AST to the LLVM IR. -//! -//! Some functions here, such as codegen_block and codegen_expr, return a value -- -//! the result of the codegen to LLVM -- while others, such as codegen_fn -//! and mono_item, are called only for the side effect of adding a -//! particular definition to the LLVM IR output we're producing. +//! Codegen the MIR to the LLVM IR. //! //! Hopefully useful general knowledge about codegen: //! -//! * There's no way to find out the `Ty` type of a Value. Doing so +//! * There's no way to find out the [`Ty`] type of a [`Value`]. Doing so //! would be "trying to get the eggs out of an omelette" (credit: -//! pcwalton). You can, instead, find out its `llvm::Type` by calling `val_ty`, -//! but one `llvm::Type` corresponds to many `Ty`s; for instance, `tup(int, int, -//! int)` and `rec(x=int, y=int, z=int)` will have the same `llvm::Type`. +//! pcwalton). You can, instead, find out its [`llvm::Type`] by calling [`val_ty`], +//! but one [`llvm::Type`] corresponds to many [`Ty`]s; for instance, `tup(int, int, +//! int)` and `rec(x=int, y=int, z=int)` will have the same [`llvm::Type`]. +//! +//! [`Ty`]: rustc_middle::ty::Ty +//! [`val_ty`]: common::val_ty use super::ModuleLlvm; diff --git a/compiler/rustc_codegen_llvm/src/common.rs b/compiler/rustc_codegen_llvm/src/common.rs index 34e1b7a6045..58af9d4cd04 100644 --- a/compiler/rustc_codegen_llvm/src/common.rs +++ b/compiler/rustc_codegen_llvm/src/common.rs @@ -314,6 +314,7 @@ impl ConstMethods<'tcx> for CodegenCx<'ll, 'tcx> { } } +/// Get the [LLVM type][Type] of a [`Value`]. pub fn val_ty(v: &Value) -> &Type { unsafe { llvm::LLVMTypeOf(v) } } |
