Hi Edwin > I believe the only problematic failures are the 5 vls calling convention > ones where only 24 ld\\s+a[0-1],\\s*[0-9]+\\(sp\\) are found.
Does this "only 24" comes from calling-convention-1.c? > This is what I'm getting locally (first instance of wrong match): > v32qi_RET1_ARG8: > .LFB109: V32qi will pass the args by reference instead of GPR(s), thus It is expected. I think we need to diff the asm code before and after the patch for the whole test-file. The RE "ld\\s+a[0-1],\\s*[0-9]+\\(sp\\)" would like to check vls mode values are returned by a[0-1]. Pan -----Original Message----- From: Edwin Lu <e...@rivosinc.com> Sent: Saturday, February 3, 2024 8:29 AM To: Li, Pan2 <pan2...@intel.com>; juzhe.zh...@rivai.ai; gcc-patches <gcc-patches@gcc.gnu.org> Cc: Robin Dapp <rdapp....@gmail.com>; kito.cheng <kito.ch...@gmail.com>; jeffreyalaw <jeffreya...@gmail.com>; palmer <pal...@rivosinc.com>; vineetg <vine...@rivosinc.com>; Patrick O'Neill <patr...@rivosinc.com> Subject: Re: [COMMITTED V3 1/4] RISC-V: Add non-vector types to dfa pipelines On 2/1/2024 8:28 PM, Li, Pan2 wrote: > Hi Edwin, > > Just rerun the newlib and there is no ICE but still 160 dump failures as > below. > > Pan > Hi Pan, Thanks for confirming! Having dump failures is expected. There are around 7 more unique failures than I expected (https://github.com/patrick-rivos/gcc-postcommit-ci/issues/473 <-- postcommit found 46 while I expected 39 https://inbox.sourceware.org/gcc-patches/12d205cd-3177-48ea-a54e-c2052fdde...@gmail.com/ https://github.com/ewlu/gcc-precommit-ci/issues/1178#issuecomment-1889782987) I included the 7 failed tests below and what was found instead. I believe the only problematic failures are the 5 vls calling convention ones where only 24 ld\\s+a[0-1],\\s*[0-9]+\\(sp\\) are found. FAIL: gcc.target/riscv/rvv/autovec/vls/calling-convention-1.c -O3 -ftree-vectorize --param riscv-autovec-preference=scalable scan-assembler-times ld\\s+a[0-1],\\s*[0-9]+\\(sp\\) 35 FAIL: gcc.target/riscv/rvv/autovec/vls/calling-convention-2.c -O3 -ftree-vectorize --param riscv-autovec-preference=scalable scan-assembler-times ld\\s+a[0-1],\\s*[0-9]+\\(sp\\) 33 FAIL: gcc.target/riscv/rvv/autovec/vls/calling-convention-3.c -O3 -ftree-vectorize --param riscv-autovec-preference=scalable scan-assembler-times ld\\s+a[0-1],\\s*[0-9]+\\(sp\\) 31 FAIL: gcc.target/riscv/rvv/autovec/vls/calling-convention-4.c -O3 -ftree-vectorize --param riscv-autovec-preference=scalable scan-assembler-times ld\\s+a[0-1],\\s*[0-9]+\\(sp\\) 29 FAIL: gcc.target/riscv/rvv/autovec/vls/calling-convention-7.c -O3 -ftree-vectorize --param riscv-autovec-preference=scalable scan-assembler-times ld\\s+a[0-1],\\s*[0-9]+\\(sp\\) 29 This is what I'm getting locally (first instance of wrong match): v32qi_RET1_ARG8: .LFB109: .cfi_startproc li t1,32 vsetvli zero,t1,e8,mf8,ta,ma vle8.v v1,0(a1) vle8.v v4,0(a2) vle8.v v3,0(a3) vle8.v v2,0(a4) vadd.vv v1,v1,v4 vadd.vv v1,v1,v3 vle8.v v3,0(a5) ld a5,0(sp) <-- used a5 instead of a1 vadd.vv v1,v1,v2 vle8.v v2,0(a6) vadd.vv v1,v1,v3 vle8.v v3,0(a7) vadd.vv v1,v1,v2 vle8.v v2,0(a5) vadd.vv v1,v1,v3 vadd.vv v1,v1,v2 vse8.v v1,0(a0) ret .cfi_endproc If I understand correctly, this is wrong since we aren't returning anything (nothing gets stored in a[0-1])? Edwin