SuccessChanges

Changes from Git (git http://labmaster3.local/git/llvm-project.git)

Summary

  1. [analyzer][CallAndMessage] Add checker options for each bug type (details)
  2. [mlir][gpu] Refactor ConvertGpuLaunchFuncToCudaCalls pass. (details)
  3. [StringRef] Use some trickery to avoid initializing the std::string returned by upper()/lower() (details)
  4. [BitcodeReader] Simplify code. NFCI. (details)
  5. [mlir][rocdl] Exposing buffer load/store intrinsic (details)
  6. GenericDomTree.h - remove unused PointerIntPair.h include. NFC. (details)
  7. [x86] NFC: Fix typo in command line option description (details)
  8. Fix DeferredDiagnosticsEmitter for bug#45987 (details)
  9. [ModuloSchedule] Trivial fix for instruction with more than one destination in modulo peeler. (details)
  10. [SLP][NFC] PR45269 getVectorElementSize() is slow (details)
  11. [llvm][test] Add COM: directives before colon-less non-CHECKs in comments. NFC (details)
  12. [llvm][test] Add missing FileCheck colons. NFC (details)
  13. Revert "[YAMLTraits] Add trait for char" (details)
  14. [ADT] NFC: Fix typos in header comments (details)
Commit 1c8f999e0b59731a4214f76528f83e4196e1fcc3 by dkszelethus
[analyzer][CallAndMessage] Add checker options for each bug type

iAs listed in the summary D77846, we have 5 different categories of bugs we're
checking for in CallAndMessage. I think the documentation placed in the code
explains my thought process behind my decisions quite well.

A non-obvious change I had here is removing the entry for
CallAndMessageUnInitRefArg. In fact, I removed the CheckerNameRef typed field
back in D77845 (it was dead code), so that checker didn't really exist in any
meaningful way anyways.

Differential Revision: https://reviews.llvm.org/D77866
The file was removedclang/test/Analysis/uninit-msg-expr.m
The file was modifiedclang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
The file was modifiedclang/include/clang/StaticAnalyzer/Checkers/Checkers.td
The file was addedclang/test/Analysis/call-and-message.cpp
The file was modifiedclang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
The file was modifiedclang/test/Analysis/uninit-const.c
The file was modifiedclang/test/Analysis/exercise-ps.c
The file was addedclang/test/Analysis/call-and-message.mm
The file was modifiedclang/test/Analysis/PR40625.cpp
The file was addedclang/test/Analysis/call-and-message.c
The file was addedclang/test/Analysis/call-and-message.m
The file was modifiedclang/test/Analysis/uninit-const.cpp
The file was modifiedclang/test/Analysis/analyzer-enabled-checkers.c
The file was modifiedclang/test/Analysis/analyzer-config.c
The file was removedclang/test/Analysis/reference.mm
Commit 2cbbc266ec1e489175ee988794c3880075c13d00 by whchung
[mlir][gpu] Refactor ConvertGpuLaunchFuncToCudaCalls pass.

Due to similar APIs between CUDA and ROCm (HIP),
ConvertGpuLaunchFuncToCudaCalls pass could be used on both platforms with some
refactoring.

In this commit:

- Migrate ConvertLaunchFuncToCudaCalls from GPUToCUDA to GPUCommon, and rename.
- Rename runtime wrapper APIs be platform-neutral.
- Let GPU binary annotation attribute be specifiable as a PassOption.
- Naming changes within the implementation and tests.

Subsequent patches would introduce ROCm-specific tests and runtime wrapper
APIs.

Differential Revision: https://reviews.llvm.org/D80167
The file was removedmlir/lib/Conversion/GPUToCUDA/ConvertLaunchFuncToCudaCalls.cpp
The file was modifiedmlir/lib/Conversion/CMakeLists.txt
The file was modifiedmlir/tools/mlir-cuda-runner/mlir-cuda-runner.cpp
The file was modifiedmlir/include/mlir/Conversion/Passes.td
The file was addedmlir/lib/Conversion/GPUCommon/CMakeLists.txt
The file was addedmlir/include/mlir/Conversion/GPUCommon/GPUCommonPass.h
The file was addedmlir/lib/Conversion/GPUCommon/ConvertLaunchFuncToRuntimeCalls.cpp
The file was modifiedmlir/tools/mlir-cuda-runner/cuda-runtime-wrappers.cpp
The file was removedmlir/test/Conversion/GPUToCUDA/lower-launch-func-to-cuda.mlir
The file was modifiedmlir/lib/Conversion/GPUToCUDA/CMakeLists.txt
The file was modifiedmlir/include/mlir/InitAllPasses.h
The file was addedmlir/test/Conversion/GPUCommon/lower-launch-func-to-gpu-runtime-calls.mlir
The file was modifiedmlir/include/mlir/Conversion/GPUToCUDA/GPUToCUDAPass.h
Commit 8f9d3b937ca7084fcdb9f1b6b4fa93aa1327c628 by benny.kra
[StringRef] Use some trickery to avoid initializing the std::string returned by upper()/lower()
The file was modifiedllvm/lib/Support/StringRef.cpp
Commit c476abfd37c0578224c14fd90522fb825a0316fb by benny.kra
[BitcodeReader] Simplify code. NFCI.
The file was modifiedllvm/lib/Bitcode/Reader/BitcodeReader.cpp
Commit 9c53ac08de7c5bfefab6e6c80127e6774070411c by zhuoryin
[mlir][rocdl] Exposing buffer load/store intrinsic

Summary:
* Updated ROCDLOps tablegen
* Added parsing and printing function for new intrinsic
* Added unit tests

Reviewers: ftynse

Subscribers: mehdi_amini, rriddle, jpienaar, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, stephenneuendorffer, Joonsoo, grosul1, frgossen, Kayjukh, jurahul, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80233
The file was modifiedmlir/lib/Dialect/LLVMIR/IR/ROCDLDialect.cpp
The file was modifiedmlir/test/Target/rocdl.mlir
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
The file was modifiedmlir/lib/Target/LLVMIR/ConvertToROCDLIR.cpp
The file was modifiedmlir/test/Dialect/LLVMIR/rocdl.mlir
Commit 1a2e8b3f71748d9866431fc964becd31cc902bef by llvm-dev
GenericDomTree.h - remove unused PointerIntPair.h include. NFC.
The file was modifiedllvm/include/llvm/Support/GenericDomTree.h
Commit 439c8b2884a098bdbf5313b1a56db90b19e988c7 by jean-michel.gorius
[x86] NFC: Fix typo in command line option description
The file was modifiedllvm/lib/Target/X86/X86DiscriminateMemOps.cpp
Commit 3ef11346f391e6e3da0cfa25f9f7dac22771438e by Yaxun.Liu
Fix DeferredDiagnosticsEmitter for bug#45987

InOMPDeviceContext may be greater than 1. It needs to be clamp to 0 and 1
to be used as index for DoneMap.
The file was modifiedclang/lib/Sema/Sema.cpp
The file was addedclang/test/OpenMP/deferred-diags.cpp
Commit 20c0527af7449d7c22261f9bc88b0ee391bdbad8 by thomasraoux
[ModuloSchedule] Trivial fix for instruction with more than one destination in modulo peeler.

When moving an instruction into a block where it was referenced by a phi when peeling,
refer to the phi's register number and assert that the instruction has it in its destinations.
This way, it also covers instructions with more than one destination.

Patch by Hendrik Greving!

Differential Revision: https://reviews.llvm.org/D80027
The file was modifiedllvm/lib/CodeGen/ModuloSchedule.cpp
Commit df3b95bc0ae0f9de0a54db897ed37ffb6ba44226 by dtemirbulatov
[SLP][NFC] PR45269 getVectorElementSize() is slow

The algorithm inside getVectorElementSize() is almost O(x^2) complexity and
when, for example, we compile MultiSource/Applications/ClamAV/shared_sha256.c
with 1k instructions inside sha256_transform() function that resulted in almost
~800k iterations. The following change improves the algorithm with the map to
a liner complexity.

Differential Revision: https://reviews.llvm.org/D80241
The file was modifiedllvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
Commit 183d6af081899973f00fc24aeafcfc32de732f02 by jroelofs
[llvm][test] Add COM: directives before colon-less non-CHECKs in comments. NFC

Differential Revision: https://reviews.llvm.org/D79963
The file was modifiedllvm/test/tools/llvm-objdump/ELF/dynamic-section-machine-specific.test
The file was modifiedllvm/test/CodeGen/AMDGPU/merge-tbuffer.mir
The file was modifiedllvm/test/CodeGen/Mips/inlineasm-operand-code.ll
The file was modifiedllvm/test/tools/llvm-readobj/ELF/symbol-binding.test
The file was modifiedllvm/test/CodeGen/X86/fp-intrinsics.ll
The file was modifiedllvm/test/CodeGen/Mips/cconv/arguments.ll
The file was modifiedllvm/test/CodeGen/ARM/select-imm.ll
The file was modifiedllvm/test/FileCheck/dump-input-annotations.txt
The file was modifiedllvm/test/CodeGen/X86/avx-cast.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/smrd.ll
The file was modifiedllvm/test/CodeGen/Mips/cconv/return-hard-struct-f128.ll
The file was modifiedllvm/test/MC/Mips/relocation-n64.s
The file was modifiedllvm/test/FileCheck/var-scope.txt
The file was modifiedllvm/test/CodeGen/AMDGPU/fp_to_uint.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/global-constant.ll
The file was modifiedllvm/test/CodeGen/Mips/countleading.ll
The file was modifiedllvm/test/CodeGen/PowerPC/ppc64-crsave.mir
The file was modifiedllvm/test/CodeGen/X86/vector-compare-combines.ll
The file was modifiedllvm/test/CodeGen/Mips/divrem.ll
The file was modifiedllvm/test/MC/RISCV/compressed-relocations.s
The file was modifiedllvm/test/CodeGen/X86/vec_shift6.ll
The file was modifiedllvm/test/tools/llvm-readobj/ELF/section-types.test
The file was modifiedllvm/test/CodeGen/ARM/float-helpers.s
The file was modifiedllvm/test/CodeGen/ARM/struct_byval_arm_t1_t2.ll
The file was modifiedllvm/test/CodeGen/Mips/mips64muldiv.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/unhandled-loop-condition-assertion.ll
The file was modifiedllvm/test/MC/RISCV/rv64b-aliases-valid.s
The file was modifiedllvm/test/MC/AsmParser/expr-shr.s
The file was modifiedllvm/test/MC/Mips/relocation.s
The file was modifiedllvm/test/CodeGen/Mips/cconv/arguments-hard-float.ll
The file was modifiedllvm/test/DebugInfo/COFF/vframe-fpo.ll
The file was modifiedllvm/test/DebugInfo/X86/debug-info-static-member.ll
The file was modifiedllvm/test/Transforms/LoopFusion/cannot_fuse.ll
The file was modifiedllvm/test/CodeGen/Mips/cconv/return-hard-fp128.ll
The file was modifiedllvm/test/tools/llvm-readobj/ELF/RISCV/section-types.test
The file was modifiedllvm/test/CodeGen/X86/splat-for-size.ll
The file was modifiedllvm/test/CodeGen/X86/sse-scalar-fp-arith.ll
The file was modifiedllvm/test/Transforms/InstCombine/double-float-shrink-2.ll
The file was modifiedllvm/test/CodeGen/AMDGPU/GlobalISel/smrd.ll
The file was modifiedllvm/test/CodeGen/Mips/cconv/arguments-varargs.ll
The file was modifiedllvm/test/CodeGen/Mips/cconv/arguments-hard-float-varargs.ll
The file was modifiedllvm/test/CodeGen/Mips/cconv/arguments-float.ll
The file was modifiedllvm/test/CodeGen/Mips/dynamic-stack-realignment.ll
The file was modifiedllvm/test/MC/RISCV/rvi-aliases-valid.s
The file was modifiedllvm/test/CodeGen/ARM/build-attributes.ll
The file was modifiedllvm/test/CodeGen/X86/vector-narrow-binop.ll
The file was modifiedllvm/test/MC/RISCV/rv32b-aliases-valid.s
The file was modifiedllvm/test/MC/RISCV/relocations.s
The file was modifiedllvm/test/MC/RISCV/rva-aliases-valid.s
Commit 5fb979dd0697c1a88131bc8709a0928ef4990195 by jroelofs
[llvm][test] Add missing FileCheck colons. NFC
The file was modifiedllvm/test/CodeGen/AArch64/sve-intrinsics-matmul-fp64.ll
The file was modifiedllvm/test/CodeGen/AArch64/sve-intrinsics-matmul-fp32.ll
The file was modifiedllvm/test/CodeGen/AArch64/sve-intrinsics-matmul-int8.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/tail-folding-counting-down.ll
Commit c4169a3efebd1bf5710b2c280857686942dc254a by ro
Revert "[YAMLTraits] Add trait for char"

This reverts commit fab08bf4899e40d02d8bf394a63499ac679ac61c.  It has left
the Solaris buildbots broken for a week and a half as reported
in https://reviews.llvm.org/D79745.
The file was modifiedllvm/unittests/Support/YAMLIOTest.cpp
The file was modifiedllvm/include/llvm/Support/YAMLTraits.h
The file was modifiedllvm/lib/Support/YAMLTraits.cpp
Commit cb2a8be8842a39ed9b657fa9928733f8d70079f0 by jean-michel.gorius
[ADT] NFC: Fix typos in header comments
The file was modifiedllvm/include/llvm/ADT/ImmutableSet.h
The file was modifiedllvm/include/llvm/ADT/PointerUnion.h
The file was modifiedllvm/include/llvm/ADT/fallible_iterator.h
The file was modifiedllvm/include/llvm/ADT/DeltaAlgorithm.h
The file was modifiedllvm/include/llvm/ADT/DenseMap.h
The file was modifiedllvm/include/llvm/ADT/SmallVector.h
The file was modifiedllvm/include/llvm/ADT/Waymarking.h
The file was modifiedllvm/include/llvm/ADT/IntervalMap.h
The file was modifiedllvm/include/llvm/ADT/SmallPtrSet.h
The file was modifiedllvm/include/llvm/ADT/SparseSet.h
The file was modifiedllvm/include/llvm/ADT/APFloat.h
The file was modifiedllvm/include/llvm/ADT/DAGDeltaAlgorithm.h
The file was modifiedllvm/include/llvm/ADT/FoldingSet.h
The file was modifiedllvm/include/llvm/ADT/FloatingPointMode.h
The file was modifiedllvm/include/llvm/ADT/PointerSumType.h