diff options
| author | Axel Cohen <axel.cohen@eshard.com> | 2021-11-19 17:01:41 +0100 |
|---|---|---|
| committer | Axel Cohen <axel.cohen@eshard.com> | 2021-12-13 10:40:44 +0100 |
| commit | 97cf461b8f4c0ed0de8fdc1c441b904ddb8b3194 (patch) | |
| tree | 436752a1ffb01de4304b68790df0579062e3b10d /compiler/rustc_codegen_ssa/src/back | |
| parent | 4a7fb971c939d268abdbd0963cd45d046442f7af (diff) | |
| download | rust-97cf461b8f4c0ed0de8fdc1c441b904ddb8b3194.tar.gz rust-97cf461b8f4c0ed0de8fdc1c441b904ddb8b3194.zip | |
Add a codegen option to allow loading LLVM pass plugins
Diffstat (limited to 'compiler/rustc_codegen_ssa/src/back')
| -rw-r--r-- | compiler/rustc_codegen_ssa/src/back/write.rs | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/compiler/rustc_codegen_ssa/src/back/write.rs b/compiler/rustc_codegen_ssa/src/back/write.rs index d6af6104155..65a13282224 100644 --- a/compiler/rustc_codegen_ssa/src/back/write.rs +++ b/compiler/rustc_codegen_ssa/src/back/write.rs @@ -74,6 +74,8 @@ pub enum BitcodeSection { pub struct ModuleConfig { /// Names of additional optimization passes to run. pub passes: Vec<String>, + /// Paths of LLVM pass plugins to load. + pub pass_plugins: Vec<String>, /// Some(level) to optimize at a certain level, or None to run /// absolutely no optimizations (used for the metadata module). pub opt_level: Option<config::OptLevel>, @@ -170,6 +172,8 @@ impl ModuleConfig { ModuleConfig { passes: if_regular!(sess.opts.cg.passes.clone(), vec![]), + pass_plugins: if_regular!(sess.opts.cg.pass_plugins.clone(), vec![]), + opt_level: opt_level_and_size, opt_size: opt_level_and_size, |
