svn commit: r339284 - in stable/11: contrib/llvm/tools/clang/lib/CodeGen lib/clang
Ed Maste
emaste at FreeBSD.org
Wed Oct 10 15:37:12 UTC 2018
Author: emaste
Date: Wed Oct 10 15:37:10 2018
New Revision: 339284
URL: https://svnweb.freebsd.org/changeset/base/339284
Log:
MFC r339019: clang: allow ifunc resolvers to accept arguments
Previously Clang required ifunc resolution functions to take no
arguments, presumably because GCC documented ifunc resolvers as taking
no arguments. However, GCC accepts resolvers accepting arguments, and
our rtld passes CPU ID information (cpuid, hwcap, etc.) to ifunc
resolvers. Just remove the check from the in-tree compiler for our in-
tree compiler.
Sponsored by: The FreeBSD Foundation
Modified:
stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp
stable/11/lib/clang/freebsd_cc_version.h
Directory Properties:
stable/11/ (props changed)
Modified: stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp
==============================================================================
--- stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp Wed Oct 10 13:19:54 2018 (r339283)
+++ stable/11/contrib/llvm/tools/clang/lib/CodeGen/CodeGenModule.cpp Wed Oct 10 15:37:10 2018 (r339284)
@@ -321,8 +321,6 @@ void CodeGenModule::checkAliases() {
assert(FTy);
if (!FTy->getReturnType()->isPointerTy())
Diags.Report(Location, diag::err_ifunc_resolver_return);
- if (FTy->getNumParams())
- Diags.Report(Location, diag::err_ifunc_resolver_params);
}
llvm::Constant *Aliasee = Alias->getIndirectSymbol();
Modified: stable/11/lib/clang/freebsd_cc_version.h
==============================================================================
--- stable/11/lib/clang/freebsd_cc_version.h Wed Oct 10 13:19:54 2018 (r339283)
+++ stable/11/lib/clang/freebsd_cc_version.h Wed Oct 10 15:37:10 2018 (r339284)
@@ -1,3 +1,3 @@
/* $FreeBSD$ */
-#define FREEBSD_CC_VERSION 1100509
+#define FREEBSD_CC_VERSION 1100510
More information about the svn-src-stable
mailing list