[MLIR][ExecutionEngine] Revert stream/event teardown error suppressions (#194440)
#190717 fixed the race that produced CUDA_ERROR_CONTEXT_IS_DESTROYED on
mgpuStreamDestroy, mgpuStreamWaitEvent, mgpuEventDestroy, and
mgpuEventSynchronize. This changes restores CUDA_REPORT_IF_ERROR on
those four sites.
Keep the CUDA_ERROR_DEINITIALIZED tolerance on mgpuModuleUnload because
that's a separate global-destructor ordering issue, and an error on
module unload is benign anyway.
This is a partial revert of #190563.
Assisted-by: Claude
[VPlan] Remove Def pointer from for VPSingleDefRecipes (NFC) (#195483)
For VPSingleDefRecipe, the VPRecipeValue's Def pointer always points
back to the containing VPRecipeBase, which is computable via
static_cast.
Introduce 2 VPRecipeValue subclasses to distinguish the VPValues defined
by VPSingleDefRecipes (VPSingleDefValue), and VPStandaloneValue for
other recipes.
The former does not need to store a pointer to the defining recipe, as
it can be computed via static_cast. This saves 8 bytes for most recipes.
I plan to use the extra bytes to store the type directly in VPValue as
follow-ups.
PR: https://github.com/llvm/llvm-project/pull/195483
Reapply "[SCEV] Introduce loop-uniform SCEV classification." (#196357)
This reverts commit 45d94f67b84bdc5a85aa8e3c5c266914062dcfef.
This recommit contains a small fix: when `loop-computable` are mixed
with `loop-uniform`, it returns `loop-variant (unknown)`.
Original message:
This patch extends `ScalarEvolution::LoopDisposition` with a new
`LoopUniform` state to describe SCEVs that are invariant across all
iterations of a given loop, but may still depend on inner-loop induction
variables.
Unlike `LoopInvariant`, which requires the value to be fully invariant
with respect to the loop, LoopUniform captures expressions that do not
depend on the loop’s own induction variables, yet may vary in nested
loops. This distinction is useful for analyses and optimizations that
reason about per-iteration stability at a specific loop level.
[12 lines not shown]
[SPIR-V] Route ISel errors through diagnoseUnsupported (#196899)
Replace report_fatal_error in ISel with diagnoseUnsupported so user gets
readable diagnostics with source location instead of simple errors
[OpenCL] Allow mesa3d OS in spirv32 and spirv64 targets (#197148)
Fix libclc `spirv32-mesa-mesa3d` target build error: unknown target
triple 'spirv32-mesa-mesa3d'
Fix libclc `spirv-mesa-mesa3d` target build error: SPIR-V target
requires a Vulkan environment.
mesa3d is a valid OS in llvm triple. This PR enables libclc build for
spirv32-mesa-mesa3d and spirv64-mesa-mesa3d targets.
Note previously spirv[64]-mesa3d- targets used spir[64]-unknown-unknown.
This PR canonicalizes the triples to spirv32[64]-mesa-mesa3d.
[LifetimeSafety] Fix lifetimebound fix-it location for defaulted parameters (#198092)
Earlier, we placed the attribute after the full parameter declaration.
Now, in the default-argument case, we place it after the parameter name.
Fixes #192271
[llvm-objdump][RISCV] Use ISA mapping symbols for per-region disassembly (#193448)
llvm-objdump now honours "$x<ISAString>" mapping symbols emitted by the
RISC-V assembler to select the correct instruction decoder for each code
region.
Note that this also makes the --mattr= option of llvm-objdump much less
useful (only regions without an ISA mapping symbol are affected by
--mattr=).
The implementation also caches parsed ISA mapping symbols. We learned
this lesson from our downstream binutils implementation, where the first
version had no cache and made disassembling large binaries very slow, so
I decide introduce cache from the beginning here.
Test changes summary:
- zibi-valid.s: fix a bug where the rv64 test did not pass +64bit to
llvm-objdump, so address operands were not printed correctly.
[16 lines not shown]
bhyve.8: Fix formatting of -G's "w" prefix
"w" is a command modifier, not an argument. Use Cm.
Fixes: 2cdff9918e79 byhve: add option to specify IP address for gdb
MFC after: 3 days
(cherry picked from commit 7abddbb3cdeeff0d4d991aee52e92382e847e8a2)
bhyve.8: Fix formatting of -G's "w" prefix
"w" is a command modifier, not an argument. Use Cm.
Fixes: 2cdff9918e79 byhve: add option to specify IP address for gdb
MFC after: 3 days
(cherry picked from commit 7abddbb3cdeeff0d4d991aee52e92382e847e8a2)