[llvm] [VPlan] Support VPWidenPointerInductionRecipes with EVL tail folding (PR #152110)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 6 20:47:01 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `sanitizer-aarch64-linux-bootstrap-ubsan` running on `sanitizer-buildbot10` while building `llvm` at step 2 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/85/builds/11942

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 2 (annotate) failure: 'python ../sanitizer_buildbot/sanitizers/zorg/buildbot/builders/sanitizers/buildbot_selector.py' (failure)
...
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using lld-link: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using ld64.lld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using wasm-ld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using ld.lld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using lld-link: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using ld64.lld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using wasm-ld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/main.py:73: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 89656 tests, 72 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70..
FAIL: LLVM :: Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll (70714 of 89656)
******************** TEST 'LLVM :: Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/opt -passes=loop-vectorize  -prefer-predicate-over-epilogue=predicate-else-scalar-epilogue  -mtriple=riscv64 -mattr=+v -S < /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll | /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/FileCheck /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll # RUN: at line 2
+ /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/opt -passes=loop-vectorize -prefer-predicate-over-epilogue=predicate-else-scalar-epilogue -mtriple=riscv64 -mattr=+v -S
+ /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/FileCheck /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll
/home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll:113:15: error: CHECK-NEXT: expected string not found in input
; CHECK-NEXT: [[IV:%.*]] = phi i64 [ [[BC_RESUME_VAL]], [[SCALAR_PH]] ], [ [[IV_NEXT:%.*]], [[FOR_BODY]] ]
              ^
<stdin>:103:10: note: scanning from here
for.body: ; preds = %scalar.ph, %for.body
         ^
<stdin>:103:10: note: with "BC_RESUME_VAL" equal to "%bc.resume.val"
for.body: ; preds = %scalar.ph, %for.body
         ^
<stdin>:103:10: note: with "SCALAR_PH" equal to "%scalar.ph"
for.body: ; preds = %scalar.ph, %for.body
         ^
<stdin>:103:10: note: with "FOR_BODY" equal to "%for.body"
for.body: ; preds = %scalar.ph, %for.body
         ^
<stdin>:104:2: note: possible intended match here
 %iv = phi i64 [ 0, %scalar.ph ], [ %iv.next, %for.body ]
 ^

Input file: <stdin>
Check file: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
           98: scalar.ph: ; preds = %entry 
Step 11 (stage2/ubsan check) failure: stage2/ubsan check (failure)
...
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using lld-link: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using ld64.lld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using wasm-ld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using ld.lld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using lld-link: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using ld64.lld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using wasm-ld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/main.py:73: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 89656 tests, 72 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70..
FAIL: LLVM :: Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll (70714 of 89656)
******************** TEST 'LLVM :: Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/opt -passes=loop-vectorize  -prefer-predicate-over-epilogue=predicate-else-scalar-epilogue  -mtriple=riscv64 -mattr=+v -S < /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll | /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/FileCheck /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll # RUN: at line 2
+ /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/opt -passes=loop-vectorize -prefer-predicate-over-epilogue=predicate-else-scalar-epilogue -mtriple=riscv64 -mattr=+v -S
+ /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build_ubsan/bin/FileCheck /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll
/home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll:113:15: error: CHECK-NEXT: expected string not found in input
; CHECK-NEXT: [[IV:%.*]] = phi i64 [ [[BC_RESUME_VAL]], [[SCALAR_PH]] ], [ [[IV_NEXT:%.*]], [[FOR_BODY]] ]
              ^
<stdin>:103:10: note: scanning from here
for.body: ; preds = %scalar.ph, %for.body
         ^
<stdin>:103:10: note: with "BC_RESUME_VAL" equal to "%bc.resume.val"
for.body: ; preds = %scalar.ph, %for.body
         ^
<stdin>:103:10: note: with "SCALAR_PH" equal to "%scalar.ph"
for.body: ; preds = %scalar.ph, %for.body
         ^
<stdin>:103:10: note: with "FOR_BODY" equal to "%for.body"
for.body: ; preds = %scalar.ph, %for.body
         ^
<stdin>:104:2: note: possible intended match here
 %iv = phi i64 [ 0, %scalar.ph ], [ %iv.next, %for.body ]
 ^

Input file: <stdin>
Check file: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
           98: scalar.ph: ; preds = %entry 
Step 14 (stage3/ubsan check) failure: stage3/ubsan check (failure)
...
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using lld-link: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build2_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using ld64.lld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build2_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using wasm-ld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build2_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using ld.lld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build2_ubsan/bin/ld.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using lld-link: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build2_ubsan/bin/lld-link
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using ld64.lld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build2_ubsan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:520: note: using wasm-ld: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build2_ubsan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/utils/lit/lit/main.py:73: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 86438 tests, 72 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 
FAIL: LLVM :: Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll (70729 of 86438)
******************** TEST 'LLVM :: Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
/home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build2_ubsan/bin/opt -passes=loop-vectorize  -prefer-predicate-over-epilogue=predicate-else-scalar-epilogue  -mtriple=riscv64 -mattr=+v -S < /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll | /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build2_ubsan/bin/FileCheck /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll # RUN: at line 2
+ /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build2_ubsan/bin/opt -passes=loop-vectorize -prefer-predicate-over-epilogue=predicate-else-scalar-epilogue -mtriple=riscv64 -mattr=+v -S
+ /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm_build2_ubsan/bin/FileCheck /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll
/home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll:113:15: error: CHECK-NEXT: expected string not found in input
; CHECK-NEXT: [[IV:%.*]] = phi i64 [ [[BC_RESUME_VAL]], [[SCALAR_PH]] ], [ [[IV_NEXT:%.*]], [[FOR_BODY]] ]
              ^
<stdin>:103:10: note: scanning from here
for.body: ; preds = %scalar.ph, %for.body
         ^
<stdin>:103:10: note: with "BC_RESUME_VAL" equal to "%bc.resume.val"
for.body: ; preds = %scalar.ph, %for.body
         ^
<stdin>:103:10: note: with "SCALAR_PH" equal to "%scalar.ph"
for.body: ; preds = %scalar.ph, %for.body
         ^
<stdin>:103:10: note: with "FOR_BODY" equal to "%for.body"
for.body: ; preds = %scalar.ph, %for.body
         ^
<stdin>:104:2: note: possible intended match here
 %iv = phi i64 [ 0, %scalar.ph ], [ %iv.next, %for.body ]
 ^

Input file: <stdin>
Check file: /home/b/sanitizer-aarch64-linux-bootstrap-ubsan/build/llvm-project/llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll

-dump-input=help explains the following input dump.

Input was:
<<<<<<
            .
            .
            .
           98: scalar.ph: ; preds = %entry 

```

</details>

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


More information about the llvm-commits mailing list