From owner-svn-src-vendor@freebsd.org Thu Sep 19 17:17:37 2019 Return-Path: Delivered-To: svn-src-vendor@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id CDC7A129279; Thu, 19 Sep 2019 17:17:37 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 46Z3Sd4bqDz422J; Thu, 19 Sep 2019 17:17:37 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 343AE18AC2; Thu, 19 Sep 2019 17:17:37 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x8JHHbnl007567; Thu, 19 Sep 2019 17:17:37 GMT (envelope-from dim@FreeBSD.org) Received: (from dim@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x8JHHaI4007563; Thu, 19 Sep 2019 17:17:36 GMT (envelope-from dim@FreeBSD.org) Message-Id: <201909191717.x8JHHaI4007563@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: dim set sender to dim@FreeBSD.org using -f From: Dimitry Andric Date: Thu, 19 Sep 2019 17:17:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r352524 - in vendor/clang/dist-release_90: include/clang/Basic lib/AST lib/Basic lib/CodeGen X-SVN-Group: vendor X-SVN-Commit-Author: dim X-SVN-Commit-Paths: in vendor/clang/dist-release_90: include/clang/Basic lib/AST lib/Basic lib/CodeGen X-SVN-Commit-Revision: 352524 X-SVN-Commit-Repository: base MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-vendor@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the vendor work area tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 19 Sep 2019 17:17:37 -0000 Author: dim Date: Thu Sep 19 17:17:36 2019 New Revision: 352524 URL: https://svnweb.freebsd.org/changeset/base/352524 Log: Vendor import of clang 9.0.0 release r372316: https://llvm.org/svn/llvm-project/cfe/tags/RELEASE_900/final@372316 Modified: vendor/clang/dist-release_90/include/clang/Basic/Builtins.def vendor/clang/dist-release_90/lib/AST/Decl.cpp vendor/clang/dist-release_90/lib/Basic/Version.cpp vendor/clang/dist-release_90/lib/CodeGen/CodeGenModule.cpp Modified: vendor/clang/dist-release_90/include/clang/Basic/Builtins.def ============================================================================== --- vendor/clang/dist-release_90/include/clang/Basic/Builtins.def Thu Sep 19 17:17:33 2019 (r352523) +++ vendor/clang/dist-release_90/include/clang/Basic/Builtins.def Thu Sep 19 17:17:36 2019 (r352524) @@ -440,7 +440,7 @@ BUILTIN(__builtin_rotateleft64, "UWiUWiUWi", "nc") BUILTIN(__builtin_rotateright8, "UcUcUc", "nc") BUILTIN(__builtin_rotateright16, "UsUsUs", "nc") BUILTIN(__builtin_rotateright32, "UZiUZiUZi", "nc") -BUILTIN(__builtin_rotateright64, "UWiUWiWi", "nc") +BUILTIN(__builtin_rotateright64, "UWiUWiUWi", "nc") // Random GCC builtins BUILTIN(__builtin_constant_p, "i.", "nctu") Modified: vendor/clang/dist-release_90/lib/AST/Decl.cpp ============================================================================== --- vendor/clang/dist-release_90/lib/AST/Decl.cpp Thu Sep 19 17:17:33 2019 (r352523) +++ vendor/clang/dist-release_90/lib/AST/Decl.cpp Thu Sep 19 17:17:36 2019 (r352524) @@ -3332,7 +3332,8 @@ SourceRange FunctionDecl::getExceptionSpecSourceRange( /// an externally visible symbol, but "extern inline" will not create an /// externally visible symbol. bool FunctionDecl::isInlineDefinitionExternallyVisible() const { - assert((doesThisDeclarationHaveABody() || willHaveBody()) && + assert((doesThisDeclarationHaveABody() || willHaveBody() || + hasAttr()) && "Must be a function definition"); assert(isInlined() && "Function must be inline"); ASTContext &Context = getASTContext(); Modified: vendor/clang/dist-release_90/lib/Basic/Version.cpp ============================================================================== --- vendor/clang/dist-release_90/lib/Basic/Version.cpp Thu Sep 19 17:17:33 2019 (r352523) +++ vendor/clang/dist-release_90/lib/Basic/Version.cpp Thu Sep 19 17:17:36 2019 (r352524) @@ -35,7 +35,7 @@ std::string getClangRepositoryPath() { // If the CLANG_REPOSITORY is empty, try to use the SVN keyword. This helps us // pick up a tag in an SVN export, for example. - StringRef SVNRepository("$URL: https://llvm.org/svn/llvm-project/cfe/branches/release_90/lib/Basic/Version.cpp $"); + StringRef SVNRepository("$URL: https://llvm.org/svn/llvm-project/cfe/tags/RELEASE_900/final/lib/Basic/Version.cpp $"); if (URL.empty()) { URL = SVNRepository.slice(SVNRepository.find(':'), SVNRepository.find("/lib/Basic")); Modified: vendor/clang/dist-release_90/lib/CodeGen/CodeGenModule.cpp ============================================================================== --- vendor/clang/dist-release_90/lib/CodeGen/CodeGenModule.cpp Thu Sep 19 17:17:33 2019 (r352523) +++ vendor/clang/dist-release_90/lib/CodeGen/CodeGenModule.cpp Thu Sep 19 17:17:36 2019 (r352524) @@ -4355,17 +4355,22 @@ void CodeGenModule::EmitAliasDefinition(GlobalDecl GD) // Create a reference to the named value. This ensures that it is emitted // if a deferred decl. llvm::Constant *Aliasee; - if (isa(DeclTy)) + llvm::GlobalValue::LinkageTypes LT; + if (isa(DeclTy)) { Aliasee = GetOrCreateLLVMFunction(AA->getAliasee(), DeclTy, GD, /*ForVTable=*/false); - else + LT = getFunctionLinkage(GD); + } else { Aliasee = GetOrCreateLLVMGlobal(AA->getAliasee(), llvm::PointerType::getUnqual(DeclTy), /*D=*/nullptr); + LT = getLLVMLinkageVarDefinition(cast(GD.getDecl()), + D->getType().isConstQualified()); + } // Create the new alias itself, but don't set a name yet. - auto *GA = llvm::GlobalAlias::create( - DeclTy, 0, llvm::Function::ExternalLinkage, "", Aliasee, &getModule()); + auto *GA = + llvm::GlobalAlias::create(DeclTy, 0, LT, "", Aliasee, &getModule()); if (Entry) { if (GA->getAliasee() == Entry) {