Skip to content

Commit 161a4bf

Browse files
committed
update enzyme submodule and users
1 parent f4e2218 commit 161a4bf

File tree

3 files changed

+9
-9
lines changed

3 files changed

+9
-9
lines changed

Diff for: compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp

+6-3
Original file line numberDiff line numberDiff line change
@@ -692,9 +692,12 @@ struct LLVMRustSanitizerOptions {
692692
bool SanitizeKernelAddressRecover;
693693
};
694694

695-
// This symbol won't be available or used when Enzyme is not enabled
695+
// This symbol won't be available or used when Enzyme is not enabled.
696+
// Always set AugmentPassBuilder to true, since it registers optimizations which
697+
// will improve the performance for Enzyme.
696698
#ifdef ENZYME
697-
extern "C" void registerEnzyme(llvm::PassBuilder &PB);
699+
extern "C" void registerEnzymeAndPassPipeline(llvm::PassBuilder &PB,
700+
/* augmentPassBuilder */ bool);
698701
#endif
699702

700703
extern "C" LLVMRustResult LLVMRustOptimize(
@@ -1023,7 +1026,7 @@ extern "C" LLVMRustResult LLVMRustOptimize(
10231026
// now load "-enzyme" pass:
10241027
#ifdef ENZYME
10251028
if (RunEnzyme) {
1026-
registerEnzyme(PB);
1029+
registerEnzymeAndPassPipeline(PB, true);
10271030
if (auto Err = PB.parsePassPipeline(MPM, "enzyme")) {
10281031
std::string ErrMsg = toString(std::move(Err));
10291032
LLVMRustSetLastError(ErrMsg.c_str());

Diff for: src/bootstrap/src/core/build_steps/llvm.rs

+2-5
Original file line numberDiff line numberDiff line change
@@ -996,13 +996,11 @@ impl Step for Enzyme {
996996
.config
997997
.update_submodule(Path::new("src").join("tools").join("enzyme").to_str().unwrap());
998998
let mut cfg = cmake::Config::new(builder.src.join("src/tools/enzyme/enzyme/"));
999-
// FIXME(ZuseZ4): Find a nicer way to use Enzyme Debug builds
1000-
//cfg.profile("Debug");
1001-
//cfg.define("CMAKE_BUILD_TYPE", "Debug");
1002999
configure_cmake(builder, target, &mut cfg, true, LdFlags::default(), &[]);
10031000

10041001
// Re-use the same flags as llvm to control the level of debug information
1005-
// generated for lld.
1002+
// generated by Enzyme.
1003+
// FIXME(ZuseZ4): Find a nicer way to use Enzyme Debug builds.
10061004
let profile = match (builder.config.llvm_optimize, builder.config.llvm_release_debuginfo) {
10071005
(false, _) => "Debug",
10081006
(true, false) => "Release",
@@ -1015,7 +1013,6 @@ impl Step for Enzyme {
10151013
.env("LLVM_CONFIG_REAL", &llvm_config)
10161014
.define("LLVM_ENABLE_ASSERTIONS", "ON")
10171015
.define("ENZYME_EXTERNAL_SHARED_LIB", "ON")
1018-
.define("ENZYME_RUNPASS", "ON")
10191016
.define("LLVM_DIR", builder.llvm_out(target));
10201017

10211018
cfg.build();

0 commit comments

Comments
 (0)