SuccessChanges

Summary

  1. Add Twine support for std::string_view. (details)
  2. Fix LIT test failure encountered on AIX (details)
  3. Remove white space in llvm-objdump/XCOFF/section-headers.test (details)
  4. [mlir] Fix body-less async.execute printing (details)
  5. [PowerPC] Make sure the first probe is full size or is the last probe when stack is realigned (details)
  6. [CMake] Don't use libc++ by default on Windows yet (details)
  7. [mlir][linalg] Prepare fusion on tensors for scalar operands. (details)
  8. [Docs] Fix incorrect return type for example code (details)
  9. [NFC] Reformat MachineValueType (details)
  10. Fix the 4203-Buildbot failure in LLVM Buildbot on llvm-clang-win-x-aarch64 (details)
  11. Prevent generation of dependency on _cxa_guard for static initialization (details)
  12. [MLIR] Make DictionaryAttr::getAs take name as && reference (details)
  13. [llvm] Sync DebugInfo.h with DebugInfoFlags.def (details)
  14. [RISCV] Support CONCAT_VECTORS on scalable masks (details)
  15. [ScalarEvolution] Add test for preserving add overflow flags. (details)
  16. [flang] Define the API for CPU_TIME (details)
  17. Revert "[llvm] Sync DebugInfo.h with DebugInfoFlags.def" (details)
  18. Revert "[lldb] Set return status to failed when adding a command error" (details)
  19. [LoopBoundSplit] Ignore phi node which is not scevable (details)
  20. [ValueTypes] Add missing enum names for MVTs (details)
  21. [compiler-rt] Mark symbolize_stack_fp test unsupported on Arm Thumb (details)
  22. [RISCV] Fix failing RVV MC tests (details)
  23. [mlir][ArmSVE] Add basic mask generation operations (details)
  24. [LTO] Support new PM in ThinLTOCodeGenerator. (details)
Commit e11b5b87bebf2aad41ad769015a21567198291b9 by saugustine
Add Twine support for std::string_view.

With Twine now ubiquitous after rG92a79dbe91413f685ab19295fc7a6297dbd6c824,
it needs support for string_view when building clang with newer C++ standards.

This is similar to how StringRef is handled.

Differential Revision: https://reviews.llvm.org/D103935
The file was modifiedllvm/include/llvm/ADT/Twine.h
The file was modifiedllvm/lib/Support/Twine.cpp
The file was modifiedllvm/include/llvm/Support/raw_ostream.h
The file was modifiedllvm/unittests/ADT/TwineTest.cpp
Commit e48880078a49faeacb28fd5478948fd674d7350b by cebowleratibm
Fix LIT test failure encountered on AIX

```
fatal error: error in backend: getLangStandardForKind() on unspecified kind
```

Clang :: Modules/preprocess-module.cpp
Clang :: Modules/no-module-map.cpp
Clang :: Modules/preprocess-build-diamond.m
Clang :: Modules/preprocess-decluse.cpp
Clang :: Modules/string_names.cpp

Fix to prior commit f38eff777e46f42884d82815d0b39766520ac2bf, D103707
The file was modifiedclang/lib/Basic/Targets/OSTargets.h
Commit 955bc5950b454613e6367b9c9ae2b6e2e78fdd40 by esme.yi
Remove white space in llvm-objdump/XCOFF/section-headers.test
The file was modifiedllvm/test/tools/llvm-objdump/XCOFF/section-headers.test
Commit 674dd9d08ec085a82f2a4b3236a890644b4d0bc2 by csigg
[mlir] Fix body-less async.execute printing

Reviewed By: ezhulenev

Differential Revision: https://reviews.llvm.org/D103686
The file was modifiedmlir/lib/Dialect/Async/IR/Async.cpp
Commit bf58600badb1138a501ad81b07298207a7a64b2a by lkail
[PowerPC] Make sure the first probe is full size or is the last probe when stack is realigned

When `-fstack-clash-protection` is enabled and stack has to be realigned, some parts of redzone is written prior the probe, so probe might overwrite content already written in redzone. To avoid it, we have to make sure the first probe is at full probe size or is the last probe so that we can skip redzone.

It also fixes violation of ABI under PPC where `r1` isn't updated atomically.

This fixes https://bugs.llvm.org/show_bug.cgi?id=49903.

Reviewed By: jsji

Differential Revision: https://reviews.llvm.org/D100290
The file was modifiedllvm/test/CodeGen/PowerPC/stack-clash-prologue-nounwind.ll
The file was modifiedllvm/test/CodeGen/PowerPC/stack-clash-prologue.ll
The file was modifiedllvm/test/CodeGen/PowerPC/pr46759.ll
The file was modifiedllvm/lib/Target/PowerPC/PPCFrameLowering.cpp
Commit b413e44200e715c254fa9a41f6a86f8761c9b362 by phosek
[CMake] Don't use libc++ by default on Windows yet

libc++ has issues when used with -fno-exceptions and vcruntime,
don't use it on Windows by default until we address those issues.

Differential Revision: https://reviews.llvm.org/D103941
The file was modifiedclang/cmake/caches/Fuchsia.cmake
The file was modifiedclang/cmake/caches/Fuchsia-stage2.cmake
Commit 9c27fa3821dc5c04f5710e64411815893de160ce by gysit
[mlir][linalg] Prepare fusion on tensors for scalar operands.

Adapt fusion on tensors to support structured ops taking scalar operands.

Differential Revision: https://reviews.llvm.org/D103889
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/FusionOnTensors.cpp
Commit 9751af22c49926840e043fa4c386ba2bfafa2053 by jim
[Docs] Fix incorrect return type for example code
The file was modifiedllvm/docs/Vectorizers.rst
Commit 20f571dbff530f671de6922fd92af3e301a126c2 by gchatelet
[NFC] Reformat MachineValueType

This is a follow up patch based on https://reviews.llvm.org/D103251#2804016.

Differential Revision: https://reviews.llvm.org/D103893
The file was modifiedllvm/include/llvm/Support/MachineValueType.h
Commit 699231ab3c7dd8f028d868b103481fa901f3c721 by esme.yi
    Fix the 4203-Buildbot failure in LLVM Buildbot on llvm-clang-win-x-aarch64

    Failure in llvm/test/tools/llvm-objdump/XCOFF/section-headers.test:

    SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes
                 in position 24-25: truncated \xXX escape
The file was modifiedllvm/test/tools/llvm-objdump/XCOFF/section-headers.test
Commit 414482751452e54710f16bae58458c66298aaf69 by sguelton
Prevent generation of dependency on _cxa_guard for static initialization

This fixes an issue introduced by https://reviews.llvm.org/D70662

Function-scope static initialization are guarded in C++, so we should probably
not use it because it introduces a dependency on __cxa_guard* symbols.
In the context of clang, libasan is linked statically, and it currently needs to
the odd situation where compiling C code with clang and asan requires -lstdc++

Differential Revision: https://reviews.llvm.org/D102475
The file was modifiedcompiler-rt/lib/sanitizer_common/sanitizer_posix_libcdep.cpp
Commit 41135a4367a75cf02d9873be7bd904456ce77329 by fabian
[MLIR] Make DictionaryAttr::getAs take name as && reference

As a follow-up to the discussion in https://reviews.llvm.org/D103822,
make the templated `DictionaryAttr::getAs` take the name by `&&`
reference and properly forward the argument to the underlying `get`.
The file was modifiedmlir/include/mlir/IR/BuiltinAttributes.td
Commit 093750dd0be6b0729f8e817766c3d5849545e10c by jan.kratochvil
[llvm] Sync DebugInfo.h with DebugInfoFlags.def

Command to see the differences:
  diff -u <(sed -n 's#^HANDLE_DI_FLAG *([^,]*, *\([^()]*\)) *\(//.*\)\?$#\1#p' <llvm/include/llvm/IR/DebugInfoFlags.def | grep -vw Largest) <(sed -n 's#^ *LLVMDIFlag\([^ ]*\) *= (\?[0-9].*$#\1#p' <llvm/include/llvm-c/DebugInfo.h)

OCaml binding is more seriously out of sync but I have not tried to sync it.

Reviewed By: aprantl

Differential Revision: https://reviews.llvm.org/D103910
The file was modifiedllvm/include/llvm-c/DebugInfo.h
Commit e8f1f891031385a34f0548803f3bc76ce50544c1 by fraser
[RISCV] Support CONCAT_VECTORS on scalable masks

This patch is a simple fix which registers CONCAT_VECTORS as
custom-lowered for scalable mask vectors. This follows the pattern of
all other scalable-vector types, as the default expansion of
CONCAT_VECTORS cannot handle scalable types, and even if it did it'd go
through the stack and generate worse code.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D103896
The file was modifiedllvm/test/CodeGen/RISCV/rvv/setcc-fp-rv32.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/setcc-integer-rv32.ll
The file was modifiedllvm/lib/Target/RISCV/RISCVISelLowering.cpp
The file was modifiedllvm/test/CodeGen/RISCV/rvv/setcc-fp-rv64.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/setcc-integer-rv64.ll
Commit 5c5ae6a661ce01fb4e5f3a645de188028e8c981e by flo
[ScalarEvolution] Add test for preserving add overflow flags.
The file was modifiedllvm/test/Analysis/ScalarEvolution/no-wrap-symbolic-becount.ll
Commit 35b0ddab0ee8064d23c6f390e30da14e756b5ba6 by diana.picus
[flang] Define the API for CPU_TIME

CPU_TIME takes a single real scalar INTENT(OUT) argument. We can
therefore return a double and let lowering handle casting that to the
precision used for the default real kind.

Differential Revision: https://reviews.llvm.org/D103805
The file was addedflang/runtime/time-intrinsic.h
Commit 09ac4eca665011f056779af6eafdff51f30dc870 by jan.kratochvil
Revert "[llvm] Sync DebugInfo.h with DebugInfoFlags.def"

This reverts commit 093750dd0be6b0729f8e817766c3d5849545e10c.

It broke buildbots, goint to investigate it more.
The file was modifiedllvm/include/llvm-c/DebugInfo.h
Commit db93e4e70aa453e5ba04ba0d9e01f581882b6c81 by david.spickett
Revert "[lldb] Set return status to failed when adding a command error"

This reverts commit e05b03cf4f45ac5ee63c59a3464e7d484884645c.

While I investigate a register test failure:
http://green.lab.llvm.org/green/blue/organizations/jenkins/lldb-cmake/detail/lldb-cmake/32693/pipeline/
The file was modifiedlldb/source/Interpreter/CommandReturnObject.cpp
The file was removedlldb/test/Shell/Commands/command-backtrace-parser-2.test
The file was addedlldb/test/Shell/Commands/command-backtrace.test
The file was modifiedlldb/test/API/commands/register/register/register_command/TestRegisters.py
The file was removedlldb/test/Shell/Commands/command-backtrace-parser-1.test
Commit 8eee02020b92d986b6d089dbe5f1e312ecb4575c by jingu.kang
[LoopBoundSplit] Ignore phi node which is not scevable

There was a bug in LoopBoundSplit. The pass should ignore phi node which is not
scevable.

Differential Revision: https://reviews.llvm.org/D103913
The file was modifiedllvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
The file was modifiedllvm/test/Transforms/LoopBoundSplit/loop-bound-split.ll
Commit 80d556441adca45c0ad82c9463ed77bc25399f2b by fraser
[ValueTypes] Add missing enum names for MVTs

These types are (presumably) never used in the generated TableGen files.
The `default` switch case silences any compiler warnings for these
missing types so it's easy to miss.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D103883
The file was modifiedllvm/utils/TableGen/CodeGenTarget.cpp
Commit 11ad9e31eb3b11d8996c31084c617245b5af1b87 by david.spickett
[compiler-rt] Mark symbolize_stack_fp test unsupported on Arm Thumb

The new test `symbolize_stack_fp.cpp` added in
https://reviews.llvm.org/D102046 assumes that
we can fall back to the fast unwinder.

This is not the case for Thumb and the test is currently
failing on our v7 thumb bot:
https://lab.llvm.org/buildbot/#/builders/26/builds/2096

Skip the test if we're building for a Thumb target.

Reviewed By: MaskRay

Differential Revision: https://reviews.llvm.org/D103512
The file was modifiedcompiler-rt/test/sanitizer_common/lit.common.cfg.py
The file was modifiedcompiler-rt/test/sanitizer_common/lit.site.cfg.py.in
The file was modifiedcompiler-rt/test/sanitizer_common/TestCases/Linux/symbolize_stack_fp.cpp
Commit 292f4197249bec40143c88fe3fea50d038676889 by fraser
[RISCV] Fix failing RVV MC tests

I believe these failures were introduced by D103790's changes to the
VType formatting found in vsetvli/vsetivli instructions.
The file was modifiedllvm/test/MC/RISCV/rvv/vsetvl.s
The file was modifiedllvm/test/MC/RISCV/rvv/snippet.s
Commit f880bd261f4e13d4d58a75886a2942f05783c7de by javier.setoain
[mlir][ArmSVE] Add basic mask generation operations

These `arm_sve.cmp` functions are needed to generate scalable vector
masks as long as scalable vectors are not part of the standard types.
Once in standard, these can be removed and `std.cmp` can be used
instead.

Differential Revision: https://reviews.llvm.org/D103473
The file was modifiedmlir/lib/Dialect/ArmSVE/Transforms/LegalizeForLLVMExport.cpp
The file was modifiedmlir/test/Dialect/ArmSVE/roundtrip.mlir
The file was modifiedmlir/test/Target/LLVMIR/arm-sve.mlir
The file was modifiedmlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
The file was modifiedmlir/lib/Dialect/ArmSVE/IR/ArmSVEDialect.cpp
The file was modifiedmlir/lib/Dialect/ArmSVE/IR/CMakeLists.txt
The file was modifiedmlir/include/mlir/Dialect/ArmSVE/ArmSVE.td
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/Ops.td
The file was modifiedmlir/include/mlir/Dialect/ArmSVE/ArmSVEDialect.h
The file was modifiedmlir/include/mlir/Dialect/StandardOps/IR/StandardOpsBase.td
The file was modifiedmlir/test/Dialect/ArmSVE/legalize-for-llvm.mlir
Commit e978f6bc97064603a5665a6797d6e613a231479a by flo
[LTO] Support new PM in ThinLTOCodeGenerator.

This patch adds initial support for using the new pass manager when
doing ThinLTO via libLTO.

Reviewed By: steven_wu

Differential Revision: https://reviews.llvm.org/D102627
The file was modifiedllvm/include/llvm/LTO/legacy/ThinLTOCodeGenerator.h
The file was modifiedllvm/test/ThinLTO/X86/diagnostic-handler-remarks-with-hotness.ll
The file was modifiedllvm/test/ThinLTO/X86/diagnostic-handler-remarks.ll
The file was modifiedllvm/lib/LTO/ThinLTOCodeGenerator.cpp
The file was modifiedllvm/tools/llvm-lto/llvm-lto.cpp
The file was modifiedllvm/test/ThinLTO/X86/newpm-basic.ll