From nobody Tue Aug 13 09:25:06 2024 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4WjmFG32Dhz5Smy5; Tue, 13 Aug 2024 09:25:06 +0000 (UTC) (envelope-from git@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) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R11" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4WjmFG2BLPz4c2x; Tue, 13 Aug 2024 09:25:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1723541106; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6mkoJJ6T5SflCTAVzea4PcSQ8QyL2Qs+Ld+HOffdOKU=; b=XJGe9Qbsx3kIMK9uH0QWVfCGBH2G4RdHTKOw3SFVc8BBfi6T5ax1DUk/SujSI6cVWUBR5Q bYYwTZKnNLIsutdJ0zUvSsamNxK+mI3yeI7xCJGSESxIfKdAm/to5G+du2D56uX06Z4co0 dYiNgP4MpHC0V73+JYGPsCa/K4ZJtoC1ASB0HGyk3RscFFWQVD7ZjiTPIoegyZvc+IdfMk DN4TLkxZDfhmvQnT6aMZ3jVnBW0PgiUbMEUmPN4WPGLSVJNLFSPNmCRN0xdgI3aAEGmjfU Xsr2c89G9qsoxjD/35mwvHk4wyb246UZe3wfcZb02GZBsf8/zxab9dcCpmBqmA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1723541106; a=rsa-sha256; cv=none; b=pzsCVLfL217uy8q/UNPNBhl016O6bo/DLaIEU/LSY9iDeprOOennQGut50SgyDqC85wMo6 hM2v9xnyYuOmXBTDlbTU3aQX7OMHH9hXL/HEw5mvmYIwDbM8yte9mezwscJTJSQH+GhwU5 NcNTB+1qqMaI7EVJwHrf8+OYlMgbNwUA5+8nJWokNbmEbxt24IC8+ZAp12WELs4pEfh9xX cPbKpmrCNXwUwnkCf7Scz5FsO+gtoROUunVqjVG/OhLcYG0+ezWFutdkiyCRYyiCyvuyOI IKojpFNuMnglKG520288AmOHgPavDu+tcdgxeAg0gDKZJt5y1852NnL1D1Ogfw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1723541106; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6mkoJJ6T5SflCTAVzea4PcSQ8QyL2Qs+Ld+HOffdOKU=; b=TTqyM5h+HLCHvh383CZF1w/Q/nzu76mArxWBcVWgOGmEgAMHQKm3a64+QkEsnVWwitnkVo qdcvpDVdbnYV1McwP2MJFBZw2ThlnwVJkreyzznEuqpE0MRIubTQbM6rRhceXyvoN2bSVR gJKCjb5NSFjpLf0oHujhjwo6j6gSVEBtJ2Er4WR+Mb+KesQE9f4pAT9+3Q1IfkznYFsdGx SMiiX1PZ3/A7dp2EmxlYEGIjuLFXiL6HFQOE2QYvWtzh/9II44X+5ibpvpHULbAxmqItU0 kG1TkkKxOlblxa4O4HgAk8IZKnqstU5bjREOvMKPLYU3i69jcWSc0aCEVJFt1w== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4WjmFG1nylz155v; Tue, 13 Aug 2024 09:25:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 47D9P6Di021669; Tue, 13 Aug 2024 09:25:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 47D9P6cU021666; Tue, 13 Aug 2024 09:25:06 GMT (envelope-from git) Date: Tue, 13 Aug 2024 09:25:06 GMT Message-Id: <202408130925.47D9P6cU021666@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Dimitry Andric Subject: git: 4dac78525c44 - stable/13 - Merge commit d2353ae00c3b from llvm git (by Argyrios Kyrtzidis): List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: dim X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 4dac78525c448c898473e2163660b38b705b3a34 Auto-Submitted: auto-generated The branch stable/13 has been updated by dim: URL: https://cgit.FreeBSD.org/src/commit/?id=4dac78525c448c898473e2163660b38b705b3a34 commit 4dac78525c448c898473e2163660b38b705b3a34 Author: Dimitry Andric AuthorDate: 2024-08-10 21:03:27 +0000 Commit: Dimitry Andric CommitDate: 2024-08-13 09:24:27 +0000 Merge commit d2353ae00c3b from llvm git (by Argyrios Kyrtzidis): [utils/TableGen/X86CompressEVEXTablesEmitter.cpp] Make sure the tablegen output for the `checkPredicate` function is deterministic (#84533) The output for the `checkPredicate` function was depending on a `std::map` iteration that was non-deterministic from run to run, because the keys were pointer values. Make a change so that the keys are `StringRef`s so the ordering is stable. This avoids non-determinism in llvm-tblgen output, which could cause differences in the generated X86GenCompressEVEXTables.inc file. Although these differences are not influencing the meaning of the generated code, they still change a few bytes in libllvm. This in turn influences all the binaries linked with libllvm, such as clang, ld.lld, etc. Reported by: cperciva MFC after: 3 days (cherry picked from commit 7a8d05ba19b7762596c0ff22e668e4d50bac81cf) --- .../llvm/utils/TableGen/X86CompressEVEXTablesEmitter.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/contrib/llvm-project/llvm/utils/TableGen/X86CompressEVEXTablesEmitter.cpp b/contrib/llvm-project/llvm/utils/TableGen/X86CompressEVEXTablesEmitter.cpp index fef8dc7236f5..ee0a96ee5b53 100644 --- a/contrib/llvm-project/llvm/utils/TableGen/X86CompressEVEXTablesEmitter.cpp +++ b/contrib/llvm-project/llvm/utils/TableGen/X86CompressEVEXTablesEmitter.cpp @@ -46,7 +46,7 @@ class X86CompressEVEXTablesEmitter { typedef std::pair Entry; - typedef std::map> + typedef std::map> PredicateInstMap; std::vector Table; @@ -89,7 +89,7 @@ void X86CompressEVEXTablesEmitter::printCheckPredicate( for (const auto &[Key, Val] : PredicateInsts) { for (const auto &Inst : Val) OS << " case X86::" << Inst->TheDef->getName() << ":\n"; - OS << " return " << Key->getValueAsString("CondString") << ";\n"; + OS << " return " << Key << ";\n"; } OS << " }\n"; @@ -226,7 +226,7 @@ void X86CompressEVEXTablesEmitter::run(raw_ostream &OS) { Name == "HasAVXIFMA"; }); if(It!= Predicates.end()) - PredicateInsts[*It].push_back(NewInst); + PredicateInsts[(*It)->getValueAsString("CondString")].push_back(NewInst); } printTable(Table, OS);