Changes

Summary

  1. [NFC][InstCombine] Fix inconsistent comments (details)
  2. [llvm-profgen] Fix a bug of assertion (details)
  3. [llvm-profgen] Fix an out-of-range error during unwinding (details)
  4. [llvm-profgen] Fix a dangling vector reference in CS line number based generator (details)
  5. [RISCV] Update mir tests. (details)
  6. [NFC] Remove redundant setOperationAction. (details)
  7. [MLIR] [Python] Make Attribute and Type hashable (details)
  8. [X86][FP16] Change the order of the operands in complex FMA intrinsics to allow swap between the mul operands. (details)
  9. [demangle] Support for ISO/IEC TS 18661 binary floating point type (details)
  10. [AArch64][SVE][InstCombine] Eliminate redundant chains of tuple get/set (details)
  11. [OpenMP][NFC] Clang format OMPIRBuilder (details)
  12. [OpenMP][NFC] Improve debug output (details)
  13. [OpenMP][NFC] Precommit test that exposes a bug in our optnone handling (details)
  14. [OpenMP][NFC] Rerun the test check update script on all OpenMP-Opt tests (details)
  15. [OpenMP][NFC] Repair test that contained nested kernels (details)
  16. [OpenMP][FIX] Be more deliberate about invalidating the AAKernelInfo state (details)
  17. [libc++][spaceship] Implement std::pair::operator<=> (details)
  18. [AMDGPU] Fix gcc warnings about unused variables [NFC] (details)
  19. [mlir] Fix build on Windows on Arm (details)
Commit 10a5632550abb318c8012a80ae753f606263712a by gusrb406
[NFC][InstCombine] Fix inconsistent comments
The file was modifiedllvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
Commit c2be2d3284d2b0d76eacbe3e3999fb0843ef65a6 by wlei
[llvm-profgen] Fix a bug of assertion

The assertion should work on the entire context.

Reviewed By: hoy, wenlei

Differential Revision: https://reviews.llvm.org/D110268
The file was modifiedllvm/tools/llvm-profgen/ProfiledBinary.cpp
Commit 686cc0006793b06fd15d08cc0188b071f49ae990 by wlei
[llvm-profgen] Fix an out-of-range error during unwinding

It happened that the LBR entry target can be the first address of text section which causes an out-of-range crash. So here add a boundary check.

Reviewed By: hoy, wenlei

Differential Revision: https://reviews.llvm.org/D110271
The file was modifiedllvm/tools/llvm-profgen/PerfReader.cpp
Commit 1ed69bb86eb188ab23f62c266d2d23846588e768 by wlei
[llvm-profgen] Fix a dangling vector reference in CS line number based generator

It seems we missed one spot to persist `SampleContextFrameVector` into the global table (CSProfileGenerator::populateFunctionBoundarySamples:340) which causes a crash.

This change tried to fix it in a centralized way i. e. where we generate the `FunctionSamples`.

Reviewed By: hoy, wenlei

Differential Revision: https://reviews.llvm.org/D110275
The file was modifiedllvm/tools/llvm-profgen/ProfileGenerator.cpp
The file was modifiedllvm/tools/llvm-profgen/ProfileGenerator.h
Commit ebc5feb4ed6b1f59a000669030f9639bf1763403 by kai.wang
[RISCV] Update mir tests.
The file was modifiedllvm/test/CodeGen/RISCV/rvv/commuted-op-indices-regression.mir
The file was modifiedllvm/test/CodeGen/RISCV/rvv/zvlsseg-copy.mir
The file was modifiedllvm/test/CodeGen/RISCV/rvv/zvlsseg-spill.mir
The file was modifiedllvm/test/CodeGen/RISCV/rvv/frameindex-addr.ll
The file was modifiedllvm/test/CodeGen/RISCV/rvv/mask-reg-alloc.mir
The file was modifiedllvm/test/CodeGen/RISCV/rvv/reg-coalescing.mir
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsetvli-insert.mir
The file was modifiedllvm/test/CodeGen/RISCV/rvv/emergency-slot.mir
The file was modifiedllvm/test/CodeGen/RISCV/rvv/get-vlen-debugloc.mir
The file was modifiedllvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir
The file was modifiedllvm/test/CodeGen/RISCV/rvv/addi-scalable-offset.mir
The file was modifiedllvm/test/CodeGen/RISCV/rvv/tail-agnostic-impdef-copy.mir
Commit 13207a21a64d3a0f1537cc99efe91d757d51f46c by freddy.ye
[NFC] Remove redundant setOperationAction.

[FROUND,FROUNDEVEN][f32, f64, f128] are set Expand twice.

Differential Revision: https://reviews.llvm.org/D110302
The file was modifiedllvm/lib/CodeGen/TargetLoweringBase.cpp
Commit 47cc166bc023b497bdffe0964d80f15eaee8b7da by john.demme
[MLIR] [Python] Make Attribute and Type hashable

Enables putting types and attributes in sets and in dicts as keys.

Reviewed By: stellaraccident

Differential Revision: https://reviews.llvm.org/D110301
The file was modifiedmlir/test/python/ir/builtin_types.py
The file was modifiedmlir/test/python/ir/attributes.py
The file was modifiedmlir/lib/Bindings/Python/IRCore.cpp
Commit ebec077e07f5d35a870f075fb665c006978d49ea by pengfei.wang
[X86][FP16] Change the order of the operands in complex FMA intrinsics to allow swap between the mul operands.

Reviewed By: craig.topper

Differential Revision: https://reviews.llvm.org/D109658
The file was modifiedllvm/lib/Target/X86/X86ISelLowering.cpp
The file was modifiedllvm/test/CodeGen/X86/avx512fp16-combine-vfmulc-fadd.ll
The file was modifiedllvm/test/CodeGen/X86/avx512cfmulsh-instrinsics.ll
The file was modifiedclang/lib/Headers/avx512vlfp16intrin.h
The file was modifiedllvm/lib/Target/X86/X86InstrAVX512.td
The file was modifiedllvm/lib/Target/X86/X86InstrFragmentsSIMD.td
The file was modifiedllvm/test/CodeGen/X86/stack-folding-fp-avx512fp16.ll
The file was modifiedllvm/test/CodeGen/X86/stack-folding-fp-avx512fp16vl.ll
The file was modifiedllvm/test/CodeGen/X86/avx512fp16-combine-xor-vfmulc-fadd.ll
The file was modifiedllvm/test/CodeGen/X86/avx512cfma-intrinsics.ll
The file was modifiedllvm/test/CodeGen/X86/avx512cfmul-intrinsics.ll
The file was modifiedclang/lib/Headers/avx512fp16intrin.h
The file was modifiedllvm/lib/Target/X86/X86InstrInfo.cpp
The file was modifiedllvm/lib/Target/X86/X86IntrinsicsInfo.h
Commit 1873f3be78a5255df8c36c195f4c778f9f47fc5c by pengfei.wang
[demangle] Support for ISO/IEC TS 18661 binary floating point type

Reviewed By: #libc_abi, ldionne

Differential Revision: https://reviews.llvm.org/D105278
The file was modifiedlibcxxabi/test/test_demangle.pass.cpp
The file was modifiedlibcxxabi/src/demangle/ItaniumDemangle.h
The file was modifiedllvm/include/llvm/Demangle/ItaniumDemangle.h
Commit 3b12282b0ed738f138229993505fbba23cd534a2 by mnadeem
[AArch64][SVE][InstCombine] Eliminate redundant chains of tuple get/set

Differential Revision: https://reviews.llvm.org/D109667

Change-Id: I06a3c28e3658ecda109a3a1b73265828274ab2ea
The file was addedllvm/test/Transforms/InstCombine/AArch64/sve-intrinsic-opts-tuple-get.ll
The file was modifiedllvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
Commit 94c177e6b29e7ea1211d1650ca6fd98c87cd2b05 by johannes
[OpenMP][NFC] Clang format OMPIRBuilder

These files should be kept clang-formatted but diverge sometimes.
The file was modifiedllvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
Commit 0a16c560102212f5b317e646486b6826847334ca by johannes
[OpenMP][NFC] Improve debug output
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp
Commit 5e835ecb6d43eade0cbd0a91df7c22412481d264 by johannes
[OpenMP][NFC] Precommit test that exposes a bug in our optnone handling
The file was addedllvm/test/Transforms/OpenMP/get_hardware_num_threads_in_block_fold_optnone.ll
Commit 92280ae3d83d4c1436167fa05fc8292628062250 by johannes
[OpenMP][NFC] Rerun the test check update script on all OpenMP-Opt tests
The file was modifiedllvm/test/Transforms/OpenMP/deduplication.ll
The file was modifiedllvm/test/Transforms/OpenMP/dead_use.ll
The file was modifiedllvm/test/Transforms/OpenMP/icv_tracking.ll
Commit 57822c3f4f36b81635da98707cf149747a754a6b by johannes
[OpenMP][NFC] Repair test that contained nested kernels

The benchmark contained (partially) nested kernels, something we do not
generate nor support.
The file was modifiedllvm/test/Transforms/OpenMP/replace_globalization.ll
Commit c6457dcae88043cbd07dedc61b602b66b26f1ddf by johannes
[OpenMP][FIX] Be more deliberate about invalidating the AAKernelInfo state

This patch fixes a problem when the AAKernelInfo state was invalidated,
e.g., due to `optnone` for a kernel, but not all parts indicated the
invalidation properly. We further eliminate most full state
invalidations as they should never be necessary.

Differential Revision: https://reviews.llvm.org/D109468
The file was modifiedllvm/lib/Transforms/IPO/OpenMPOpt.cpp
The file was modifiedllvm/test/Transforms/OpenMP/get_hardware_num_threads_in_block_fold_optnone.ll
Commit f4abdb0c074bd7b7b89d9828d449078d16d0e1c3 by k
[libc++][spaceship] Implement std::pair::operator<=>

Implements parts of P1614, including synth-three-way and three way comparison for std::pair.

Reviewed By: #libc, Quuxplusone, Mordante

Differential Revision: https://reviews.llvm.org/D107721
The file was modifiedlibcxx/include/CMakeLists.txt
The file was addedlibcxx/test/std/utilities/utility/pairs/pairs.spec/three_way_comparison.pass.cpp
The file was modifiedlibcxx/include/__utility/pair.h
The file was modifiedlibcxx/docs/Status/SpaceshipProjects.csv
The file was addedlibcxx/test/libcxx/diagnostics/detail.headers/compare/synth_three_way.module.verify.cpp
The file was addedlibcxx/include/__compare/synth_three_way.h
The file was modifiedlibcxx/include/utility
The file was modifiedlibcxx/include/module.modulemap
The file was addedlibcxx/test/libcxx/library/description/conventions/expos.only.func/synth_three_way.pass.cpp
Commit e7b169a8ae99b0cef1e5262f18b35e0abcc69ef8 by mikael.holmen
[AMDGPU] Fix gcc warnings about unused variables [NFC]
The file was modifiedllvm/lib/Target/AMDGPU/SIFoldOperands.cpp
Commit b7050c791d8951c0a099bf162f9ab3a696611b7d by diana.picus
[mlir] Fix build on Windows on Arm

clang-cl errors out while handling the templated version of tgfmt. This
patch works around the issue by explicitly choosing the non-templated
version of tgfmt, which takes an ArrayRef<std::string>.

More details in this thread:
https://lists.llvm.org/pipermail/cfe-dev/2021-September/068936.html

Thanks @Mehdi Amini for suggesting the fix :)

Differential Revision: https://reviews.llvm.org/D110223
The file was modifiedmlir/tools/mlir-tblgen/RewriterGen.cpp