FailedChanges

Summary

  1. [clangd] Config: config struct propagated through Context (details)
  2. Revert "[ADT] Support const-qualified unique_functions" (details)
  3. [IndVars] Regenerate test checks (NFC) (details)
  4. Add optimization to basic_string::assign for compile-time known constant values. (details)
  5. [gn build] Port 9963d93b073 (details)
  6. Silence unused var warning in NDEBUG build (details)
  7. X86: Use MOV32r0 pseudo instead of directly emitting xor (details)
  8. LowerConstantIntrinsics: Fix missing test for byval behavior (details)
  9. X86: Upgrade a test to not rely on byval pointee type (details)
  10. [darwin][driver] isMacosxVersionLT should check against the minimum supported OS version (details)
  11. [gn build] Add missing llvm-lipo dep to check-lld (details)
  12. [llvm][NFC] Use llvm_canonicalize_cmake_booleans for LLVM_HAVE_TF_AOT (details)
  13. [flang] Defer stmt function body analysis until specification part complete (details)
  14. [ProcessGDBRemote] Get rid of an unused function. (details)
  15. Reland [ADT] Support const-qualified unique_functions (details)
  16. Revert "[clangd] Config: config struct propagated through Context" (details)
  17. Reland [clangd] Config: config struct propagated through Context (details)
  18. Revert "[clang][SourceManager] cache Macro Expansions" (details)
  19. Reland "[clang][SourceManager] cache Macro Expansions"" (details)
  20. [clang][RelativeVTablesABI] Update CodeGenCXX/RelativeVTablesABI/dynamic-cast.cpp (details)
  21. [ADT] Use more explicit from to initialize member. Appease MSVC? (details)
  22. [mlir] [VectorOps] Extend vector reduction integration test with reassoc=true cases. (details)
Commit 9963d93b0731e21dd1c9c1cebf8baaecf2010330 by sam.mccall
[clangd] Config: config struct propagated through Context

Summary:
This introduces the "semantic form" of config exposed to features,
contrasted with the "syntactic form" exposed to users in e9fb1506b83d.

The two are not connected, CompiledFragment and Provider will bridge that gap.
Nor is configuration actually set: that needs changes to ClangdServer,
TUScheduler, and BackgroundQueue.

Reviewers: hokein, kadircet

Subscribers: mgorny, ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D82606
The file was addedclang-tools-extra/clangd/Config.h
The file was addedclang-tools-extra/clangd/Config.cpp
The file was modifiedclang-tools-extra/clangd/CompileCommands.cpp
The file was modifiedclang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
The file was modifiedclang-tools-extra/clangd/CMakeLists.txt
Commit 09b6dffb8ed19d624fddc7a57ce886f8be3c45b2 by nikita.ppv
Revert "[ADT] Support const-qualified unique_functions"

This reverts commit 01bf8cdf5fa9bc71869e15e5e351b2b68c39feb6.

Breaks the build:

llvm/include/llvm/ADT/FunctionExtras.h:223:7: error: explicit template argument list not allowed
  223 |       Callbacks<CallableT, CalledAs, EnableIfTrivial<CallableT>>;
The file was modifiedllvm/include/llvm/ADT/FunctionExtras.h
The file was modifiedllvm/unittests/ADT/FunctionExtrasTest.cpp
Commit c84a952dc7cab11fda4a6f622cf1c955631b99f5 by nikita.ppv
[IndVars] Regenerate test checks (NFC)
The file was modifiedllvm/test/Transforms/IndVarSimplify/elim-extend.ll
Commit 2bad2226801f32362036b471d35a40dc5f343632 by mvels
Add optimization to basic_string::assign for compile-time known constant values.

Summary:
This change optimizes the assign() methods for string where either the contents or lengths are compile time known constants. For small strings (< min_cap) we can execute the assignment entirely inline. For strings up to 128 bytes we allow the compiler to efficiently inline the copy operation after we call the offline __resize<>() method. Short / long branches are taken at the call site for better branch prediction and allowing FDO optimizations.

Benchmarks (unstable / google perflab):
```
name                                                old time/op             new time/op             delta
BM_StringAssignAsciiz_Empty_Opaque                  5.69ns ± 7%             5.97ns ± 7%     ~             (p=0.056 n=5+5)
BM_StringAssignAsciiz_Empty_Transparent             5.39ns ± 7%             0.79ns ± 8%  -85.36%          (p=0.008 n=5+5)
BM_StringAssignAsciiz_Small_Opaque                  11.2ns ± 5%             11.0ns ± 6%     ~             (p=0.548 n=5+5)
BM_StringAssignAsciiz_Small_Transparent             10.1ns ± 7%              1.0ns ± 8%  -89.76%          (p=0.008 n=5+5)
BM_StringAssignAsciiz_Large_Opaque                  23.5ns ± 7%             23.8ns ± 7%     ~             (p=0.841 n=5+5)
BM_StringAssignAsciiz_Large_Transparent             21.4ns ± 7%             12.7ns ± 7%  -40.83%          (p=0.008 n=5+5)
BM_StringAssignAsciiz_Huge_Opaque                    336ns ± 4%              327ns ± 7%     ~             (p=0.421 n=5+5)
BM_StringAssignAsciiz_Huge_Transparent               331ns ± 5%              324ns ± 7%     ~             (p=0.548 n=5+5)
BM_StringAssignAsciizMix_Opaque                     13.6ns ±10%             13.7ns ± 9%     ~             (p=0.690 n=5+5)
BM_StringAssignAsciizMix_Transparent                12.9ns ± 8%              3.6ns ± 8%  -71.82%          (p=0.008 n=5+5)
```

Reviewers: EricWF, #libc!

Subscribers: jfb, libcxx-commits

Tags: #libc

Differential Revision: https://reviews.llvm.org/D82221
The file was removedlibcxx/lib/abi/x86_64-apple-darwin.v2.abilist
The file was modifiedlibcxx/include/__string
The file was modifiedlibcxx/include/string
Commit a450e0d8d092441977d57ca052ba6eb0f800b4fc by llvmgnsyncbot
[gn build] Port 9963d93b073
The file was modifiedllvm/utils/gn/secondary/clang-tools-extra/clangd/BUILD.gn
Commit 6d01a9419351b8ff63b520fd86148795e0d9f381 by rnk
Silence unused var warning in NDEBUG build
The file was modifiedllvm/lib/IR/Function.cpp
Commit 2790516418f4763b5846cd6dd7760a0986ccfa3c by Matthew.Arsenault
X86: Use MOV32r0 pseudo instead of directly emitting xor

This was producing reg = xor undef reg, undef reg. This looks similar
to a use of a value to define itself, and I want to disallow undef
uses for SSA virtual registers. If this were to use implicit_def,
there's no guarantee the two operands end up using the same register
(I think no guarantee exists even if the two operands start out as the
same register, but this was violated when I switched this to use an
explicit implicit_def). The MOV32r0 pseudo evidently exists to handle
this case, so use it instead. This was more work than I expected for
the 64-bit case, but I didn't see any helper for materializing a
64-bit 0.
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/shadow-stack.ll
Commit 7c308dc80a5c6efe4dcb85dc6e20b2691da5c367 by Matthew.Arsenault
LowerConstantIntrinsics: Fix missing test for byval behavior
The file was modifiedllvm/test/Transforms/LowerConstantIntrinsics/objectsize_basic.ll
Commit e7a1c2a4959a8543364d9d46b32351ef45a84e18 by Matthew.Arsenault
X86: Upgrade a test to not rely on byval pointee type
The file was modifiedllvm/test/CodeGen/X86/byval-callee-cleanup.ll
Commit f7a14514ee63dc2ab9558c50254efb8ac2ad7cc6 by Alex Lorenz
[darwin][driver] isMacosxVersionLT should check against the minimum supported OS version

This change ensures that the Darwin driver doesn't add unsupported libraries to the link
invocation when linking the Apple Silicon macOS slice.

rdar://61011136

Differential Revision: https://reviews.llvm.org/D82696
The file was modifiedllvm/lib/Support/Triple.cpp
The file was addedclang/test/Driver/macos-apple-silicon-slice-link-libs.cpp
The file was modifiedllvm/include/llvm/ADT/Triple.h
The file was modifiedclang/lib/Driver/ToolChains/Darwin.h
Commit 1c15229ba3a1c950852d8d149abca571a93c19a6 by rnk
[gn build] Add missing llvm-lipo dep to check-lld

Updates gn files for 918948db4dc8718cb7aae8765653c27cba3cfe86
The file was modifiedllvm/utils/gn/secondary/lld/test/BUILD.gn
Commit 5918d49ac152a67575cec84c2aa2c5c40b3612c8 by mtrofin
[llvm][NFC] Use llvm_canonicalize_cmake_booleans for LLVM_HAVE_TF_AOT

Reviewers: thakis

Subscribers: mgorny, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D82776
The file was modifiedllvm/test/CMakeLists.txt
The file was modifiedllvm/test/lit.site.cfg.py.in
Commit f45b41348ba49c4a76baab1e3e302ef8e2bb992b by pklausler
[flang] Defer stmt function body analysis until specification part complete

Expression analysis was being invoked on the bodies of statement functions
as they were being encountered during name resolution.  This led to failures
on some FCVS tests in cases where those expressions contained implicitly
typed objects.  Defer the analysis of statemet function bodies to the end
of the specification part, at which time the symbols of the enclosing scope
will have been typed.

Reviewed By: tskeith

Differential Revision: https://reviews.llvm.org/D82796
The file was modifiedflang/lib/Semantics/resolve-names.cpp
Commit 300bbbcb707ad08200543735326982664136d3bc by ditaliano
[ProcessGDBRemote] Get rid of an unused function.

The define was wrong. I could've fixed it, but given this is
unused I decided to drop the function altogether.
The file was modifiedlldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
Commit 8c288db2c69a2a9c75bfa629d54f80cf8953b11b by sam.mccall
Reland [ADT] Support const-qualified unique_functions

This reverts commit 09b6dffb8ed19d624fddc7a57ce886f8be3c45b2.

Now compiles with GCC!
The file was modifiedllvm/unittests/ADT/FunctionExtrasTest.cpp
The file was modifiedllvm/include/llvm/ADT/FunctionExtras.h
Commit a3684dfc45c3a7bbdf72750d8a527e07e776b608 by sam.mccall
Revert "[clangd] Config: config struct propagated through Context"

This reverts commit 9963d93b0731e21dd1c9c1cebf8baaecf2010330.

Fails on mac/win:
http://45.33.8.238/win/18704/step_9.txt
http://45.33.8.238/mac/16341/step_9.txt
The file was modifiedclang-tools-extra/clangd/CompileCommands.cpp
The file was modifiedclang-tools-extra/clangd/CMakeLists.txt
The file was removedclang-tools-extra/clangd/Config.h
The file was modifiedclang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
The file was removedclang-tools-extra/clangd/Config.cpp
Commit c5a6ee16f2f6cd7fd46616ba6808a98da53e71bd by sam.mccall
Reland [clangd] Config: config struct propagated through Context

This reverts commit a3684dfc45c3a7bbdf72750d8a527e07e776b608.
The file was modifiedclang-tools-extra/clangd/CompileCommands.cpp
The file was addedclang-tools-extra/clangd/Config.h
The file was addedclang-tools-extra/clangd/Config.cpp
The file was modifiedclang-tools-extra/clangd/CMakeLists.txt
The file was modifiedclang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
Commit 7c2cb1448ad2d20e251db5e3ae4a0c84c12aa970 by ndesaulniers
Revert "[clang][SourceManager] cache Macro Expansions"

This reverts commit dffc1420451f674731cb36799c8ae084104ff0b5.

Missed a hunk (D82690).
The file was modifiedclang/lib/Basic/SourceManager.cpp
Commit 7b8cf98b4a9a2f5ea3667fdbf913a4f8952ed36a by ndesaulniers
Reland "[clang][SourceManager] cache Macro Expansions""

This reverts commit 33d63f02ce408d181e13089ee5a667fb2e1cdc78.

Differential Revision: https://reviews.llvm.org/D80681
The file was modifiedclang/lib/Basic/SourceManager.cpp
Commit de172dd17f0334e1fcbbf28a33d0ea24f7cbff1a by leonardchan
[clang][RelativeVTablesABI] Update CodeGenCXX/RelativeVTablesABI/dynamic-cast.cpp

After c7bcd431d9c4bfeb631a3599f1d628603e6351d6, this test started failing when
running with the new pass manager. One of the CHECKs in this file checks how the
vtable is loaded for a void cast, which involves taking 2 bitcasts from the pointer
to the original object. The order of these bitcasts changes under the new PM.
The order doesn't matter, so this relaxes the CHECKs.

Differential Revision: https://reviews.llvm.org/D82802
The file was modifiedclang/test/CodeGenCXX/RelativeVTablesABI/dynamic-cast.cpp
Commit 6f87b99a79a239edb04bf9d0818a529aa5c31f4b by sam.mccall
[ADT] Use more explicit from to initialize member. Appease MSVC?

Or at least get a clearer error message:
http://lab.llvm.org:8011/builders/mlir-windows/builds/3958/steps/build-unified-tree/logs/stdio
The file was modifiedllvm/include/llvm/ADT/FunctionExtras.h
Commit 4a80f1907860c9ebe55d0172d8e7d3ea95aa5d71 by ajcbik
[mlir] [VectorOps] Extend vector reduction integration test with reassoc=true cases.

Reviewed By: reidtatge

Differential Revision: https://reviews.llvm.org/D82674
The file was modifiedmlir/integration_test/Dialect/LLVMIR/CPU/test-vector-reductions-fp.mlir
The file was addedmlir/integration_test/Dialect/Vector/CPU/test-reductions-f32-reassoc.mlir
The file was addedmlir/integration_test/Dialect/Vector/CPU/test-reductions-f64-reassoc.mlir