[llvm] [VPlan] Rewrite sinkScalarOperands in preparation to extend (PR #151696)

Florian Hahn via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 2 02:08:59 PDT 2025


https://github.com/fhahn commented:

It looks like there are some crashes with this patch:

```
target datalayout = "e-m:o-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-n32:64-S128-Fn32"
target triple = "arm64-apple-macosx15.0.0"

; Function Attrs: optsize
define void @test(ptr %0, i64 %wide.trip.count.i, i16 %1) #0 {
entry:
  br label %for.body.i

for.body.i:                                       ; preds = %for.body.i, %entry
  %indvars.iv.i37 = phi i64 [ 0, %entry ], [ %indvars.iv.next.i39, %for.body.i ]
  %arrayidx.i38 = getelementptr i16, ptr %0, i64 %indvars.iv.i37
  %2 = load i16, ptr %arrayidx.i38, align 2
  %conv5.i = mul i16 %2, %1
  store i16 %conv5.i, ptr %arrayidx.i38, align 2
  %indvars.iv.next.i39 = add i64 %indvars.iv.i37, 1
  %exitcond.not.i40 = icmp eq i64 %indvars.iv.i37, %wide.trip.count.i
  br i1 %exitcond.not.i40, label %exit, label %for.body.i

exit:                        ; preds = %for.body.i
  ret void
}

attributes #0 = { optsize }
```

https://github.com/llvm/llvm-project/pull/151696


More information about the llvm-commits mailing list