From: kettenis Date: Mon, 19 Feb 2024 14:08:58 +0000 (+0000) Subject: Revert the change that enabled retpoline thunks by default. The use of X-Git-Url: http://artulab.com/gitweb/?a=commitdiff_plain;h=3ea6ff6a2a88bf2aa7231f24f575f1cd9b6c2e15;p=openbsd Revert the change that enabled retpoline thunks by default. The use of retpolines makes IBT less useful and we have enabled additional mitigations in our kernel now that should make them (mostly) unnecessary. ok guenther@ --- diff --git a/gnu/llvm/clang/lib/Driver/ToolChains/Arch/X86.cpp b/gnu/llvm/clang/lib/Driver/ToolChains/Arch/X86.cpp index c7de29996ae..3c8adf3cbc4 100644 --- a/gnu/llvm/clang/lib/Driver/ToolChains/Arch/X86.cpp +++ b/gnu/llvm/clang/lib/Driver/ToolChains/Arch/X86.cpp @@ -158,12 +158,6 @@ void x86::getX86TargetFeatures(const Driver &D, const llvm::Triple &Triple, // consider deprecating this and instead warn if the user requests external // retpoline thunks and *doesn't* request some form of retpolines. auto SpectreOpt = clang::driver::options::ID::OPT_INVALID; - if (Triple.isOSOpenBSD() && Triple.getArch() == llvm::Triple::x86_64 && - Args.hasFlag(options::OPT_mretpoline, options::OPT_mno_retpoline, true)) { - Features.push_back("+retpoline-indirect-calls"); - Features.push_back("+retpoline-indirect-branches"); - SpectreOpt = options::OPT_mretpoline; - } else if (Args.hasArgNoClaim(options::OPT_mretpoline, options::OPT_mno_retpoline, options::OPT_mspeculative_load_hardening, options::OPT_mno_speculative_load_hardening)) {