[llvm] [SCEV] Remove existing predicates implied by newly added ones. (PR #118185)

LLVM Continuous Integration via llvm-commits llvm-commits at lists.llvm.org
Fri Dec 20 13:06:05 PST 2024


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `llvm-clang-x86_64-sie-ubuntu-fast` running on `sie-linux-worker` while building `llvm` at step 6 "test-build-unified-tree-check-all".

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

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

```
Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: Transforms/LoopVersioning/wrapping-pointer-versioning.ll' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/opt -passes=loop-versioning -S < /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/llvm/test/Transforms/LoopVersioning/wrapping-pointer-versioning.ll | /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/llvm/test/Transforms/LoopVersioning/wrapping-pointer-versioning.ll -check-prefix=LV
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/opt -passes=loop-versioning -S
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/build/bin/FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/llvm/test/Transforms/LoopVersioning/wrapping-pointer-versioning.ll -check-prefix=LV
/home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/llvm/test/Transforms/LoopVersioning/wrapping-pointer-versioning.ll:32:12: error: LV-NEXT: is not on the line after the previous match
; LV-NEXT: [[MUL1:%.*]] = call { i64, i1 } @llvm.umul.with.overflow.i64(i64 4, i64 [[TMP0]])
           ^
<stdin>:9:2: note: 'next' match was here
 %mul1 = call { i64, i1 } @llvm.umul.with.overflow.i64(i64 4, i64 %0)
 ^
<stdin>:7:21: note: previous match ended here
 %0 = add i64 %N, -1
                    ^
<stdin>:8:1: note: non-matching line after previous match is here
 %1 = icmp ugt i64 %0, 4294967295
^

Input file: <stdin>
Check file: /home/buildbot/buildbot-root/llvm-clang-x86_64-sie-ubuntu-fast/llvm-project/llvm/test/Transforms/LoopVersioning/wrapping-pointer-versioning.ll

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

Input was:
<<<<<<
             1: ; ModuleID = '<stdin>' 
             2: source_filename = "<stdin>" 
             3: target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" 
             4:  
             5: define void  at f1(ptr noalias %a, ptr noalias %b, i64 %N) { 
label:29'0                  ^~~~
label:29'1                  ^~~~
             6: for.body.lver.check: 
next:30         ^~~~~~~~~~~~~~~~~~~~
             7:  %0 = add i64 %N, -1 
next:31'0        ^~~~~~~~~~~~~~~~~~~
next:31'1        ^~                   captured var "TMP0"
next:31'2                     ^~      captured var "N"
             8:  %1 = icmp ugt i64 %0, 4294967295 
             9:  %mul1 = call { i64, i1 } @llvm.umul.with.overflow.i64(i64 4, i64 %0) 
next:32'0        !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
next:32'1                                                                              with "TMP0" equal to "%0"
next:32'2        !~~~~                                                                 captured var "MUL1"
            10:  %mul.result = extractvalue { i64, i1 } %mul1, 0 
            11:  %mul.overflow = extractvalue { i64, i1 } %mul1, 1 
            12:  %2 = sub i64 0, %mul.result 
            13:  %3 = getelementptr i8, ptr %a, i64 %mul.result 
...

```

</details>

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


More information about the llvm-commits mailing list