[llvm] [polly] [SCEV] Infer addrec nowrap flags during range analysis (PR #202964)

via llvm-commits llvm-commits at lists.llvm.org
Wed Jun 10 07:04:13 PDT 2026


github-actions[bot] wrote:

<!--PREMERGE ADVISOR COMMENT: Linux-->
# :penguin: Linux x64 Test Results

* 175450 tests passed
* 3456 tests skipped
* 1 test failed

## Failed Tests
(click on a test name to see its output)

### LLVM
<details>
<summary>LLVM.Transforms/IndVarSimplify/addrec_no_exec_on_every_iteration.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 2
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/IndVarSimplify/addrec_no_exec_on_every_iteration.ll -passes=indvars -S | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/IndVarSimplify/addrec_no_exec_on_every_iteration.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=indvars -S
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/IndVarSimplify/addrec_no_exec_on_every_iteration.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/IndVarSimplify/addrec_no_exec_on_every_iteration.ll:173:11: error: CHECK: expected string not found in input
# |  ; CHECK: %bugged = add nsw
# |           ^
# | <stdin>:7:18: note: scanning from here
# | define void @test(ptr readnone captures(none) %arg, ptr noalias readnone captures(none) %arg1, ptr noalias readnone captures(none) %arg2, ptr noalias readonly captures(none) %arg3, ptr noalias readnone captures(none) %arg4) local_unnamed_addr #0 {
# |                  ^
# | <stdin>:27:2: note: possible intended match here
# |  %tmp18 = add nsw i64 %tmp17, 2
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/IndVarSimplify/addrec_no_exec_on_every_iteration.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              1: ; ModuleID = '<stdin>' 
# |              2: source_filename = "<stdin>" 
# |              3: target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-f80:128-n8:16:32:64-S128" 
# |              4: target triple = "x86_64-unknown-linux-gnu" 
# |              5:  
# |              6: ; Function Attrs: nofree norecurse nounwind denormal_fpenv(preservesign) uwtable 
# |              7: define void @test(ptr readnone captures(none) %arg, ptr noalias readnone captures(none) %arg1, ptr noalias readnone captures(none) %arg2, ptr noalias readonly captures(none) %arg3, ptr noalias readnone captures(none) %arg4) local_unnamed_addr #0 { 
# | check:173'0                      X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |              8: bb: 
# | check:173'0     ~~~~
# |              9:  %tmp5 = load ptr, ptr %arg3, align 8, !invariant.load !0, !dereferenceable !1, !align !2 
# | check:173'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             10:  %tmp6 = getelementptr inbounds ptr, ptr %arg3, i64 3 
# | check:173'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             11:  %tmp7 = load ptr, ptr %tmp6, align 8, !invariant.load !0, !dereferenceable !3, !align !2 
# | check:173'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             12:  br label %bb9 
# | check:173'0     ~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |             22:  br label %bb15 
# | check:173'0     ~~~~~~~~~~~~~~~~
# |             23:  
# | check:173'0     ~
# |             24: bb15: ; preds = %bb27, %bb12 
# | check:173'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             25:  %tmp16 = phi i64 [ 0, %bb12 ], [ %tmp28, %bb27 ] 
# | check:173'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             26:  %tmp17 = mul nuw nsw i64 %tmp16, -2 
# | check:173'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             27:  %tmp18 = add nsw i64 %tmp17, 2 
# | check:173'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:173'1      ?                               possible intended match
# |             28:  br label %bb19 
# | check:173'0     ~~~~~~~~~~~~~~~~
# |             29:  
# | check:173'0     ~
# |             30: bb19: ; preds = %bb19, %bb15 
# | check:173'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             31:  %tmp20 = phi i64 [ 0, %bb15 ], [ %tmp25, %bb19 ] 
# | check:173'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             32:  %tmp21 = add nuw nsw i64 %tmp18, %tmp20 
# | check:173'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>

If these failures are unrelated to your changes (for example tests are broken or flaky at HEAD), please open an issue at https://github.com/llvm/llvm-project/issues and add the `infrastructure` label.

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


More information about the llvm-commits mailing list