[llvm] [Delinearization] Extract array dimensions from global declarations (PR #175158)

via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 9 04:30:24 PST 2026


github-actions[bot] wrote:

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

* 167846 tests passed
* 2983 tests skipped
* 14 tests failed

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

### LLVM
<details>
<summary>LLVM.Analysis/DependenceAnalysis/Banerjee.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/Analysis/DependenceAnalysis/Banerjee.ll -disable-output -da-delinearize=false "-passes=print<da>"       -aa-pipeline=basic-aa 2>&1 | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -disable-output -da-delinearize=false '-passes=print<da>' -aa-pipeline=basic-aa
# 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/Analysis/DependenceAnalysis/Banerjee.ll
# note: command had no output on stdout or stderr
# RUN: at line 4
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll -disable-output -da-delinearize=false -passes='print<da><normalized-results>'       -aa-pipeline=basic-aa 2>&1 | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll -check-prefix=NORMALIZE
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -disable-output -da-delinearize=false '-passes=print<da><normalized-results>' -aa-pipeline=basic-aa
# 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/Analysis/DependenceAnalysis/Banerjee.ll -check-prefix=NORMALIZE
# note: command had no output on stdout or stderr
# RUN: at line 6
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll -disable-output "-passes=print<da>" -aa-pipeline=basic-aa 2>&1  | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll -check-prefix=DELIN
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -disable-output '-passes=print<da>' -aa-pipeline=basic-aa
# 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/Analysis/DependenceAnalysis/Banerjee.ll -check-prefix=DELIN
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll:663:15: error: DELIN-NEXT: expected string not found in input
# | ; DELIN-NEXT: da analyze - consistent flow [-1 0]!
# |               ^
# | <stdin>:95:89: note: scanning from here
# | Src: store i64 0, ptr %arrayidx, align 8 --> Dst: %0 = load i64, ptr %arrayidx7, align 8
# |                                                                                         ^
# | <stdin>:96:2: note: possible intended match here
# |  da analyze - flow [> <=]!
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll:919:15: error: DELIN-NEXT: expected string not found in input
# | ; DELIN-NEXT: da analyze - flow [-11 0]!
# |               ^
# | <stdin>:134:89: note: scanning from here
# | Src: store i64 0, ptr %arrayidx, align 8 --> Dst: %1 = load i64, ptr %arrayidx6, align 8
# |                                                                                         ^
# | <stdin>:135:2: note: possible intended match here
# |  da analyze - flow [<> 0]!
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/Banerjee.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            90: Src: store i64 %0, ptr %B.addr.11, align 8 --> Dst: store i64 %0, ptr %B.addr.11, align 8 
# |            91:  da analyze - none! 
# |            92: Printing analysis 'Dependence Analysis' for function 'banerjee7': 
# |            93: Src: store i64 0, ptr %arrayidx, align 8 --> Dst: store i64 0, ptr %arrayidx, align 8 
# |            94:  da analyze - none! 
# |            95: Src: store i64 0, ptr %arrayidx, align 8 --> Dst: %0 = load i64, ptr %arrayidx7, align 8 
# | next:663'0                                                                                             X error: no match found
# |            96:  da analyze - flow [> <=]! 
# | next:663'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:663'1      ?                          possible intended match
# |            97: Src: store i64 0, ptr %arrayidx, align 8 --> Dst: store i64 %0, ptr %B.addr.11, align 8 
# | next:663'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            98:  da analyze - confused! 
# | next:663'0     ~~~~~~~~~~~~~~~~~~~~~~~~
# |            99: Src: %0 = load i64, ptr %arrayidx7, align 8 --> Dst: %0 = load i64, ptr %arrayidx7, align 8 
# | next:663'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           100:  da analyze - none! 
# | next:663'0     ~~~~~~~~~~~~~~~~~~~~
# |           101: Src: %0 = load i64, ptr %arrayidx7, align 8 --> Dst: store i64 %0, ptr %B.addr.11, align 8 
# | next:663'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# |           129: Src: store i64 %1, ptr %B.addr.11, align 8 --> Dst: store i64 %1, ptr %B.addr.11, align 8 
# |           130:  da analyze - none! 
# |           131: Printing analysis 'Dependence Analysis' for function 'banerjee10': 
# |           132: Src: store i64 0, ptr %arrayidx, align 8 --> Dst: store i64 0, ptr %arrayidx, align 8 
# |           133:  da analyze - none! 
# |           134: Src: store i64 0, ptr %arrayidx, align 8 --> Dst: %1 = load i64, ptr %arrayidx6, align 8 
# | next:919'0                                                                                             X error: no match found
# |           135:  da analyze - flow [<> 0]! 
# | next:919'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:919'1      ?                          possible intended match
# |           136: Src: store i64 0, ptr %arrayidx, align 8 --> Dst: store i64 %1, ptr %B.addr.11, align 8 
# | next:919'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           137:  da analyze - confused! 
# | next:919'0     ~~~~~~~~~~~~~~~~~~~~~~~~
# |           138: Src: %1 = load i64, ptr %arrayidx6, align 8 --> Dst: %1 = load i64, ptr %arrayidx6, align 8 
# | next:919'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           139:  da analyze - none! 
# | next:919'0     ~~~~~~~~~~~~~~~~~~~~
# |           140: Src: %1 = load i64, ptr %arrayidx6, align 8 --> Dst: store i64 %1, ptr %B.addr.11, align 8 
# | next:919'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Analysis/DependenceAnalysis/PreliminaryNoValidityCheckFixedSize.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/Analysis/DependenceAnalysis/PreliminaryNoValidityCheckFixedSize.ll -disable-output "-passes=print<da>" -aa-pipeline=basic-aa 2>&1    -da-disable-delinearization-checks | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/PreliminaryNoValidityCheckFixedSize.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -disable-output '-passes=print<da>' -aa-pipeline=basic-aa -da-disable-delinearization-checks
# 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/Analysis/DependenceAnalysis/PreliminaryNoValidityCheckFixedSize.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/PreliminaryNoValidityCheckFixedSize.ll:21:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: da analyze - none!
# |               ^
# | <stdin>:2:98: note: scanning from here
# | Src: store i64 %i.011, ptr %arrayidx8, align 8 --> Dst: store i64 %i.011, ptr %arrayidx8, align 8
# |                                                                                                  ^
# | <stdin>:7:2: note: possible intended match here
# |  da analyze - confused!
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/PreliminaryNoValidityCheckFixedSize.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            1: Printing analysis 'Dependence Analysis' for function 'p2': 
# |            2: Src: store i64 %i.011, ptr %arrayidx8, align 8 --> Dst: store i64 %i.011, ptr %arrayidx8, align 8 
# | next:21'0                                                                                                      X error: no match found
# |            3:  da analyze - output [* * *]! 
# | next:21'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            4: Src: store i64 %i.011, ptr %arrayidx8, align 8 --> Dst: %0 = load i64, ptr %arrayidx17, align 8 
# | next:21'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            5:  da analyze - flow [* *|<]! 
# | next:21'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            6: Src: store i64 %i.011, ptr %arrayidx8, align 8 --> Dst: store i64 %0, ptr %B.addr.24, align 8 
# | next:21'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            7:  da analyze - confused! 
# | next:21'0     ~~~~~~~~~~~~~~~~~~~~~~~~
# | next:21'1      ?                       possible intended match
# |            8: Src: %0 = load i64, ptr %arrayidx17, align 8 --> Dst: %0 = load i64, ptr %arrayidx17, align 8 
# | next:21'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            9:  da analyze - input [* * *]! 
# | next:21'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           10: Src: %0 = load i64, ptr %arrayidx17, align 8 --> Dst: store i64 %0, ptr %B.addr.24, align 8 
# | next:21'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           11:  da analyze - confused! 
# | next:21'0     ~~~~~~~~~~~~~~~~~~~~~~~~
# |           12: Src: store i64 %0, ptr %B.addr.24, align 8 --> Dst: store i64 %0, ptr %B.addr.24, align 8 
# | next:21'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           13:  da analyze - confused! 
# | next:21'0     ~~~~~~~~~~~~~~~~~~~~~~~~
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Analysis/DependenceAnalysis/Propagating.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/Analysis/DependenceAnalysis/Propagating.ll -disable-output "-passes=print<da>" -aa-pipeline=basic-aa 2>&1  | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/Propagating.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -disable-output '-passes=print<da>' -aa-pipeline=basic-aa
# 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/Analysis/DependenceAnalysis/Propagating.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/Propagating.ll:440:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: da analyze - flow [* -38]!
# |               ^
# | <stdin>:95:95: note: scanning from here
# | Src: store i32 %conv, ptr %arrayidx7, align 4 --> Dst: %0 = load i32, ptr %arrayidx13, align 4
# |                                                                                               ^
# | <stdin>:96:2: note: possible intended match here
# |  da analyze - flow [* <>]!
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/Propagating.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             .
# |             .
# |             .
# |            90: Src: store i32 %0, ptr %B.addr.11, align 4 --> Dst: store i32 %0, ptr %B.addr.11, align 4 
# |            91:  da analyze - none! 
# |            92: Printing analysis 'Dependence Analysis' for function 'prop7': 
# |            93: Src: store i32 %conv, ptr %arrayidx7, align 4 --> Dst: store i32 %conv, ptr %arrayidx7, align 4 
# |            94:  da analyze - none! 
# |            95: Src: store i32 %conv, ptr %arrayidx7, align 4 --> Dst: %0 = load i32, ptr %arrayidx13, align 4 
# | next:440'0                                                                                                   X error: no match found
# |            96:  da analyze - flow [* <>]! 
# | next:440'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:440'1      ?                          possible intended match
# |            97: Src: store i32 %conv, ptr %arrayidx7, align 4 --> Dst: store i32 %0, ptr %B.addr.11, align 4 
# | next:440'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            98:  da analyze - confused! 
# | next:440'0     ~~~~~~~~~~~~~~~~~~~~~~~~
# |            99: Src: %0 = load i32, ptr %arrayidx13, align 4 --> Dst: %0 = load i32, ptr %arrayidx13, align 4 
# | next:440'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           100:  da analyze - none! 
# | next:440'0     ~~~~~~~~~~~~~~~~~~~~
# |           101: Src: %0 = load i32, ptr %arrayidx13, align 4 --> Dst: store i32 %0, ptr %B.addr.11, align 4 
# | next:440'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Analysis/DependenceAnalysis/SameSDLoops.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/Analysis/DependenceAnalysis/SameSDLoops.ll -disable-output "-passes=print<da>" 2>&1    -da-disable-delinearization-checks | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/SameSDLoops.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -disable-output '-passes=print<da>' -da-disable-delinearization-checks
# 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/Analysis/DependenceAnalysis/SameSDLoops.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/SameSDLoops.ll:21:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: da analyze - output [-4 -3] / assuming 2 loop level(s) fused: [-4 -3 -3 -1]!
# |               ^
# | <stdin>:4:101: note: scanning from here
# | Src: store i64 %i.013, ptr %arrayidx12, align 8 --> Dst: store i64 %l17.04, ptr %arrayidx24, align 8
# |                                                                                                     ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/SameSDLoops.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |          1: Printing analysis 'Dependence Analysis' for function 'samebd0': 
# |          2: Src: store i64 %i.013, ptr %arrayidx12, align 8 --> Dst: store i64 %i.013, ptr %arrayidx12, align 8 
# |          3:  da analyze - none! 
# |          4: Src: store i64 %i.013, ptr %arrayidx12, align 8 --> Dst: store i64 %l17.04, ptr %arrayidx24, align 8 
# | next:21                                                                                                         X error: no match found
# |          5:  da analyze - output [> *]! 
# | next:21     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          6: Src: store i64 %l17.04, ptr %arrayidx24, align 8 --> Dst: store i64 %l17.04, ptr %arrayidx24, align 8 
# | next:21     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          7:  da analyze - none! 
# | next:21     ~~~~~~~~~~~~~~~~~~~~
# |          8: Printing analysis 'Dependence Analysis' for function 'samebd1': 
# | next:21     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          9: Src: store i64 %i.03, ptr %arrayidx, align 4 --> Dst: store i64 %i.03, ptr %arrayidx, align 4 
# |          .
# |          .
# |          .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Analysis/DependenceAnalysis/SimpleSIVNoValidityCheckFixedSize.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/Analysis/DependenceAnalysis/SimpleSIVNoValidityCheckFixedSize.ll -disable-output -passes="print<da>" 2>&1 | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/SimpleSIVNoValidityCheckFixedSize.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -disable-output '-passes=print<da>'
# 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/Analysis/DependenceAnalysis/SimpleSIVNoValidityCheckFixedSize.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/SimpleSIVNoValidityCheckFixedSize.ll:21:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: da analyze - consistent anti [1 -2]!
# |               ^
# | <stdin>:4:92: note: scanning from here
# | Src: %2 = load i32, ptr %arrayidx6, align 4 --> Dst: store i32 %2, ptr %arrayidx10, align 4
# |                                                                                            ^
# | <stdin>:5:2: note: possible intended match here
# |  da analyze - anti [< >]!
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/SimpleSIVNoValidityCheckFixedSize.ll:63:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: da analyze - consistent anti [1 -2]!
# |               ^
# | <stdin>:13:92: note: scanning from here
# | Src: %2 = load i32, ptr %arrayidx6, align 4 --> Dst: store i32 %2, ptr %arrayidx10, align 4
# |                                                                                            ^
# | <stdin>:14:2: note: possible intended match here
# |  da analyze - anti [< >]!
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/SimpleSIVNoValidityCheckFixedSize.ll:118:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: da analyze - consistent anti [1 -2 0 -3 2]!
# |               ^
# | <stdin>:24:93: note: scanning from here
# | Src: %4 = load i32, ptr %arrayidx26, align 4 --> Dst: store i32 %4, ptr %arrayidx36, align 4
# |                                                                                             ^
# | <stdin>:25:2: note: possible intended match here
# |  da analyze - anti [< > * * <>]!
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Analysis/DependenceAnalysis/SimpleSIVNoValidityCheckFixedSize.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             1: Printing analysis 'Dependence Analysis' for function 't1': 
# |             2: Src: %2 = load i32, ptr %arrayidx6, align 4 --> Dst: %2 = load i32, ptr %arrayidx6, align 4 
# |             3:  da analyze - none! 
# |             4: Src: %2 = load i32, ptr %arrayidx6, align 4 --> Dst: store i32 %2, ptr %arrayidx10, align 4 
# | next:21'0                                                                                                 X error: no match found
# |             5:  da analyze - anti [< >]! 
# | next:21'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:21'1       ?                         possible intended match
# |             6: Src: store i32 %2, ptr %arrayidx10, align 4 --> Dst: store i32 %2, ptr %arrayidx10, align 4 
# | next:21'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             7:  da analyze - none! 
# | next:21'0      ~~~~~~~~~~~~~~~~~~~~
# |             8: Printing analysis 'Dependence Analysis' for function 't2': 
# | next:21'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             9: Src: %2 = load i32, ptr %arrayidx6, align 4 --> Dst: %2 = load i32, ptr %arrayidx6, align 4 
# |            10:  da analyze - none! 
# |            11: Src: %2 = load i32, ptr %arrayidx6, align 4 --> Dst: %call = call ptr @func_with_returned_arg(ptr returned %a) 
# |            12:  da analyze - confused! 
# |            13: Src: %2 = load i32, ptr %arrayidx6, align 4 --> Dst: store i32 %2, ptr %arrayidx10, align 4 
# | next:63'0                                                                                                 X error: no match found
# |            14:  da analyze - anti [< >]! 
# | next:63'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:63'1       ?                         possible intended match
# |            15: Src: %call = call ptr @func_with_returned_arg(ptr returned %a) --> Dst: %call = call ptr @func_with_returned_arg(ptr returned %a) 
# | next:63'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            16:  da analyze - confused! 
# | next:63'0      ~~~~~~~~~~~~~~~~~~~~~~~~
# |            17: Src: %call = call ptr @func_with_returned_arg(ptr returned %a) --> Dst: store i32 %2, ptr %arrayidx10, align 4 
# | next:63'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            18:  da analyze - confused! 
# | next:63'0      ~~~~~~~~~~~~~~~~~~~~~~~~
# |            19: Src: store i32 %2, ptr %arrayidx10, align 4 --> Dst: store i32 %2, ptr %arrayidx10, align 4 
# | next:63'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            20:  da analyze - none! 
# | next:63'0      ~~~~~~~~~~~~~~~~~~~~
# |            21: Printing analysis 'Dependence Analysis' for function 't3': 
# | next:63'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            22: Src: %4 = load i32, ptr %arrayidx26, align 4 --> Dst: %4 = load i32, ptr %arrayidx26, align 4 
# |            23:  da analyze - none! 
# |            24: Src: %4 = load i32, ptr %arrayidx26, align 4 --> Dst: store i32 %4, ptr %arrayidx36, align 4 
# | next:118'0                                                                                                 X error: no match found
# |            25:  da analyze - anti [< > * * <>]! 
# | next:118'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:118'1      ?                                possible intended match
# |            26: Src: store i32 %4, ptr %arrayidx36, align 4 --> Dst: store i32 %4, ptr %arrayidx36, align 4 
# | next:118'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            27:  da analyze - none! 
# | next:118'0     ~~~~~~~~~~~~~~~~~~~~
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Transforms/LoopFusion/da_separate_loops.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 3
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-fusion -da-disable-delinearization-checks -disable-output -stats < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopFusion/da_separate_loops.ll 2>&1 | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=STAT /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopFusion/da_separate_loops.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-fusion -da-disable-delinearization-checks -disable-output -stats
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=STAT /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopFusion/da_separate_loops.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopFusion/da_separate_loops.ll:4:9: error: STAT: expected string not found in input
# | ; STAT: 2 loop-fusion - DA checks passed
# |         ^
# | <stdin>:1:1: note: scanning from here
# | ===-------------------------------------------------------------------------===
# | ^
# | <stdin>:9:2: note: possible intended match here
# |  4 loop-fusion - Dependencies prevent fusion
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopFusion/da_separate_loops.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            1: ===-------------------------------------------------------------------------=== 
# | check:4'0     X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |            2:  ... Statistics Collected ... 
# | check:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            3: ===-------------------------------------------------------------------------=== 
# | check:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            4:  
# | check:4'0     ~
# |            5:  2 aa - Number of MayAlias results 
# | check:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            6:  2 da - Banerjee applications 
# | check:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            7:  2 da - GCD applications 
# | check:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~
# |            8:  2 da - Array pairs tested 
# | check:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            9:  4 loop-fusion - Dependencies prevent fusion 
# | check:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:4'1      ?                                            possible intended match
# |           10:  4 loop-fusion - Number of candidates for loop fusion 
# | check:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           11: 16 scalar-evolution - Number of loop exits with predictable exit counts 
# | check:4'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           12:  
# | check:4'0     ~
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Transforms/LoopInterchange/currentLimitation.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/currentLimitation.ll -passes=loop-interchange -cache-line-size=64 -pass-remarks-missed='loop-interchange'    -pass-remarks-output=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/currentLimitation.ll.tmp -verify-loop-info -verify-dom-info -S | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=IR /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/currentLimitation.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-interchange -cache-line-size=64 -pass-remarks-missed=loop-interchange -pass-remarks-output=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/currentLimitation.ll.tmp -verify-loop-info -verify-dom-info -S
# .---command stderr------------
# | remark: <unknown>:0:0: All loops have dependencies in all directions.
# | remark: <unknown>:0:0: Loops where the latch is not the exiting block cannot be interchange currently.
# `-----------------------------
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=IR /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/currentLimitation.ll
# note: command had no output on stdout or stderr
# RUN: at line 3
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --input-file=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/currentLimitation.ll.tmp /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/currentLimitation.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --input-file=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/currentLimitation.ll.tmp /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/currentLimitation.ll
# note: command had no output on stdout or stderr
# RUN: at line 5
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/currentLimitation.ll -passes=loop-interchange -cache-line-size=64 -pass-remarks-missed='loop-interchange'    -da-disable-delinearization-checks -pass-remarks-output=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/currentLimitation.ll.tmp                -verify-loop-info -verify-dom-info -S | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=IR /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/currentLimitation.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-interchange -cache-line-size=64 -pass-remarks-missed=loop-interchange -da-disable-delinearization-checks -pass-remarks-output=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/currentLimitation.ll.tmp -verify-loop-info -verify-dom-info -S
# .---command stderr------------
# | remark: <unknown>:0:0: All loops have dependencies in all directions.
# | remark: <unknown>:0:0: Loops where the latch is not the exiting block cannot be interchange currently.
# `-----------------------------
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=IR /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/currentLimitation.ll
# note: command had no output on stdout or stderr
# RUN: at line 8
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --check-prefix=DELIN --input-file=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/currentLimitation.ll.tmp /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/currentLimitation.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --check-prefix=DELIN --input-file=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/currentLimitation.ll.tmp /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/currentLimitation.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/currentLimitation.ll:26:10: error: DELIN: expected string not found in input
# | ; DELIN: Name: Interchanged
# |          ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/currentLimitation.ll.tmp:1:1: note: scanning from here
# | --- !Analysis
# | ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/currentLimitation.ll.tmp:4:5: note: possible intended match here
# | Function: interchange_01
# |     ^
# | 
# | Input file: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/currentLimitation.ll.tmp
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/currentLimitation.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |             1: --- !Analysis 
# | check:26'0     X~~~~~~~~~~~~~ error: no match found
# |             2: Pass: loop-interchange 
# | check:26'0     ~~~~~~~~~~~~~~~~~~~~~~~
# |             3: Name: Dependence 
# | check:26'0     ~~~~~~~~~~~~~~~~~
# |             4: Function: interchange_01 
# | check:26'0     ~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:26'1         ?                     possible intended match
# |             5: Args: 
# | check:26'0     ~~~~~~
# |             6:  - String: Computed dependence info, invoking the transform. 
# | check:26'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             7: ... 
# | check:26'0     ~~~~
# |             8: --- !Missed 
# | check:26'0     ~~~~~~~~~~~~
# |             9: Pass: loop-interchange 
# | check:26'0     ~~~~~~~~~~~~~~~~~~~~~~~
# |             .
# |             .
# |             .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Transforms/LoopInterchange/lcssa-preheader.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/LoopInterchange/lcssa-preheader.ll -passes=loop-interchange -cache-line-size=64 -pass-remarks-missed='loop-interchange' -verify-loop-lcssa -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/LoopInterchange/lcssa-preheader.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-interchange -cache-line-size=64 -pass-remarks-missed=loop-interchange -verify-loop-lcssa -S
# .---command stderr------------
# | remark: <unknown>:0:0: All loops have dependencies in all directions.
# `-----------------------------
# 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/LoopInterchange/lcssa-preheader.ll
# note: command had no output on stdout or stderr
# RUN: at line 3
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/lcssa-preheader.ll -passes=loop-interchange -cache-line-size=64 -da-disable-delinearization-checks -pass-remarks-missed='loop-interchange' -verify-loop-lcssa -S | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=CHECK-DELIN /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/lcssa-preheader.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-interchange -cache-line-size=64 -da-disable-delinearization-checks -pass-remarks-missed=loop-interchange -verify-loop-lcssa -S
# .---command stderr------------
# | remark: <unknown>:0:0: All loops have dependencies in all directions.
# `-----------------------------
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -check-prefix=CHECK-DELIN /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/lcssa-preheader.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/lcssa-preheader.ll:26:21: error: CHECK-DELIN-NEXT: is not on the line after the previous match
# | ; CHECK-DELIN-NEXT: br label [[OUTER_HEADER:%.*]]
# |                     ^
# | <stdin>:16:2: note: 'next' match was here
# |  br label %outer.header
# |  ^
# | <stdin>:14:17: note: previous match ended here
# | outer.preheader: ; preds = %entry
# |                 ^
# | <stdin>:15:1: note: non-matching line after previous match is here
# |  %wide.trip.count29 = zext i32 %n to i64
# | ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/lcssa-preheader.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |          .
# |          .
# |          .
# |         11:  %cmp24 = icmp sgt i32 %n, 0 
# |         12:  br i1 %cmp24, label %outer.preheader, label %for.cond.cleanup 
# |         13:  
# |         14: outer.preheader: ; preds = %entry 
# |         15:  %wide.trip.count29 = zext i32 %n to i64 
# |         16:  br label %outer.header 
# | next:26      !~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
# |         17:  
# |         18: outer.header: ; preds = %outer.latch, %outer.preheader 
# |         19:  %indvars.iv27 = phi i64 [ 0, %outer.preheader ], [ %indvars.iv.next28, %outer.latch ] 
# |         20:  %cmp222 = icmp sgt i32 %m, 0 
# |         21:  br i1 %cmp222, label %inner.preheader, label %outer.latch 
# |          .
# |          .
# |          .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Transforms/LoopInterchange/legality-check.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/LoopInterchange/legality-check.ll -passes=loop-interchange -verify-dom-info -verify-loop-info      -disable-output -debug 2>&1 | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/legality-check.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-interchange -verify-dom-info -verify-loop-info -disable-output -debug
# 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/LoopInterchange/legality-check.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/legality-check.ll:17:15: error: CHECK-NEXT: expected string not found in input
# | ; CHECK-NEXT: * = <
# |               ^
# | <stdin>:295:38: note: scanning from here
# | Dependency matrix before interchange:
# |                                      ^
# | <stdin>:296:1: note: possible intended match here
# | * * < 
# | ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/legality-check.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            .
# |            .
# |            .
# |          290:  > 1024 260096 
# |          291:  [ = = ] 
# |          292: Found output dependency between Src and Dst 
# |          293:  Src: store float %add, ptr %idx.store, align 4 
# |          294:  Dst: store float %add, ptr %idx.store, align 4 
# |          295: Dependency matrix before interchange: 
# | next:17'0                                          X error: no match found
# |          296: * * <  
# | next:17'0     ~~~~~~~
# | next:17'1     ?       possible intended match
# |          297: * = =  
# | next:17'0     ~~~~~~~
# |          298: Processing InnerLoopId = 2 and OuterLoopId = 1 
# | next:17'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          299: Failed interchange InnerLoopId = 2 and OuterLoopId = 1 due to dependence 
# | next:17'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          300: Cannot prove legality, not interchanging loops 'for.i.header' and 'for.j' 
# | next:17'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |          301: Processing InnerLoopId = 1 and OuterLoopId = 0 
# | next:17'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            .
# |            .
# |            .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 3
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll -passes=loop-interchange -cache-line-size=64 -verify-dom-info -verify-loop-info      -pass-remarks-output=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/loop-interchange-optimization-remarks.ll.tmp -pass-remarks-missed='loop-interchange'      -pass-remarks='loop-interchange' -S
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-interchange -cache-line-size=64 -verify-dom-info -verify-loop-info -pass-remarks-output=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/loop-interchange-optimization-remarks.ll.tmp -pass-remarks-missed=loop-interchange -pass-remarks=loop-interchange -S
# .---command stdout------------
# | ; ModuleID = '<stdin>'
# | source_filename = "<stdin>"
# | 
# | @A = common global [100 x [100 x i32]] zeroinitializer
# | @B = common global [100 x [100 x i32]] zeroinitializer
# | @C = common global [100 x i32] zeroinitializer
# | @A10 = local_unnamed_addr global [3 x [3 x i32]] zeroinitializer, align 16
# | 
# | define void @test01(i32 %N) {
# | entry:
# |   %cmp31 = icmp sgt i32 %N, 1
# |   br i1 %cmp31, label %for.cond1.preheader.lr.ph, label %for.end19
# | 
# | for.cond1.preheader.lr.ph:                        ; preds = %entry
# |   %0 = add i32 %N, -1
# |   br label %for.body3.lr.ph
# | 
# | for.body3.lr.ph:                                  ; preds = %for.inc17, %for.cond1.preheader.lr.ph
# |   %indvars.iv34 = phi i64 [ 1, %for.cond1.preheader.lr.ph ], [ %indvars.iv.next35, %for.inc17 ]
# |   %1 = add nsw i64 %indvars.iv34, -1
# |   br label %for.body3
# | 
# | for.body3:                                        ; preds = %for.body3, %for.body3.lr.ph
# |   %indvars.iv = phi i64 [ 1, %for.body3.lr.ph ], [ %indvars.iv.next, %for.body3 ]
# |   %2 = add nsw i64 %indvars.iv, -1
# |   %arrayidx6 = getelementptr inbounds [100 x [100 x i32]], ptr @A, i64 0, i64 %1, i64 %2
# |   %3 = load i32, ptr %arrayidx6, align 4
# |   %arrayidx10 = getelementptr inbounds [100 x [100 x i32]], ptr @B, i64 0, i64 %indvars.iv34, i64 %indvars.iv
# |   %4 = load i32, ptr %arrayidx10, align 4
# |   %add = add nsw i32 %4, %3
# |   store i32 %add, ptr %arrayidx6, align 4
# |   %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
# |   %lftr.wideiv = trunc i64 %indvars.iv to i32
# |   %exitcond = icmp eq i32 %lftr.wideiv, %0
# |   br i1 %exitcond, label %for.inc17, label %for.body3
# | 
# | for.inc17:                                        ; preds = %for.body3
# |   %indvars.iv.next35 = add nuw nsw i64 %indvars.iv34, 1
# |   %lftr.wideiv37 = trunc i64 %indvars.iv34 to i32
# |   %exitcond38 = icmp eq i32 %lftr.wideiv37, %0
# |   br i1 %exitcond38, label %for.end19.loopexit, label %for.body3.lr.ph
# | 
# | for.end19.loopexit:                               ; preds = %for.inc17
# |   br label %for.end19
# | 
# | for.end19:                                        ; preds = %for.end19.loopexit, %entry
# |   ret void
# | }
# | 
# | define void @test02(i32 %k, i32 %N) {
# | entry:
# |   %sub = add nsw i32 %N, -1
# |   %cmp26 = icmp sgt i32 %N, 1
# |   br i1 %cmp26, label %for.cond1.preheader.lr.ph, label %for.end17
# | 
# | for.cond1.preheader.lr.ph:                        ; preds = %entry
# |   %cmp324 = icmp sgt i32 %sub, 1
# |   %0 = add i32 %N, -2
# |   %1 = sext i32 %sub to i64
# |   br label %for.cond1.preheader
# | 
# | for.cond.loopexit.loopexit:                       ; preds = %for.body4
# |   br label %for.cond.loopexit
# | 
# | for.cond.loopexit:                                ; preds = %for.cond.loopexit.loopexit, %for.cond1.preheader
# |   %cmp = icmp slt i64 %indvars.iv.next29, %1
# |   br i1 %cmp, label %for.cond1.preheader, label %for.end17.loopexit
# | 
# | for.cond1.preheader:                              ; preds = %for.cond.loopexit, %for.cond1.preheader.lr.ph
# |   %indvars.iv28 = phi i64 [ 0, %for.cond1.preheader.lr.ph ], [ %indvars.iv.next29, %for.cond.loopexit ]
# |   %indvars.iv.next29 = add nuw nsw i64 %indvars.iv28, 1
# |   br i1 %cmp324, label %for.body4.preheader, label %for.cond.loopexit
# | 
# | for.body4.preheader:                              ; preds = %for.cond1.preheader
# |   br label %for.body4
# | 
# | for.body4:                                        ; preds = %for.body4.preheader, %for.body4
# |   %indvars.iv = phi i64 [ %indvars.iv.next, %for.body4 ], [ 1, %for.body4.preheader ]
# |   %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
# |   %arrayidx7 = getelementptr inbounds [100 x [100 x i32]], ptr @A, i64 0, i64 %indvars.iv.next, i64 %indvars.iv.next29
# |   %2 = load i32, ptr %arrayidx7, align 4
# |   %add8 = add nsw i32 %2, %k
# |   store i32 %add8, ptr %arrayidx7, align 4
# |   %lftr.wideiv = trunc i64 %indvars.iv to i32
# |   %exitcond = icmp eq i32 %lftr.wideiv, %0
# |   br i1 %exitcond, label %for.cond.loopexit.loopexit, label %for.body4
# | 
# | for.end17.loopexit:                               ; preds = %for.cond.loopexit
# |   br label %for.end17
# | 
# | for.end17:                                        ; preds = %for.end17.loopexit, %entry
# |   ret void
# | }
# | 
# | define void @test03() {
# | entry:
# |   br label %for.body4.preheader
# | 
# | for.cond1.preheader.preheader:                    ; preds = %for.body4
# |   br label %for.cond1.preheader
# | 
# | for.cond.loopexit:                                ; preds = %for.body4.split1
# |   %exitcond28 = icmp ne i64 %indvars.iv.next27, 2
# |   br i1 %exitcond28, label %for.cond1.preheader, label %for.body4.split
# | 
# | for.cond1.preheader:                              ; preds = %for.cond1.preheader.preheader, %for.cond.loopexit
# |   %indvars.iv26 = phi i64 [ %indvars.iv.next27, %for.cond.loopexit ], [ 0, %for.cond1.preheader.preheader ]
# |   %indvars.iv.next27 = add nuw nsw i64 %indvars.iv26, 1
# |   br label %for.body4.split1
# | 
# | for.body4.preheader:                              ; preds = %entry
# |   br label %for.body4
# | 
# | for.cond.cleanup:                                 ; preds = %for.body4.split
# |   ret void
# | 
# | for.body4:                                        ; preds = %for.body4.preheader, %for.body4.split
# |   %indvars.iv = phi i64 [ %0, %for.body4.split ], [ 0, %for.body4.preheader ]
# |   br label %for.cond1.preheader.preheader
# | 
# | for.body4.split1:                                 ; preds = %for.cond1.preheader
# |   %arrayidx6 = getelementptr inbounds [3 x [3 x i32]], ptr @A10, i64 0, i64 %indvars.iv, i64 %indvars.iv26
# |   %tmp = trunc i64 %indvars.iv26 to i32
# |   store i32 %tmp, ptr %arrayidx6, align 4
# |   %arrayidx10 = getelementptr inbounds [3 x [3 x i32]], ptr @A10, i64 0, i64 %indvars.iv, i64 %indvars.iv.next27
# |   %tmp1 = trunc i64 %indvars.iv to i32
# |   store i32 %tmp1, ptr %arrayidx10, align 4
# |   %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
# |   %exitcond = icmp ne i64 %indvars.iv.next, 3
# |   br label %for.cond.loopexit
# | 
# | for.body4.split:                                  ; preds = %for.cond.loopexit
# |   %0 = add nuw nsw i64 %indvars.iv, 1
# |   %1 = icmp ne i64 %0, 3
# |   br i1 %1, label %for.body4, label %for.cond.cleanup
# | }
# | 
# | define void @test04(i32 %k, i32 %N) {
# | entry:
# |   %cmp30 = icmp sgt i32 %N, 0
# |   br i1 %cmp30, label %for.body.lr.ph, label %for.end17
# | 
# | for.body.lr.ph:                                   ; preds = %entry
# |   %0 = add i32 %N, -1
# |   %1 = zext i32 %k to i64
# |   br label %for.body
# | 
# | for.body:                                         ; preds = %for.inc15, %for.body.lr.ph
# |   %indvars.iv32 = phi i64 [ 0, %for.body.lr.ph ], [ %indvars.iv.next33, %for.inc15 ]
# |   %2 = add nsw i64 %indvars.iv32, %1
# |   %arrayidx = getelementptr inbounds [100 x i32], ptr @C, i64 0, i64 %indvars.iv32
# |   %3 = trunc i64 %2 to i32
# |   store i32 %3, ptr %arrayidx, align 4
# |   br label %for.body3
# | 
# | for.body3:                                        ; preds = %for.body3, %for.body
# |   %indvars.iv = phi i64 [ 0, %for.body ], [ %indvars.iv.next, %for.body3 ]
# |   %arrayidx7 = getelementptr inbounds [100 x [100 x i32]], ptr @A, i64 0, i64 %indvars.iv32, i64 %indvars.iv
# |   %4 = load i32, ptr %arrayidx7, align 4
# |   %add10 = add nsw i32 %3, %4
# |   store i32 %add10, ptr %arrayidx7, align 4
# |   %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
# |   %lftr.wideiv = trunc i64 %indvars.iv to i32
# |   %exitcond = icmp eq i32 %lftr.wideiv, %0
# |   br i1 %exitcond, label %for.inc15, label %for.body3
# | 
# | for.inc15:                                        ; preds = %for.body3
# |   %indvars.iv.next33 = add nuw nsw i64 %indvars.iv32, 1
# |   %lftr.wideiv35 = trunc i64 %indvars.iv32 to i32
# |   %exitcond36 = icmp eq i32 %lftr.wideiv35, %0
# |   br i1 %exitcond36, label %for.end17.loopexit, label %for.body
# | 
# | for.end17.loopexit:                               ; preds = %for.inc15
# |   br label %for.end17
# | 
# | for.end17:                                        ; preds = %for.end17.loopexit, %entry
# |   ret void
# | }
# `-----------------------------
# .---command stderr------------
# | remark: <unknown>:0:0: All loops have dependencies in all directions.
# | remark: <unknown>:0:0: All loops have dependencies in all directions.
# | remark: <unknown>:0:0: Loop interchanged with enclosing loop.
# | remark: <unknown>:0:0: All loops have dependencies in all directions.
# `-----------------------------
# RUN: at line 6
cat /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/loop-interchange-optimization-remarks.ll.tmp |  /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll
# executed command: cat /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/loop-interchange-optimization-remarks.ll.tmp
# 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/LoopInterchange/loop-interchange-optimization-remarks.ll
# note: command had no output on stdout or stderr
# RUN: at line 8
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll -passes=loop-interchange -cache-line-size=64 -verify-dom-info -verify-loop-info      -pass-remarks-output=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/loop-interchange-optimization-remarks.ll.tmp -pass-remarks-missed='loop-interchange'      -pass-remarks='loop-interchange' -S -da-disable-delinearization-checks
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-interchange -cache-line-size=64 -verify-dom-info -verify-loop-info -pass-remarks-output=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/loop-interchange-optimization-remarks.ll.tmp -pass-remarks-missed=loop-interchange -pass-remarks=loop-interchange -S -da-disable-delinearization-checks
# .---command stdout------------
# | ; ModuleID = '<stdin>'
# | source_filename = "<stdin>"
# | 
# | @A = common global [100 x [100 x i32]] zeroinitializer
# | @B = common global [100 x [100 x i32]] zeroinitializer
# | @C = common global [100 x i32] zeroinitializer
# | @A10 = local_unnamed_addr global [3 x [3 x i32]] zeroinitializer, align 16
# | 
# | define void @test01(i32 %N) {
# | entry:
# |   %cmp31 = icmp sgt i32 %N, 1
# |   br i1 %cmp31, label %for.cond1.preheader.lr.ph, label %for.end19
# | 
# | for.cond1.preheader.lr.ph:                        ; preds = %entry
# |   %0 = add i32 %N, -1
# |   br label %for.body3.lr.ph
# | 
# | for.body3.lr.ph:                                  ; preds = %for.inc17, %for.cond1.preheader.lr.ph
# |   %indvars.iv34 = phi i64 [ 1, %for.cond1.preheader.lr.ph ], [ %indvars.iv.next35, %for.inc17 ]
# |   %1 = add nsw i64 %indvars.iv34, -1
# |   br label %for.body3
# | 
# | for.body3:                                        ; preds = %for.body3, %for.body3.lr.ph
# |   %indvars.iv = phi i64 [ 1, %for.body3.lr.ph ], [ %indvars.iv.next, %for.body3 ]
# |   %2 = add nsw i64 %indvars.iv, -1
# |   %arrayidx6 = getelementptr inbounds [100 x [100 x i32]], ptr @A, i64 0, i64 %1, i64 %2
# |   %3 = load i32, ptr %arrayidx6, align 4
# |   %arrayidx10 = getelementptr inbounds [100 x [100 x i32]], ptr @B, i64 0, i64 %indvars.iv34, i64 %indvars.iv
# |   %4 = load i32, ptr %arrayidx10, align 4
# |   %add = add nsw i32 %4, %3
# |   store i32 %add, ptr %arrayidx6, align 4
# |   %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
# |   %lftr.wideiv = trunc i64 %indvars.iv to i32
# |   %exitcond = icmp eq i32 %lftr.wideiv, %0
# |   br i1 %exitcond, label %for.inc17, label %for.body3
# | 
# | for.inc17:                                        ; preds = %for.body3
# |   %indvars.iv.next35 = add nuw nsw i64 %indvars.iv34, 1
# |   %lftr.wideiv37 = trunc i64 %indvars.iv34 to i32
# |   %exitcond38 = icmp eq i32 %lftr.wideiv37, %0
# |   br i1 %exitcond38, label %for.end19.loopexit, label %for.body3.lr.ph
# | 
# | for.end19.loopexit:                               ; preds = %for.inc17
# |   br label %for.end19
# | 
# | for.end19:                                        ; preds = %for.end19.loopexit, %entry
# |   ret void
# | }
# | 
# | define void @test02(i32 %k, i32 %N) {
# | entry:
# |   %sub = add nsw i32 %N, -1
# |   %cmp26 = icmp sgt i32 %N, 1
# |   br i1 %cmp26, label %for.cond1.preheader.lr.ph, label %for.end17
# | 
# | for.cond1.preheader.lr.ph:                        ; preds = %entry
# |   %cmp324 = icmp sgt i32 %sub, 1
# |   %0 = add i32 %N, -2
# |   %1 = sext i32 %sub to i64
# |   br label %for.cond1.preheader
# | 
# | for.cond.loopexit.loopexit:                       ; preds = %for.body4
# |   br label %for.cond.loopexit
# | 
# | for.cond.loopexit:                                ; preds = %for.cond.loopexit.loopexit, %for.cond1.preheader
# |   %cmp = icmp slt i64 %indvars.iv.next29, %1
# |   br i1 %cmp, label %for.cond1.preheader, label %for.end17.loopexit
# | 
# | for.cond1.preheader:                              ; preds = %for.cond.loopexit, %for.cond1.preheader.lr.ph
# |   %indvars.iv28 = phi i64 [ 0, %for.cond1.preheader.lr.ph ], [ %indvars.iv.next29, %for.cond.loopexit ]
# |   %indvars.iv.next29 = add nuw nsw i64 %indvars.iv28, 1
# |   br i1 %cmp324, label %for.body4.preheader, label %for.cond.loopexit
# | 
# | for.body4.preheader:                              ; preds = %for.cond1.preheader
# |   br label %for.body4
# | 
# | for.body4:                                        ; preds = %for.body4.preheader, %for.body4
# |   %indvars.iv = phi i64 [ %indvars.iv.next, %for.body4 ], [ 1, %for.body4.preheader ]
# |   %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
# |   %arrayidx7 = getelementptr inbounds [100 x [100 x i32]], ptr @A, i64 0, i64 %indvars.iv.next, i64 %indvars.iv.next29
# |   %2 = load i32, ptr %arrayidx7, align 4
# |   %add8 = add nsw i32 %2, %k
# |   store i32 %add8, ptr %arrayidx7, align 4
# |   %lftr.wideiv = trunc i64 %indvars.iv to i32
# |   %exitcond = icmp eq i32 %lftr.wideiv, %0
# |   br i1 %exitcond, label %for.cond.loopexit.loopexit, label %for.body4
# | 
# | for.end17.loopexit:                               ; preds = %for.cond.loopexit
# |   br label %for.end17
# | 
# | for.end17:                                        ; preds = %for.end17.loopexit, %entry
# |   ret void
# | }
# | 
# | define void @test03() {
# | entry:
# |   br label %for.body4.preheader
# | 
# | for.cond1.preheader.preheader:                    ; preds = %for.body4
# |   br label %for.cond1.preheader
# | 
# | for.cond.loopexit:                                ; preds = %for.body4.split1
# |   %exitcond28 = icmp ne i64 %indvars.iv.next27, 2
# |   br i1 %exitcond28, label %for.cond1.preheader, label %for.body4.split
# | 
# | for.cond1.preheader:                              ; preds = %for.cond1.preheader.preheader, %for.cond.loopexit
# |   %indvars.iv26 = phi i64 [ %indvars.iv.next27, %for.cond.loopexit ], [ 0, %for.cond1.preheader.preheader ]
# |   %indvars.iv.next27 = add nuw nsw i64 %indvars.iv26, 1
# |   br label %for.body4.split1
# | 
# | for.body4.preheader:                              ; preds = %entry
# |   br label %for.body4
# | 
# | for.cond.cleanup:                                 ; preds = %for.body4.split
# |   ret void
# | 
# | for.body4:                                        ; preds = %for.body4.preheader, %for.body4.split
# |   %indvars.iv = phi i64 [ %0, %for.body4.split ], [ 0, %for.body4.preheader ]
# |   br label %for.cond1.preheader.preheader
# | 
# | for.body4.split1:                                 ; preds = %for.cond1.preheader
# |   %arrayidx6 = getelementptr inbounds [3 x [3 x i32]], ptr @A10, i64 0, i64 %indvars.iv, i64 %indvars.iv26
# |   %tmp = trunc i64 %indvars.iv26 to i32
# |   store i32 %tmp, ptr %arrayidx6, align 4
# |   %arrayidx10 = getelementptr inbounds [3 x [3 x i32]], ptr @A10, i64 0, i64 %indvars.iv, i64 %indvars.iv.next27
# |   %tmp1 = trunc i64 %indvars.iv to i32
# |   store i32 %tmp1, ptr %arrayidx10, align 4
# |   %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
# |   %exitcond = icmp ne i64 %indvars.iv.next, 3
# |   br label %for.cond.loopexit
# | 
# | for.body4.split:                                  ; preds = %for.cond.loopexit
# |   %0 = add nuw nsw i64 %indvars.iv, 1
# |   %1 = icmp ne i64 %0, 3
# |   br i1 %1, label %for.body4, label %for.cond.cleanup
# | }
# | 
# | define void @test04(i32 %k, i32 %N) {
# | entry:
# |   %cmp30 = icmp sgt i32 %N, 0
# |   br i1 %cmp30, label %for.body.lr.ph, label %for.end17
# | 
# | for.body.lr.ph:                                   ; preds = %entry
# |   %0 = add i32 %N, -1
# |   %1 = zext i32 %k to i64
# |   br label %for.body
# | 
# | for.body:                                         ; preds = %for.inc15, %for.body.lr.ph
# |   %indvars.iv32 = phi i64 [ 0, %for.body.lr.ph ], [ %indvars.iv.next33, %for.inc15 ]
# |   %2 = add nsw i64 %indvars.iv32, %1
# |   %arrayidx = getelementptr inbounds [100 x i32], ptr @C, i64 0, i64 %indvars.iv32
# |   %3 = trunc i64 %2 to i32
# |   store i32 %3, ptr %arrayidx, align 4
# |   br label %for.body3
# | 
# | for.body3:                                        ; preds = %for.body3, %for.body
# |   %indvars.iv = phi i64 [ 0, %for.body ], [ %indvars.iv.next, %for.body3 ]
# |   %arrayidx7 = getelementptr inbounds [100 x [100 x i32]], ptr @A, i64 0, i64 %indvars.iv32, i64 %indvars.iv
# |   %4 = load i32, ptr %arrayidx7, align 4
# |   %add10 = add nsw i32 %3, %4
# |   store i32 %add10, ptr %arrayidx7, align 4
# |   %indvars.iv.next = add nuw nsw i64 %indvars.iv, 1
# |   %lftr.wideiv = trunc i64 %indvars.iv to i32
# |   %exitcond = icmp eq i32 %lftr.wideiv, %0
# |   br i1 %exitcond, label %for.inc15, label %for.body3
# | 
# | for.inc15:                                        ; preds = %for.body3
# |   %indvars.iv.next33 = add nuw nsw i64 %indvars.iv32, 1
# |   %lftr.wideiv35 = trunc i64 %indvars.iv32 to i32
# |   %exitcond36 = icmp eq i32 %lftr.wideiv35, %0
# |   br i1 %exitcond36, label %for.end17.loopexit, label %for.body
# | 
# | for.end17.loopexit:                               ; preds = %for.inc15
# |   br label %for.end17
# | 
# | for.end17:                                        ; preds = %for.end17.loopexit, %entry
# |   ret void
# | }
# `-----------------------------
# .---command stderr------------
# | remark: <unknown>:0:0: All loops have dependencies in all directions.
# | remark: <unknown>:0:0: All loops have dependencies in all directions.
# | remark: <unknown>:0:0: Loop interchanged with enclosing loop.
# | remark: <unknown>:0:0: All loops have dependencies in all directions.
# `-----------------------------
# RUN: at line 11
cat /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/loop-interchange-optimization-remarks.ll.tmp |  /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --check-prefix=DELIN /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll
# executed command: cat /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/loop-interchange-optimization-remarks.ll.tmp
# note: command had no output on stdout or stderr
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck --check-prefix=DELIN /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll:87:15: error: DELIN-NEXT: expected string not found in input
# | ; DELIN-NEXT: Name: InterchangeNotProfitable
# |               ^
# | <stdin>:9:23: note: scanning from here
# | Pass: loop-interchange
# |                       ^
# | <stdin>:38:1: note: possible intended match here
# | Name: Interchanged
# | ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/loop-interchange-optimization-remarks.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            1: --- !Analysis 
# |            2: Pass: loop-interchange 
# |            3: Name: Dependence 
# |            4: Function: test01 
# |            5: Args: 
# |            6:  - String: Computed dependence info, invoking the transform. 
# |            7: ... 
# |            8: --- !Missed 
# |            9: Pass: loop-interchange 
# | next:87'0                           X error: no match found
# |           10: Name: Dependence 
# | next:87'0     ~~~~~~~~~~~~~~~~~
# |           11: Function: test01 
# | next:87'0     ~~~~~~~~~~~~~~~~~
# |           12: Args: 
# | next:87'0     ~~~~~~
# |           13:  - String: All loops have dependencies in all directions. 
# | next:87'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           14: ... 
# | next:87'0     ~~~~
# |            .
# |            .
# |            .
# |           33: Args: 
# | next:87'0     ~~~~~~
# |           34:  - String: Computed dependence info, invoking the transform. 
# | next:87'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           35: ... 
# | next:87'0     ~~~~
# |           36: --- !Passed 
# | next:87'0     ~~~~~~~~~~~~
# |           37: Pass: loop-interchange 
# | next:87'0     ~~~~~~~~~~~~~~~~~~~~~~~
# |           38: Name: Interchanged 
# | next:87'0     ~~~~~~~~~~~~~~~~~~~
# | next:87'1     ?                   possible intended match
# |           39: Function: test03 
# | next:87'0     ~~~~~~~~~~~~~~~~~
# |           40: Args: 
# | next:87'0     ~~~~~~
# |           41:  - String: Loop interchanged with enclosing loop. 
# | next:87'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           42: ... 
# | next:87'0     ~~~~
# |           43: --- !Analysis 
# | next:87'0     ~~~~~~~~~~~~~~
# |            .
# |            .
# |            .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Transforms/LoopInterchange/profitability-vectorization-heuristic.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll -passes=loop-interchange -cache-line-size=64      -pass-remarks-output=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization-heuristic.ll.tmp -disable-output -loop-interchange-profitabilities=vectorize
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-interchange -cache-line-size=64 -pass-remarks-output=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization-heuristic.ll.tmp -disable-output -loop-interchange-profitabilities=vectorize
# note: command had no output on stdout or stderr
# RUN: at line 3
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -input-file /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization-heuristic.ll.tmp /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -input-file /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization-heuristic.ll.tmp /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll:121:10: error: CHECK: expected string not found in input
# | ; CHECK: --- !Passed
# |          ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization-heuristic.ll.tmp:27:83: note: scanning from here
# |  - String: Insufficient information to calculate the cost of loop for interchange.
# |                                                                                   ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization-heuristic.ll.tmp:36:1: note: possible intended match here
# | --- !Missed
# | ^
# | 
# | Input file: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization-heuristic.ll.tmp
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/profitability-vectorization-heuristic.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              .
# |              .
# |              .
# |             22: --- !Missed 
# |             23: Pass: loop-interchange 
# |             24: Name: InterchangeNotProfitable 
# |             25: Function: interchange_unnecesasry_for_vectorization 
# |             26: Args: 
# |             27:  - String: Insufficient information to calculate the cost of loop for interchange. 
# | check:121'0                                                                                       X error: no match found
# |             28: ... 
# | check:121'0     ~~~~
# |             29: --- !Analysis 
# | check:121'0     ~~~~~~~~~~~~~~
# |             30: Pass: loop-interchange 
# | check:121'0     ~~~~~~~~~~~~~~~~~~~~~~~
# |             31: Name: Dependence 
# | check:121'0     ~~~~~~~~~~~~~~~~~
# |             32: Function: interchange_necessary_for_vectorization2 
# | check:121'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             33: Args: 
# | check:121'0     ~~~~~~
# |             34:  - String: Computed dependence info, invoking the transform. 
# | check:121'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             35: ... 
# | check:121'0     ~~~~
# |             36: --- !Missed 
# | check:121'0     ~~~~~~~~~~~~
# | check:121'1     ?            possible intended match
# |             37: Pass: loop-interchange 
# | check:121'0     ~~~~~~~~~~~~~~~~~~~~~~~
# |             38: Name: Dependence 
# | check:121'0     ~~~~~~~~~~~~~~~~~
# |             39: Function: interchange_necessary_for_vectorization2 
# | check:121'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             40: Args: 
# | check:121'0     ~~~~~~
# |             41:  - String: Cannot interchange loops due to dependences. 
# | check:121'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Transforms/LoopInterchange/profitability-vectorization.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/profitability-vectorization.ll -passes=loop-interchange -cache-line-size=64      -pass-remarks-output=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization.ll.tmp -disable-output
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -passes=loop-interchange -cache-line-size=64 -pass-remarks-output=/home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization.ll.tmp -disable-output
# note: command had no output on stdout or stderr
# RUN: at line 3
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -input-file /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization.ll.tmp --check-prefix=PROFIT-CACHE /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/profitability-vectorization.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck -input-file /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization.ll.tmp --check-prefix=PROFIT-CACHE /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/profitability-vectorization.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/profitability-vectorization.ll:27:22: error: PROFIT-CACHE-NEXT: expected string not found in input
# | ; PROFIT-CACHE-NEXT: Name: InterchangeNotProfitable
# |                      ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization.ll.tmp:9:23: note: scanning from here
# | Pass: loop-interchange
# |                       ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization.ll.tmp:13:10: note: possible intended match here
# |  - String: Cannot interchange loops due to dependences.
# |          ^
# | 
# | Input file: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/test/Transforms/LoopInterchange/Output/profitability-vectorization.ll.tmp
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopInterchange/profitability-vectorization.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            1: --- !Analysis 
# |            2: Pass: loop-interchange 
# |            3: Name: Dependence 
# |            4: Function: f 
# |            5: Args: 
# |            6:  - String: Computed dependence info, invoking the transform. 
# |            7: ... 
# |            8: --- !Missed 
# |            9: Pass: loop-interchange 
# | next:27'0                           X error: no match found
# |           10: Name: Dependence 
# | next:27'0     ~~~~~~~~~~~~~~~~~
# |           11: Function: f 
# | next:27'0     ~~~~~~~~~~~~
# |           12: Args: 
# | next:27'0     ~~~~~~
# |           13:  - String: Cannot interchange loops due to dependences. 
# | next:27'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:27'1              ?                                               possible intended match
# |           14: ... 
# | next:27'0     ~~~~
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>
<details>
<summary>LLVM.Transforms/LoopUnrollAndJam/dependencies_multidims.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -da-disable-delinearization-checks -passes=loop-unroll-and-jam -allow-unroll-and-jam -unroll-and-jam-count=4 < /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopUnrollAndJam/dependencies_multidims.ll -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/LoopUnrollAndJam/dependencies_multidims.ll
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -da-disable-delinearization-checks -passes=loop-unroll-and-jam -allow-unroll-and-jam -unroll-and-jam-count=4 -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/LoopUnrollAndJam/dependencies_multidims.ll
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopUnrollAndJam/dependencies_multidims.ll:53:10: error: CHECK: expected string not found in input
# | ; CHECK: %j.1 = phi
# |          ^
# | <stdin>:58:10: note: scanning from here
# |  %j = phi i32 [ %add6, %for.inner ], [ 0, %for.outer ]
# |          ^
# | <stdin>:59:2: note: possible intended match here
# |  %sum = phi i32 [ %add, %for.inner ], [ 0, %for.outer ]
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopUnrollAndJam/dependencies_multidims.ll:119:10: error: CHECK: expected string not found in input
# | ; CHECK: %j.1 = phi
# |          ^
# | <stdin>:99:10: note: scanning from here
# |  %j = phi i32 [ %add6, %for.inner ], [ 0, %for.outer ]
# |          ^
# | <stdin>:100:2: note: possible intended match here
# |  %sum = phi i32 [ %add, %for.inner ], [ 0, %for.outer ]
# |  ^
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopUnrollAndJam/dependencies_multidims.ll:240:10: error: CHECK: expected string not found in input
# | ; CHECK: %k.1 = phi
# |          ^
# | <stdin>:178:10: note: scanning from here
# |  %k = phi i64 [ 0, %for.j ], [ %inc.k, %for.k ]
# |          ^
# | <stdin>:182:4: note: possible intended match here
# |  %sub.j = sub nsw i64 %j, 1
# |    ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/llvm/test/Transforms/LoopUnrollAndJam/dependencies_multidims.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |              .
# |              .
# |              .
# |             53: for.outer: ; preds = %for.outer.preheader, %for.latch 
# |             54:  %i = phi i32 [ %add7, %for.latch ], [ 0, %for.outer.preheader ] 
# |             55:  br label %for.inner 
# |             56:  
# |             57: for.inner: ; preds = %for.inner, %for.outer 
# |             58:  %j = phi i32 [ %add6, %for.inner ], [ 0, %for.outer ] 
# | check:53'0               X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |             59:  %sum = phi i32 [ %add, %for.inner ], [ 0, %for.outer ] 
# | check:53'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:53'1       ?                                                       possible intended match
# |             60:  %arrayidx5 = getelementptr inbounds i32, ptr %B, i32 %j 
# | check:53'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             61:  %0 = load i32, ptr %arrayidx5, align 4 
# | check:53'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             62:  %mul = mul nsw i32 %0, %i 
# | check:53'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             63:  %add = add nsw i32 %mul, %sum 
# | check:53'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |             64:  %add6 = add nuw nsw i32 %j, 1 
# | check:53'0      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |             94: for.outer: ; preds = %for.outer.preheader, %for.latch 
# |             95:  %i = phi i32 [ %add7, %for.latch ], [ 0, %for.outer.preheader ] 
# |             96:  br label %for.inner 
# |             97:  
# |             98: for.inner: ; preds = %for.inner, %for.outer 
# |             99:  %j = phi i32 [ %add6, %for.inner ], [ 0, %for.outer ] 
# | check:119'0              X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |            100:  %sum = phi i32 [ %add, %for.inner ], [ 0, %for.outer ] 
# | check:119'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:119'1      ?                                                       possible intended match
# |            101:  %arrayidx5 = getelementptr inbounds i32, ptr %B, i32 %j 
# | check:119'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            102:  %0 = load i32, ptr %arrayidx5, align 4 
# | check:119'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            103:  %mul = mul nsw i32 %0, %i 
# | check:119'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            104:  %add = add nsw i32 %mul, %sum 
# | check:119'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            105:  %add6 = add nuw nsw i32 %j, 1 
# | check:119'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# |            173: for.j: ; preds = %for.j.latch, %for.i 
# |            174:  %j = phi i64 [ 1, %for.i ], [ %inc.j, %for.j.latch ] 
# |            175:  br label %for.k 
# |            176:  
# |            177: for.k: ; preds = %for.k, %for.j 
# |            178:  %k = phi i64 [ 0, %for.j ], [ %inc.k, %for.k ] 
# | check:240'0              X~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ error: no match found
# |            179:  %arrayidx = getelementptr inbounds [100 x i32], ptr %A, i64 %j 
# | check:240'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            180:  %arrayidx7 = getelementptr inbounds [100 x i32], ptr %arrayidx, i64 0, i64 %k 
# | check:240'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            181:  %0 = load i32, ptr %arrayidx7, align 4 
# | check:240'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            182:  %sub.j = sub nsw i64 %j, 1 
# | check:240'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | check:240'1        ?                         possible intended match
# |            183:  %arrayidx8 = getelementptr inbounds [100 x i32], ptr %A, i64 %sub.j 
# | check:240'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            184:  %arrayidx9 = getelementptr inbounds [100 x i32], ptr %arrayidx8, i64 0, i64 %k 
# | check:240'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            185:  store i32 %0, ptr %arrayidx9, align 4 
# | check:240'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            186:  %inc.k = add nsw i64 %k, 1 
# | check:240'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |            187:  %cmp.k = icmp slt i64 %inc.k, 100 
# | check:240'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |              .
# |              .
# |              .
# | >>>>>>
# `-----------------------------
# error: command failed with exit status: 1

--

```
</details>

### Polly
<details>
<summary>Polly.CodeGen/invariant-load-dimension.ll</summary>

```
Exit Code: 1

Command Output (stdout):
--
# RUN: at line 1
/home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt  -polly-process-unprofitable  -polly-remarks-minimal  -polly-use-llvm-names  -polly-import-jscop-dir=/home/gha/actions-runner/_work/llvm-project/llvm-project/polly/test/CodeGen  -polly-codegen-verify  -polly-process-unprofitable -polly-invariant-load-hoisting '-passes=polly-custom<scops>' -polly-print-scops -disable-output < /home/gha/actions-runner/_work/llvm-project/llvm-project/polly/test/CodeGen/invariant-load-dimension.ll 2>&1 | /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/FileCheck /home/gha/actions-runner/_work/llvm-project/llvm-project/polly/test/CodeGen/invariant-load-dimension.ll -check-prefix=SCOPS
# executed command: /home/gha/actions-runner/_work/llvm-project/llvm-project/build/bin/opt -polly-process-unprofitable -polly-remarks-minimal -polly-use-llvm-names -polly-import-jscop-dir=/home/gha/actions-runner/_work/llvm-project/llvm-project/polly/test/CodeGen -polly-codegen-verify -polly-process-unprofitable -polly-invariant-load-hoisting '-passes=polly-custom<scops>' -polly-print-scops -disable-output
# 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/polly/test/CodeGen/invariant-load-dimension.ll -check-prefix=SCOPS
# .---command stderr------------
# | /home/gha/actions-runner/_work/llvm-project/llvm-project/polly/test/CodeGen/invariant-load-dimension.ll:16:15: error: SCOPS-NEXT: expected string not found in input
# | ; SCOPS-NEXT: [l2, l1] -> { Stmt_for_body_lr_ph_i[] -> MemRef_cpi[0, 1] };
# |               ^
# | <stdin>:11:50: note: scanning from here
# |  ReadAccess := [Reduction Type: NONE] [Scalar: 0]
# |                                                  ^
# | <stdin>:12:2: note: possible intended match here
# |  [l2, l1] -> { Stmt_for_body_lr_ph_i[] -> MemRef_cpi[0, 0] };
# |  ^
# | 
# | Input file: <stdin>
# | Check file: /home/gha/actions-runner/_work/llvm-project/llvm-project/polly/test/CodeGen/invariant-load-dimension.ll
# | 
# | -dump-input=help explains the following input dump.
# | 
# | Input was:
# | <<<<<<
# |            .
# |            .
# |            .
# |            6:  Max Loop Depth: 1 
# |            7:  Invariant Accesses: { 
# |            8:  ReadAccess := [Reduction Type: NONE] [Scalar: 0] 
# |            9:  [l2, l1] -> { Stmt_for_body_i[i0] -> MemRef_cpi[0, 0] }; 
# |           10:  Execution Context: [l2, l1] -> { : } 
# |           11:  ReadAccess := [Reduction Type: NONE] [Scalar: 0] 
# | next:16'0                                                      X error: no match found
# |           12:  [l2, l1] -> { Stmt_for_body_lr_ph_i[] -> MemRef_cpi[0, 0] }; 
# | next:16'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# | next:16'1      ?                                                             possible intended match
# |           13:  Execution Context: [l2, l1] -> { : l2 > 0 } 
# | next:16'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           14:  } 
# | next:16'0     ~~~
# |           15:  Context: 
# | next:16'0     ~~~~~~~~~~
# |           16:  [l2, l1] -> { : -2147483648 <= l2 <= 2147483647 and -2147483648 <= l1 <= 2147483647 } 
# | next:16'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# |           17:  Assumed Context: 
# | next:16'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/175158


More information about the llvm-commits mailing list