Expand description
Interface of a Rust codegen backend
This crate defines all the traits that have to be implemented by a codegen backend in order to
use the backend-agnostic codegen code in rustc_codegen_ssa
.
The interface is designed around two backend-specific data structures, the codegen context and the builder. The codegen context is supposed to be read-only after its creation and during the actual codegen, while the builder stores the information about the function during codegen and is used to produce the instructions of the backend IR.
The traits contain associated types that are backend-specific, such as the backend’s value or basic blocks.
Modules§
- abi 🔒
- asm 🔒
- backend 🔒
- builder 🔒
- consts 🔒
- coverageinfo 🔒
- debuginfo 🔒
- declare 🔒
- intrinsic 🔒
- misc 🔒
- statics 🔒
- type_ 🔒
- write 🔒
Enums§
Traits§
- AbiBuilder
Methods - ArgAbi
Builder Methods - AsmBuilder
Methods - AsmCodegen
Methods - Backend
Types - Base
Type Codegen Methods - Builder
Methods - Codegen
Backend - Const
Codegen Methods - Coverage
Info Builder Methods - Debug
Info Builder Methods - Debug
Info Codegen Methods - Derived
Type Codegen Methods - Extra
Backend Methods - Intrinsic
Call Builder Methods - Layout
Type Codegen Methods - Misc
Codegen Methods - Module
Buffer Methods - PreDefine
Codegen Methods - Static
Builder Methods - Static
Codegen Methods - Thin
Buffer Methods - Type
Membership Codegen Methods - Write
Backend Methods