Merge pull request #40539 from nate-chandler/copy_propagation/rename-options

[NFC] Tweaked SILOptions fields for copy propagation.
This commit is contained in:
nate-chandler
2021-12-14 07:56:04 -08:00
committed by GitHub
5 changed files with 67 additions and 26 deletions

View File

@@ -1551,8 +1551,24 @@ static bool ParseSILArgs(SILOptions &Opts, ArgList &Args,
}
}
Opts.EnableCopyPropagation |= Args.hasArg(OPT_enable_copy_propagation);
Opts.DisableCopyPropagation |= Args.hasArg(OPT_disable_copy_propagation);
if (Args.hasArg(OPT_enable_copy_propagation) &&
Args.hasArg(OPT_disable_copy_propagation)) {
// Error if copy propagation is enabled and copy propagation is disabled.
Diags.diagnose(SourceLoc(), diag::error_invalid_arg_combination,
"enable-copy-propagation", "disable-copy-propagation");
return true;
} else if (Args.hasArg(OPT_enable_copy_propagation) &&
!Args.hasArg(OPT_disable_copy_propagation)) {
Opts.CopyPropagation = CopyPropagationOption::On;
} else if (!Args.hasArg(OPT_enable_copy_propagation) &&
Args.hasArg(OPT_disable_copy_propagation)) {
Opts.CopyPropagation = CopyPropagationOption::Off;
} else /*if (!Args.hasArg(OPT_enable_copy_propagation) &&
!Args.hasArg(OPT_disable_copy_propagation))*/
{
Opts.CopyPropagation = CopyPropagationOption::RequestedPassesOnly;
}
Opts.EnableARCOptimizations &= !Args.hasArg(OPT_disable_arc_opts);
Opts.EnableOSSAModules |= Args.hasArg(OPT_enable_ossa_modules);
Opts.EnableOSSAOptimizations &= !Args.hasArg(OPT_disable_ossa_opts);