[AArch64] Crash trying to scalarize llvm.vector.partial.reduce.add.v2i128.v4i128
- Dominant language
- LLVM
- Stars
- 40.5k
- Forks
- 18.7k
- PR merge metrics
- PR metrics pending
Description
```
target triple = "arm64-apple-macosx"
define <2 x i128> @crash(<2 x i128> %a, <4 x i128> %b) {
%r = call <2 x i128> @llvm.vector.partial.reduce.add.v2i128.v4i128(<2 x i128> %a, <4 x i128> %b)
ret <2 x i128> %r
}
```
Running through `llc` results in
```
ScalarizeVectorResult #0: t79: v1i128 = partial_reduce_umla t72, t75, t77
LLVM ERROR: Do not know how to scalarize the result of this operator!
```
https://llvm.godbolt.org/z/71nWK3qeT
Contributor guide
Research direction
Start by running the supplied IR through llc with the arm64-apple-macosx target and reproduce the ScalarizeVectorResult failure for partial_reduce_umla. Trace the compiler path handling this scalarization result; done means the provided reproducer no longer crashes and appropriate coverage verifies the behavior.
Written by the indexing model from the issue text.
Assessment
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100