[llvm] [RISCV] Recursively split concat_vector into smaller LMULs (PR #83035)

Wang Pengcheng via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 27 19:50:06 PST 2024


================
@@ -7,14 +7,14 @@
 define <4 x i1> @load_large_vector(ptr %p) {
 ; ZVE32X-LABEL: load_large_vector:
 ; ZVE32X:       # %bb.0:
-; ZVE32X-NEXT:    ld a1, 80(a0)
-; ZVE32X-NEXT:    ld a2, 72(a0)
-; ZVE32X-NEXT:    ld a3, 56(a0)
-; ZVE32X-NEXT:    ld a4, 32(a0)
-; ZVE32X-NEXT:    ld a5, 24(a0)
-; ZVE32X-NEXT:    ld a6, 48(a0)
-; ZVE32X-NEXT:    ld a7, 8(a0)
-; ZVE32X-NEXT:    ld a0, 0(a0)
+; ZVE32X-NEXT:    ld a1, 8(a0)
----------------
wangpc-pp wrote:

I just tried it, the result is:
```
; ZVE32X-NEXT:    ld a1, 48(a0)
; ZVE32X-NEXT:    ld a2, 56(a0)
; ZVE32X-NEXT:    ld a3, 72(a0)
; ZVE32X-NEXT:    ld a4, 80(a0)
; ZVE32X-NEXT:    ld a5, 0(a0)
; ZVE32X-NEXT:    ld a6, 8(a0)
; ZVE32X-NEXT:    ld a7, 24(a0)
; ZVE32X-NEXT:    ld a0, 32(a0)
```
It seems that elements in subvectors are ordered, but it's not the case for subvectors.

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


More information about the llvm-commits mailing list