[AArch64] Simplify BTI/PAC-RET module flags
These module flags use the Min merge behavior with a default value of zero, so we don't need to emit them if zero. Reviewed By: danielkiss Differential Revision: https://reviews.llvm.org/D130145
This commit is contained in:
@@ -795,18 +795,17 @@ void CodeGenModule::Release() {
|
||||
Arch == llvm::Triple::arm || Arch == llvm::Triple::armeb ||
|
||||
Arch == llvm::Triple::aarch64 || Arch == llvm::Triple::aarch64_32 ||
|
||||
Arch == llvm::Triple::aarch64_be) {
|
||||
getModule().addModuleFlag(llvm::Module::Min, "branch-target-enforcement",
|
||||
LangOpts.BranchTargetEnforcement);
|
||||
|
||||
getModule().addModuleFlag(llvm::Module::Min, "sign-return-address",
|
||||
LangOpts.hasSignReturnAddress());
|
||||
|
||||
getModule().addModuleFlag(llvm::Module::Min, "sign-return-address-all",
|
||||
LangOpts.isSignReturnAddressScopeAll());
|
||||
|
||||
getModule().addModuleFlag(llvm::Module::Min,
|
||||
"sign-return-address-with-bkey",
|
||||
!LangOpts.isSignReturnAddressWithAKey());
|
||||
if (LangOpts.BranchTargetEnforcement)
|
||||
getModule().addModuleFlag(llvm::Module::Min, "branch-target-enforcement",
|
||||
1);
|
||||
if (LangOpts.hasSignReturnAddress())
|
||||
getModule().addModuleFlag(llvm::Module::Min, "sign-return-address", 1);
|
||||
if (LangOpts.isSignReturnAddressScopeAll())
|
||||
getModule().addModuleFlag(llvm::Module::Min, "sign-return-address-all",
|
||||
1);
|
||||
if (!LangOpts.isSignReturnAddressWithAKey())
|
||||
getModule().addModuleFlag(llvm::Module::Min,
|
||||
"sign-return-address-with-bkey", 1);
|
||||
}
|
||||
|
||||
if (!CodeGenOpts.MemoryProfileOutput.empty()) {
|
||||
|
||||
Reference in New Issue
Block a user