[PATCH] D123179: [RISCV] Pre-commit for fixing stack offset for RVV object
Roger Ferrer Ibanez via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 7 00:45:52 PDT 2022
rogfer01 added a comment.
Hi @kito-cheng
I'm ok with this once D123178 <https://reviews.llvm.org/D123178> lands.
Just to confirm the issue is the `vs1r` of `v8` before the loop. Is my understanding correct?
F22703795: Screenshot from 2022-04-07 09-42-55.png <https://reviews.llvm.org/F22703795>
I made this diagram based on the output of `llc -o - -mtriple riscv64 -mattr=+m,+v t.ll -riscv-v-vector-bits-min=512`
asm_fprintf: # @asm_fprintf
# %bb.0: # %entry
addi sp, sp, -64
sd ra, 40(sp) # 8-byte Folded Spill
sd s0, 32(sp) # 8-byte Folded Spill
sd s1, 24(sp) # 8-byte Folded Spill
csrr a0, vlenb
sub sp, sp, a0
mv s0, a4
mv s1, a1
csrr a0, vlenb
add a0, sp, a0
sd a7, 56(a0)
csrr a0, vlenb
add a0, sp, a0
sd a6, 48(a0)
vsetivli zero, 2, e8, mf8, ta, mu
vmv.v.i v8, 0
addi a0, sp, 40
vs1r.v v8, (a0) # Unknown-size Folded Spill
.LBB0_1: # %while.cond
# =>This Inner Loop Header: Depth=1
bnez zero, .LBB0_1
# %bb.2: # %sw.bb
# in Loop: Header=BB0_1 Depth=1
vsetivli zero, 2, e8, mf8, ta, mu
addi a0, sp, 40
vl1r.v v8, (a0) # Unknown-size Folded Reload
vse8.v v8, (s0)
mv a0, s1
call fprintf at plt
j .LBB0_1
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D123179/new/
https://reviews.llvm.org/D123179
More information about the llvm-commits
mailing list