IRGen: Enable the new llvm pass manager

rdar://96687157
This commit is contained in:
Arnold Schwaighofer
2022-07-14 14:15:01 -07:00
parent 83d97819ad
commit d51a465ee1
3 changed files with 9 additions and 4 deletions

View File

@@ -446,7 +446,7 @@ public:
IRGenOptions()
: DWARFVersion(2),
OutputKind(IRGenOutputKind::LLVMAssemblyAfterOptimization),
Verify(true), LegacyPassManager(1), OptMode(OptimizationMode::NotSet),
Verify(true), LegacyPassManager(0), OptMode(OptimizationMode::NotSet),
Sanitizers(OptionSet<SanitizerKind>()),
SanitizersWithRecoveryInstrumentation(OptionSet<SanitizerKind>()),
SanitizeAddressUseODRIndicator(false),

View File

@@ -1079,5 +1079,8 @@ def concurrency_model_EQ :
def enable_new_llvm_pass_manager :
Flag<["-"], "enable-new-llvm-pass-manager">,
HelpText<"Enable new llvm pass manager">;
HelpText<"Enable the new llvm pass manager">;
def disable_new_llvm_pass_manager :
Flag<["-"], "disable-new-llvm-pass-manager">,
HelpText<"Disable the new llvm pass manager">;
} // end let Flags = [FrontendOption, NoDriverOption, HelpHidden]

View File

@@ -2389,8 +2389,10 @@ static bool ParseIRGenArgs(IRGenOptions &Opts, ArgList &Args,
Opts.SwiftAsyncFramePointer = SwiftAsyncFramePointerKind::Never;
}
if (Args.hasArg(OPT_enable_new_llvm_pass_manager))
Opts.LegacyPassManager = false;
Opts.LegacyPassManager =
Args.hasFlag(OPT_disable_new_llvm_pass_manager,
OPT_enable_new_llvm_pass_manager,
Opts.LegacyPassManager);
return false;
}