SuccessChanges

Summary

  1. clang: Add byval on x86_intrcc parameter 0 (details)
  2. OpaquePtr: Require byval on x86_intrcc parameter 0 (details)
  3. [mlir][ArmSVE][RFC] Add an ArmSVE dialect (details)
  4. [DDG] Data Dependence Graph - DOT printer (details)
  5. Speculative fix for build bot failures (details)
  6. Revert "[mlir] Remove methods from mlir::OpState that just forward to mlir::Operation." (details)
Commit ef4da3c2ba8a812a695361d786e3de8a8b2cd482 by Matthew.Arsenault
clang: Add byval on x86_intrcc parameter 0

This will allow removing the special case treatment of the parameter
and avoid depending on the pointer's element type.
The file was modifiedclang/lib/CodeGen/TargetInfo.cpp
The file was modifiedclang/test/CodeGen/attr-x86-interrupt.c
The file was modifiedclang/test/CodeGenCXX/attr-x86-interrupt.cpp
Commit 2e0e03c6a089da39039ec3f464f7cee5df86646b by Matthew.Arsenault
OpaquePtr: Require byval on x86_intrcc parameter 0

Currently the backend special cases x86_intrcc and treats the first
parameter as byval. Make the IR require byval for this parameter to
remove this special case, and avoid the dependence on the pointee
element type.

Fixes bug 46672.

I'm not sure the IR is enforcing all the calling convention
constraints. clang seems to ignore the attribute for empty parameter
lists, but the IR tolerates it.
The file was addedllvm/test/Bitcode/Inputs/x86_intrcc_upgrade.bc
The file was modifiedllvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
The file was modifiedllvm/test/Bitcode/compatibility-6.0.ll
The file was addedllvm/test/Assembler/x86_intrcc.ll
The file was modifiedllvm/test/CodeGen/X86/x86-interrupt_cld.ll
The file was modifiedllvm/test/CodeGen/X86/x86-32-intrcc.ll
The file was modifiedllvm/test/Bitcode/compatibility.ll
The file was modifiedllvm/test/CodeGen/X86/x86-no_caller_saved_registers.ll
The file was modifiedllvm/test/CodeGen/X86/x86-interrupt_cc.ll
The file was addedllvm/test/Bitcode/x86_intr-upgrade.test
The file was modifiedllvm/test/CodeGen/X86/x86-64-intrcc.ll
The file was modifiedllvm/test/CodeGen/X86/x86-64-intrcc-nosse.ll
The file was addedllvm/test/Verifier/x86_intr.ll
The file was modifiedllvm/lib/IR/Verifier.cpp
The file was modifiedllvm/lib/IR/AutoUpgrade.cpp
The file was modifiedllvm/test/CodeGen/X86/x86-interrupt_vzeroupper.ll
Commit aece4e2793ccf0d63d5e677a0ace83752b30979a by joker.eph
[mlir][ArmSVE][RFC] Add an ArmSVE dialect

This revision starts an Arm-specific ArmSVE dialect discussed in the discourse RFC thread:

https://llvm.discourse.group/t/rfc-vector-dialects-neon-and-sve/2284

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D92172
The file was modifiedmlir/include/mlir/Dialect/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/VectorToLLVM/CMakeLists.txt
The file was addedmlir/test/Conversion/ArmSVEToLLVM/convert-to-llvm.mlir
The file was modifiedmlir/include/mlir/Conversion/Passes.td
The file was modifiedmlir/include/mlir/Conversion/VectorToLLVM/ConvertVectorToLLVM.h
The file was addedmlir/include/mlir/Dialect/LLVMIR/LLVMArmSVE.td
The file was addedmlir/include/mlir/Dialect/ArmSVE/ArmSVEDialect.h
The file was modifiedmlir/include/mlir/Dialect/LLVMIR/CMakeLists.txt
The file was addedmlir/test/Target/arm-sve.mlir
The file was addedmlir/include/mlir/Dialect/ArmSVE/CMakeLists.txt
The file was addedmlir/lib/Conversion/ArmSVEToLLVM/ArmSVEToLLVM.cpp
The file was modifiedmlir/lib/Dialect/LLVMIR/CMakeLists.txt
The file was modifiedmlir/include/mlir/InitAllDialects.h
The file was modifiedmlir/lib/Conversion/PassDetail.h
The file was addedmlir/include/mlir/Dialect/LLVMIR/LLVMArmSVEDialect.h
The file was addedmlir/lib/Dialect/ArmSVE/IR/ArmSVEDialect.cpp
The file was modifiedmlir/lib/Target/CMakeLists.txt
The file was addedmlir/lib/Dialect/ArmSVE/CMakeLists.txt
The file was addedmlir/test/Dialect/ArmSVE/roundtrip.mlir
The file was addedmlir/include/mlir/Dialect/ArmSVE/ArmSVE.td
The file was modifiedmlir/include/mlir/InitAllTranslations.h
The file was addedmlir/lib/Dialect/LLVMIR/IR/LLVMArmSVEDialect.cpp
The file was addedmlir/lib/Target/LLVMIR/LLVMArmSVEIntr.cpp
The file was modifiedmlir/lib/Conversion/CMakeLists.txt
The file was modifiedmlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVMPass.cpp
The file was modifiedmlir/lib/Dialect/CMakeLists.txt
The file was addedmlir/lib/Conversion/ArmSVEToLLVM/CMakeLists.txt
The file was addedmlir/include/mlir/Conversion/ArmSVEToLLVM/ArmSVEToLLVM.h
Commit fd4a10732c8bd646ccc621c0a9af512be252f33a by bmahjour
[DDG] Data Dependence Graph - DOT printer

This patch implements a DDG printer pass that generates a graph in
the DOT description language, providing a more visually appealing
representation of the DDG. Similar to the CFG DOT printer, this
functionality is provided under an option called -dot-ddg and can
be generated in a less verbose mode under -dot-ddg-only option.

Differential Revision: https://reviews.llvm.org/D90159
The file was modifiedllvm/lib/Analysis/CallPrinter.cpp
The file was addedllvm/include/llvm/Analysis/DDGPrinter.h
The file was modifiedllvm/include/llvm/Analysis/CFGPrinter.h
The file was modifiedllvm/include/llvm/Analysis/DDG.h
The file was modifiedllvm/include/llvm/Support/DOTGraphTraits.h
The file was modifiedllvm/lib/CodeGen/MachineScheduler.cpp
The file was modifiedllvm/lib/Analysis/CMakeLists.txt
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/lib/Analysis/CFGPrinter.cpp
The file was modifiedllvm/lib/CodeGen/ScheduleDAGPrinter.cpp
The file was modifiedllvm/include/llvm/Support/GraphWriter.h
The file was modifiedclang/lib/StaticAnalyzer/Core/ExprEngine.cpp
The file was addedllvm/lib/Analysis/DDGPrinter.cpp
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
Commit 3b3eb7f07ff97feb64a1975587bb473f1f3efa6b by listmail
Speculative fix for build bot failures

(The clang build fails for me locally, so this is based on built bot output and a guess as to root cause.)

f5fe849 made the execution of LAA conditional, so I'm guessing that's the root cause.
The file was modifiedclang/test/CodeGen/thinlto-distributed-newpm.ll
Commit 0cf7e4b252fe1458fddb8e3dbfcae43450e9c04c by csigg
Revert "[mlir] Remove methods from mlir::OpState that just forward to mlir::Operation."

This reverts commit 6f271e921ba48f4c4fa54bbd2c7a4c548ca5e59e.

Differential Revision: https://reviews.llvm.org/D93242
The file was modifiedmlir/include/mlir/IR/OpDefinition.h