mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-26 08:44:35 +00:00
Document -Z codegen-backend in the unstable book
This commit is contained in:
parent
5565241f65
commit
c50a04bba3
28
src/doc/unstable-book/src/compiler-flags/codegen-backend.md
Normal file
28
src/doc/unstable-book/src/compiler-flags/codegen-backend.md
Normal file
@ -0,0 +1,28 @@
|
||||
# `codegen-backend`
|
||||
|
||||
The tracking issue for this feature is: [#77933](https://github.com/rust-lang/rust/issues/77933).
|
||||
|
||||
------------------------
|
||||
|
||||
This feature allows you to specify a path to a dynamic library to use as rustc's
|
||||
code generation backend at runtime.
|
||||
|
||||
Set the `-Zcodegen-backend=<path>` compiler flag to specify the location of the
|
||||
backend. The library must contain a function named `__rustc_codegen_backend`
|
||||
with a signature of `fn() -> Box<dyn rustc_codegen_ssa::traits::CodegenBackend>`.
|
||||
|
||||
## Example
|
||||
```rust
|
||||
use rustc_codegen_ssa::traits::CodegenBackend;
|
||||
|
||||
struct MyBackend;
|
||||
|
||||
impl CodegenBackend for MyBackend {
|
||||
// Implement codegen methods
|
||||
}
|
||||
|
||||
#[no_mangle]
|
||||
pub fn __rustc_codegen_backend() -> Box<dyn CodegenBackend> {
|
||||
Box::new(MyBackend)
|
||||
}
|
||||
```
|
Loading…
Reference in New Issue
Block a user