[X86] Use Min behavior for cf-protection-{return,branch}/ibt-seal module flags
These features require that all object files are compiled with the support. When the feature is disabled for an object file, the merge behavior should treat the file having a value of 0 (see D129911). Reviewed By: xiangzhangllvm Differential Revision: https://reviews.llvm.org/D130065
This commit is contained in:
@@ -743,19 +743,19 @@ void CodeGenModule::Release() {
|
||||
if (CodeGenOpts.CFProtectionReturn &&
|
||||
Target.checkCFProtectionReturnSupported(getDiags())) {
|
||||
// Indicate that we want to instrument return control flow protection.
|
||||
getModule().addModuleFlag(llvm::Module::Override, "cf-protection-return",
|
||||
getModule().addModuleFlag(llvm::Module::Min, "cf-protection-return",
|
||||
1);
|
||||
}
|
||||
|
||||
if (CodeGenOpts.CFProtectionBranch &&
|
||||
Target.checkCFProtectionBranchSupported(getDiags())) {
|
||||
// Indicate that we want to instrument branch control flow protection.
|
||||
getModule().addModuleFlag(llvm::Module::Override, "cf-protection-branch",
|
||||
getModule().addModuleFlag(llvm::Module::Min, "cf-protection-branch",
|
||||
1);
|
||||
}
|
||||
|
||||
if (CodeGenOpts.IBTSeal)
|
||||
getModule().addModuleFlag(llvm::Module::Override, "ibt-seal", 1);
|
||||
getModule().addModuleFlag(llvm::Module::Min, "ibt-seal", 1);
|
||||
|
||||
if (CodeGenOpts.FunctionReturnThunks)
|
||||
getModule().addModuleFlag(llvm::Module::Override, "function_return_thunk_extern", 1);
|
||||
|
||||
Reference in New Issue
Block a user