[clang] [llvm] [llvm][OpenMP][SPIRV] Fix assertion for GPU reductions (PR #194879)
Nick Sarnie via llvm-commits
llvm-commits at lists.llvm.org
Tue May 5 08:35:53 PDT 2026
================
@@ -4731,12 +4731,22 @@ OpenMPIRBuilder::InsertPointOrErrorTy OpenMPIRBuilder::createReductionsGPU(
&LHSPtr, &RHSPtr, CurFunc));
// Fix the CallBack code genereated to use the correct Values for the LHS
- // and RHS
- LHSPtr->replaceUsesWithIf(RedValue, [ReductionFunc](const Use &U) {
+ // and RHS. Cast to match types before replacing (necessary to handle
+ // different address spaces).
+ Value *CastRedValue = RedValue;
----------------
sarnex wrote:
instead of making a new `CastRedValue` i wonder if it's cleaner to just overwrite the existing variable since i don't think we need it
`if(...) {
RedValue = Builder.Create...(RedValue, ...)
...
}
https://github.com/llvm/llvm-project/pull/194879
More information about the llvm-commits
mailing list