From 287fab911e67f1c1423282a38b77b77baecc1903 Mon Sep 17 00:00:00 2001 From: Daniel Kiss Date: Wed, 10 Jul 2024 16:44:01 +0200 Subject: [PATCH] drop TargetInfo changes --- clang/include/clang/Basic/TargetInfo.h | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/clang/include/clang/Basic/TargetInfo.h b/clang/include/clang/Basic/TargetInfo.h index d8075ee97972ea..1f208b40f92cbf 100644 --- a/clang/include/clang/Basic/TargetInfo.h +++ b/clang/include/clang/Basic/TargetInfo.h @@ -1415,10 +1415,14 @@ class TargetInfo : public TransferrableTargetInfo, switch (SignReturnAddr) { case LangOptions::SignReturnAddressScopeKind::None: return "none"; + case LangOptions::SignReturnAddressScopeKind::NonLeaf: return "non-leaf"; + case LangOptions::SignReturnAddressScopeKind::All: + return "all"; } llvm_unreachable("Unexpected SignReturnAddressScopeKind"); } + const char *getSignKeyStr() const { switch (SignKey) { case LangOptions::SignReturnAddressKeyKind::AKey: @@ -1437,7 +1441,10 @@ class TargetInfo : public TransferrableTargetInfo, ? (LangOpts.isSignReturnAddressScopeAll() ? LangOptions::SignReturnAddressScopeKind::All : LangOptions::SignReturnAddressScopeKind::NonLeaf) + : LangOptions::SignReturnAddressScopeKind::None; SignKey = LangOpts.isSignReturnAddressWithAKey() + ? LangOptions::SignReturnAddressKeyKind::AKey + : LangOptions::SignReturnAddressKeyKind::BKey; BranchTargetEnforcement = LangOpts.BranchTargetEnforcement; BranchProtectionPAuthLR = LangOpts.BranchProtectionPAuthLR; GuardedControlStack = LangOpts.GuardedControlStack; @@ -1461,11 +1468,19 @@ class TargetInfo : public TransferrableTargetInfo, if (GuardedControlStack) FuncAttrs.addAttribute("guarded-control-stack"); } + }; /// Determine if the Architecture in this TargetInfo supports branch /// protection virtual bool isBranchProtectionSupportedArch(StringRef Arch) const { return false; + } + + /// Determine if this TargetInfo supports the given branch protection + /// specification + virtual bool validateBranchProtection(StringRef Spec, StringRef Arch, + BranchProtectionInfo &BPI, + StringRef &Err) const { Err = ""; return false; }