SuccessChanges

Summary

  1. [clangd] Provide a way to disable external index (details)
  2. [compiler-rt][aarch64] Add PAC-RET/BTI support to HWASAN. (details)
  3. [X86] Fold cmpeq/ne(trunc(logic(x)),0) --> cmpeq/ne(logic(x),0) (details)
  4. [InstCombine] Regenerate select-ctlz-to-cttz.ll tests (details)
  5. [docs] Add Windows/COFF call info (details)
  6. [libc++] Split auto_ptr out of <memory> (details)
  7. [libc++] Split std::allocator out of <memory> (details)
  8. [libc++] Split std::get_temporary_buffer out of <memory> (details)
  9. [libc++] NFC: Remove duplicate synopsis from <__string> (details)
  10. [gn build] Port 0b439e4cc9db (details)
  11. [gn build] Port 26beecfe470b (details)
  12. [gn build] Port 6a1ac88fc19a (details)
  13. [libc++] Divorce the std Lit feature from the -std=XXX compiler flag (details)
  14. Reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands" (details)
Commit 63bc9e443502ab6def2dec0b5ffe64a522f801cc by kadircet
[clangd] Provide a way to disable external index

Users can reset any external index set by previous fragments by
putting a `None` for the external block, e.g:

```
Index:
  External: None
```

Differential Revision: https://reviews.llvm.org/D100106
The file was modifiedclang-tools-extra/clangd/ConfigFragment.h
The file was modifiedclang-tools-extra/clangd/Config.h
The file was modifiedclang-tools-extra/clangd/unittests/ConfigYAMLTests.cpp
The file was modifiedclang-tools-extra/clangd/ConfigCompile.cpp
The file was modifiedclang-tools-extra/clangd/ConfigYAML.cpp
The file was modifiedclang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
Commit a46effbd2aec88012c8f94b81da51dfd5b9e141b by daniel.kiss
[compiler-rt][aarch64] Add PAC-RET/BTI support to HWASAN.

Support for -mbranch-protection.

Reviewed By: eugenis

Differential Revision: https://reviews.llvm.org/D100143
The file was modifiedcompiler-rt/lib/hwasan/hwasan_setjmp.S
The file was modifiedcompiler-rt/lib/builtins/assembly.h
The file was modifiedcompiler-rt/lib/hwasan/hwasan_tag_mismatch_aarch64.S
Commit baadbe04bf753382728ca6ff3e05227e4c773cec by llvm-dev
[X86] Fold cmpeq/ne(trunc(logic(x)),0) --> cmpeq/ne(logic(x),0)

Fixes the issues noted in PR48768, where the and/or/xor instruction had been promoted to avoid i8/i16 partial-dependencies, but the test against zero had not.

We can almost certainly relax this fold to work for any truncation, although it breaks a number of existing folds (notable movmsk folds which tend to rely on the truncate to determine the demanded bits/elts in the source vector).

There is a reverse combine in TargetLowering.SimplifySetCC so we must wait until after legalization before attempting this.
The file was modifiedllvm/test/CodeGen/X86/or-with-overflow.ll
The file was modifiedllvm/test/CodeGen/X86/xor-with-overflow.ll
The file was modifiedllvm/test/CodeGen/X86/jump_sign.ll
The file was modifiedllvm/test/CodeGen/X86/and-with-overflow.ll
The file was modifiedllvm/test/CodeGen/X86/2012-08-16-setcc.ll
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
Commit 9c9df057503d72e6e559a63e39cba73881acfa3f by llvm-dev
[InstCombine] Regenerate select-ctlz-to-cttz.ll tests

Correctly test !range metadata
The file was modifiedllvm/test/Transforms/InstCombine/select-ctlz-to-cttz.ll
Commit 28dc50c4b75e096ba9ccee505f0e85ea3be01519 by kristof.beyls
[docs] Add Windows/COFF call info
The file was modifiedllvm/docs/GettingInvolved.rst
Commit 26beecfe470bc5ee9222d124303f5e1386b818ec by Louis Dionne
[libc++] Split auto_ptr out of <memory>

Differential Revision: https://reviews.llvm.org/D100216
The file was addedlibcxx/include/__memory/auto_ptr.h
The file was modifiedlibcxx/include/CMakeLists.txt
The file was modifiedlibcxx/include/memory
Commit 0b439e4cc9dbb5c226121383b84d4f48ab669c55 by Louis Dionne
[libc++] Split std::allocator out of <memory>

Differential Revision: https://reviews.llvm.org/D100216
The file was modifiedlibcxx/include/CMakeLists.txt
The file was modifiedlibcxx/include/memory
The file was addedlibcxx/include/__memory/allocator.h
Commit 6a1ac88fc19a6d1b373ea12247f84e41a07d3a94 by Louis Dionne
[libc++] Split std::get_temporary_buffer out of <memory>

Differential Revision: https://reviews.llvm.org/D100216
The file was modifiedlibcxx/include/CMakeLists.txt
The file was modifiedlibcxx/include/memory
The file was addedlibcxx/include/__memory/temporary_buffer.h
Commit 344d381d9f48f081c69e23a67d7592eb96624e54 by Louis Dionne
[libc++] NFC: Remove duplicate synopsis from <__string>
The file was modifiedlibcxx/include/__string
Commit db51d5968cf24f04b5c63188dccef8b874405d00 by llvmgnsyncbot
[gn build] Port 0b439e4cc9db
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit 07274e3238a96086277641d3fc2231b129dc2343 by llvmgnsyncbot
[gn build] Port 26beecfe470b
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit 9f64e6ce768f2ba083c59ca0b61e107561ac86c6 by llvmgnsyncbot
[gn build] Port 6a1ac88fc19a
The file was modifiedllvm/utils/gn/secondary/libcxx/include/BUILD.gn
Commit 8508b1c133f6dea558fd62f73cf333bdec809026 by Louis Dionne
[libc++] Divorce the std Lit feature from the -std=XXX compiler flag

After this patch, we can use `--param std=c++20` even if the compiler only
supports -std=c++2a. The test suite will handle that for us. The only Lit
feature that isn't fully baked will always be the "in development" one,
since we don't know exactly what year the standard will be ratified in.

This is another take on https://reviews.llvm.org/D99789.

Differential Revision: https://reviews.llvm.org/D100210
The file was modifiedlibcxx/test/std/strings/string.view/string.view.template/contains.string_view.pass.cpp
The file was modifiedlibcxx/docs/TestingLibcxx.rst
The file was modifiedlibcxx/test/std/language.support/support.dynamic/new.delete/new.delete.array/sized_delete_array11.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.contains/contains.ptr.pass.cpp
The file was modifiedlibcxx/test/std/utilities/utility/utility.underlying/to_underlying.verify.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.contains/contains.string_view.pass.cpp
The file was modifiedlibcxx/test/std/utilities/meta/meta.unary/meta.unary.prop/is_scoped_enum.pass.cpp
The file was modifiedlibcxx/test/std/strings/basic.string/string.contains/contains.char.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.template/contains.ptr.pass.cpp
The file was modifiedlibcxx/test/std/language.support/support.dynamic/new.delete/new.delete.single/sized_delete11.pass.cpp
The file was modifiedlibcxx/test/std/strings/string.view/string.view.template/contains.char.pass.cpp
The file was modifiedlibcxx/test/std/utilities/utility/utility.underlying/to_underlying.pass.cpp
The file was modifiedlibcxx/cmake/caches/Generic-cxx20.cmake
The file was modifiedlibcxx/utils/libcxx/test/params.py
Commit f2e4f3eff3c9135d92840016f8ed4540cdd1313b by stephen.tozer
Reapply "[DebugInfo] Use variadic debug values to salvage BinOps and GEP instrs with non-const operands"

The causes of the previous build errors have been fixed in revisions
aa3e78a59fdf3b211be72f1b3221af831665e67d, and
140757bfaaa00110a92d2247a910c847e6e3bcc8

This reverts commit f40976bd01032f4905dde361e709166704581077.
The file was modifiedllvm/include/llvm/IR/Instructions.h
The file was modifiedllvm/include/llvm/IR/Operator.h
The file was modifiedllvm/test/Transforms/InstCombine/debuginfo-sink.ll
The file was modifiedllvm/include/llvm/IR/IntrinsicInst.h
The file was modifiedllvm/lib/IR/Operator.cpp
The file was modifiedllvm/include/llvm/IR/DebugInfoMetadata.h
The file was modifiedllvm/include/llvm/Transforms/Utils/Local.h
The file was addedllvm/test/DebugInfo/salvage-nonconst-binop.ll
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/test/DebugInfo/NVPTX/debug-info.ll
The file was modifiedllvm/lib/IR/DebugInfoMetadata.cpp
The file was modifiedllvm/lib/IR/IntrinsicInst.cpp
The file was addedllvm/test/DebugInfo/salvage-gep.ll
The file was modifiedllvm/lib/Transforms/Utils/Local.cpp
The file was modifiedllvm/lib/IR/Instructions.cpp
The file was modifiedllvm/lib/Transforms/Coroutines/CoroFrame.cpp
The file was modifiedllvm/test/Transforms/Reassociate/undef_intrinsics_when_deleting_instructions.ll