Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[llvm][CodeGen] Address the issue of multiple resource reservations in window scheduling #100301

Merged
merged 2 commits into from
Aug 2, 2024

Conversation

kaiyan96
Copy link
Contributor

@kaiyan96 kaiyan96 commented Jul 24, 2024

Address the issue of multiple resource reservations in window scheduling

@kaiyan96
Copy link
Contributor Author

kaiyan96 commented Jul 24, 2024

We identified an issue with multiple resource reservations in window scheduling:

  • This was overlooked in #99454 when the PR was separated from #99429.

Update
This PR is reverted at 101658
A Fixed PR is at 101665

@huaatian huaatian requested a review from arsenm July 24, 2024 06:18
@huaatian huaatian added the mi-sched machine instruction scheduler label Jul 24, 2024
@arsenm
Copy link
Contributor

arsenm commented Jul 24, 2024

The problem is difficult to describe at the IR level, making it challenging to create a corresponding test case.

This is what MIR is for?

@arsenm arsenm requested a review from huaatian July 24, 2024 07:08
@kaiyan96 kaiyan96 force-pushed the bugfix_ws_multi_resource_reserve branch from 4064349 to 116575b Compare July 25, 2024 09:43
@llvmbot
Copy link
Member

llvmbot commented Jul 25, 2024

@llvm/pr-subscribers-backend-hexagon

Author: Kai Yan (kaiyan96)

Changes

Address the issue of multiple resource reservations in window scheduling


Full diff: https://github.com/llvm/llvm-project/pull/100301.diff

2 Files Affected:

  • (modified) llvm/lib/CodeGen/WindowScheduler.cpp (-1)
  • (added) llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir (+99)
diff --git a/llvm/lib/CodeGen/WindowScheduler.cpp b/llvm/lib/CodeGen/WindowScheduler.cpp
index cb878f7425481..c42c81b045807 100644
--- a/llvm/lib/CodeGen/WindowScheduler.cpp
+++ b/llvm/lib/CodeGen/WindowScheduler.cpp
@@ -451,7 +451,6 @@ int WindowScheduler::calculateMaxCycle(ScheduleDAGInstrs &DAG,
       }
       RM.reserveResources(*SU, CurCycle);
     }
-    RM.reserveResources(*SU, CurCycle);
     OriToCycle[getOriMI(&MI)] = CurCycle;
     LLVM_DEBUG(dbgs() << "\tCycle " << CurCycle << " [S."
                       << getOriStage(getOriMI(&MI), Offset) << "]: " << MI);
diff --git a/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir b/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
new file mode 100644
index 0000000000000..deae31ffe9f95
--- /dev/null
+++ b/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
@@ -0,0 +1,99 @@
+# REQUIRES: asserts
+# RUN: llc --march=hexagon %s -run-pass=pipeliner -debug-only=pipeliner \
+# RUN: -window-sched=force -filetype=null -verify-machineinstrs 2>&1 \
+# RUN: -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1 \
+# RUN: | FileCheck %s
+
+# We want to verify that all three V6_vaddw instructions are emitted in the same cycle.
+# CHECK: Best window offset is {{[0-9]+}} and Best II is {{[0-9]+}}.
+# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
+# CHECK-NEXT: Cycle [[CycleNum]] [[[StageNum]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
+# CHECK-NEXT: Cycle [[CycleNum]] [[[StageNum]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
+
+--- |
+  define void @add_parallel(i32 %N, ptr noalias %x, ptr noalias %y) {
+  entry:
+    %isZeroLength = icmp eq i32 %N, 0
+    br i1 %isZeroLength, label %loop.exit, label %loop.preheader
+  
+  loop.preheader:                                   ; preds = %entry
+    %half_splat = tail call <32 x i32> @llvm.hexagon.V6.lvsplatw.128B(i32 1056964608)
+    %one_splat = tail call <32 x i32> @llvm.hexagon.V6.lvsplatw.128B(i32 1065353216)
+    %two_splat = tail call <32 x i32> @llvm.hexagon.V6.lvsplatw.128B(i32 1073741824)
+    br label %loop.body
+  
+  loop.exit:                                        ; preds = %loop.body, %entry
+    ret void
+  
+  loop.body:                                        ; preds = %loop.body, %loop.preheader
+    %lsr.iv1 = phi ptr [ %cgep2, %loop.body ], [ %x, %loop.preheader ]
+    %lsr.iv = phi ptr [ %cgep1, %loop.body ], [ %y, %loop.preheader ]
+    %index = phi i32 [ 0, %loop.preheader ], [ %index.next, %loop.body ]
+    %vec_x1 = load <32 x i32>, ptr %lsr.iv1, align 128
+    %vec_add_1 = tail call <32 x i32> @llvm.hexagon.V6.vaddw.128B(<32 x i32> %one_splat, <32 x i32> %vec_x1)
+    %vec_add_2 = tail call <32 x i32> @llvm.hexagon.V6.vaddw.128B(<32 x i32> %half_splat, <32 x i32> %vec_x1)
+    %vec_add_3 = tail call <32 x i32> @llvm.hexagon.V6.vaddw.128B(<32 x i32> %two_splat, <32 x i32> %vec_x1)
+    %vec_add_4 = tail call <32 x i32> @llvm.hexagon.V6.vaddw.128B(<32 x i32> %vec_add_1, <32 x i32> %vec_add_2)
+    %vec_add_5 = tail call <32 x i32> @llvm.hexagon.V6.vaddw.128B(<32 x i32> %vec_add_1, <32 x i32> %vec_add_3)
+    %vec_add_6 = tail call <32 x i32> @llvm.hexagon.V6.vaddw.128B(<32 x i32> %vec_add_5, <32 x i32> %vec_add_4)
+    store <32 x i32> %vec_add_6, ptr %lsr.iv, align 128
+    %index.next = add nuw i32 %index, 32
+    %continue = icmp ult i32 %index.next, %N
+    %cgep1 = getelementptr i8, ptr %lsr.iv, i32 128
+    %cgep2 = getelementptr i8, ptr %lsr.iv1, i32 128
+    br i1 %continue, label %loop.body, label %loop.exit
+  }
+  
+  declare <32 x i32> @llvm.hexagon.V6.lvsplatw.128B(i32) 
+  declare <32 x i32> @llvm.hexagon.V6.vaddw.128B(<32 x i32>, <32 x i32>) 
+...
+---
+name:            add_parallel
+tracksRegLiveness: true
+body:             |
+  bb.0.entry:
+    successors: %bb.2(0x30000000), %bb.1(0x50000000)
+    liveins: $r0, $r1, $r2
+  
+    %11:intregs = COPY $r2
+    %10:intregs = COPY $r1
+    %9:intregs = COPY $r0
+    %12:predregs = C2_cmpeqi %9, 0
+    J2_jumpt killed %12, %bb.2, implicit-def dead $pc
+    J2_jump %bb.1, implicit-def dead $pc
+  
+  bb.1.loop.preheader:
+    successors: %bb.3(0x80000000)
+  
+    %14:intregs = A2_tfrsi 1056964608
+    %0:hvxvr = V6_lvsplatw killed %14
+    %15:intregs = A2_tfrsi 1065353216
+    %1:hvxvr = V6_lvsplatw killed %15
+    %16:intregs = A2_tfrsi 1073741824
+    %2:hvxvr = V6_lvsplatw killed %16
+    %25:intregs = A2_addi %9, 31
+    %26:intregs = S2_lsr_i_r %25, 5
+    %27:intregs = COPY %26
+    J2_loop0r %bb.3, %27, implicit-def $lc0, implicit-def $sa0, implicit-def $usr
+    J2_jump %bb.3, implicit-def dead $pc
+  
+  bb.2.loop.exit:
+    PS_jmpret $r31, implicit-def dead $pc
+  
+  bb.3.loop.body (machine-block-address-taken):
+    successors: %bb.3(0x7c000000), %bb.2(0x04000000)
+  
+    %3:intregs = PHI %10, %bb.1, %8, %bb.3
+    %4:intregs = PHI %11, %bb.1, %7, %bb.3
+    %17:hvxvr, %8:intregs = V6_vL32b_pi %3, 128 :: (load (s1024) from %ir.lsr.iv1)
+    %18:hvxvr = V6_vaddw %1, %17
+    %19:hvxvr = V6_vaddw %0, %17
+    %20:hvxvr = V6_vaddw %2, %17
+    %21:hvxvr = V6_vaddw %18, killed %19
+    %22:hvxvr = V6_vaddw %18, killed %20
+    %23:hvxvr = V6_vaddw killed %22, killed %21
+    %7:intregs = V6_vS32b_pi %4, 128, killed %23 :: (store (s1024) into %ir.lsr.iv)
+    ENDLOOP0 %bb.3, implicit-def $pc, implicit-def $lc0, implicit $sa0, implicit $lc0
+    J2_jump %bb.2, implicit-def dead $pc
+
+...

successors: %bb.2(0x30000000), %bb.1(0x50000000)
liveins: $r0, $r1, $r2

%11:intregs = COPY $r2
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

run-pass=none to cleanup register numbers

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated.


%3:intregs = PHI %10, %bb.1, %8, %bb.3
%4:intregs = PHI %11, %bb.1, %7, %bb.3
%17:hvxvr, %8:intregs = V6_vL32b_pi %3, 128 :: (load (s1024) from %ir.lsr.iv1)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you drop the IR references and IR section?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

MMO will reference this IR, and we require MMO to get rid of the barrier dependency.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You can keep the MMO without the IR reference. You only need the IR reference if this relies on AA, which it ideally wouldn't

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I apologize for our previous response not being very clear. In the window scheduler, we need the noalias attribute in the IR to ensure that there are no barrier dependencies between memory access instructions. This involves performing AA. Therefore, we believe that the IR code is necessary. Or, is there any other ways to achieve this goal?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could also restructure it so areMemAccessesTrivially disjoint can detect the lack of aliasing without relying on the AA

@kaiyan96
Copy link
Contributor Author

kaiyan96 commented Jul 25, 2024

Before this patch:image

  • We observe that V6_vaddw fails to emit all three instructions in parallel if the window scheduler runs reserveResources multiple times.

After this patch:image

  • Now, all three V6_vaddw can be emit in the same cycle.

@@ -451,7 +451,6 @@ int WindowScheduler::calculateMaxCycle(ScheduleDAGInstrs &DAG,
}
RM.reserveResources(*SU, CurCycle);
}
RM.reserveResources(*SU, CurCycle);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This line is really redundant. It will cause the instruction to occupy too many resources and fail to emit properly.

@androm3da androm3da requested a review from iajbar July 29, 2024 17:03
@kaiyan96
Copy link
Contributor Author

kaiyan96 commented Aug 1, 2024

@arsenm @huaatian @iajbar Are there any other issues for this PR?

@huaatian huaatian merged commit aa0a33b into llvm:main Aug 2, 2024
7 checks passed
@llvm-ci
Copy link
Collaborator

llvm-ci commented Aug 2, 2024

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

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

Here is the relevant piece of the build log for the reference:

Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llc --march=hexagon /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/llc --march=hexagon /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
+ /b/1/clang-x86_64-debian-fast/llvm.obj/bin/FileCheck /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
/b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: error: CHECK-NEXT: is not on the line after the previous match
# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
              ^
<stdin>:1003:2: note: 'next' match was here
 Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
 ^
<stdin>:1000:42: note: previous match ended here
Best window offset is 6 and Best II is 2.
                                         ^
<stdin>:1001:1: note: non-matching line after previous match is here
 Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
^

Input file: <stdin>
Check file: /b/1/clang-x86_64-debian-fast/llvm.src/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
        .
        .
        .
      998: Current window Offset is 9 and II is 4. 
      999:  
     1000: Best window offset is 6 and Best II is 2. 
     1001:  Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3 
     1002:  Cycle 0 [S.0]: %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) 
     1003:  Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr 
next:9      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
     1004:  Cycle 0 [S.1]: %22:hvxvr = V6_vaddw %18:hvxvr, %20:hvxvr 
     1005:  Cycle 0 [S.0]: %18:hvxvr = V6_vaddw %7:hvxvr, %17:hvxvr 
     1006:  Cycle 1 [S.0]: %15:intregs = PHI %0:intregs, %bb.1, %16:intregs, %bb.3 
     1007:  Cycle 1 [S.0]: %19:hvxvr = V6_vaddw %5:hvxvr, %17:hvxvr 
     1008:  Cycle 1 [S.1]: %23:hvxvr = V6_vaddw %22:hvxvr, %21:hvxvr 
        .
        .
        .
>>>>>>

--

...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Aug 2, 2024

LLVM Buildbot has detected a new failure on builder ml-opt-devrel-x86-64 running on ml-opt-devrel-x86-64-b1 while building llvm at step 6 "test-build-unified-tree-check-all".

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

Here is the relevant piece of the build log for the reference:

Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /b/ml-opt-devrel-x86-64-b1/build/bin/llc --march=hexagon /b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /b/ml-opt-devrel-x86-64-b1/build/bin/FileCheck /b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /b/ml-opt-devrel-x86-64-b1/build/bin/FileCheck /b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /b/ml-opt-devrel-x86-64-b1/build/bin/llc --march=hexagon /b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
/b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: error: CHECK-NEXT: is not on the line after the previous match
# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
              ^
<stdin>:1003:2: note: 'next' match was here
 Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
 ^
<stdin>:1000:42: note: previous match ended here
Best window offset is 6 and Best II is 2.
                                         ^
<stdin>:1001:1: note: non-matching line after previous match is here
 Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
^

Input file: <stdin>
Check file: /b/ml-opt-devrel-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
        .
        .
        .
      998: Current window Offset is 9 and II is 4. 
      999:  
     1000: Best window offset is 6 and Best II is 2. 
     1001:  Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3 
     1002:  Cycle 0 [S.0]: %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) 
     1003:  Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr 
next:9      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
     1004:  Cycle 0 [S.1]: %22:hvxvr = V6_vaddw %18:hvxvr, %20:hvxvr 
     1005:  Cycle 0 [S.0]: %18:hvxvr = V6_vaddw %7:hvxvr, %17:hvxvr 
     1006:  Cycle 1 [S.0]: %15:intregs = PHI %0:intregs, %bb.1, %16:intregs, %bb.3 
     1007:  Cycle 1 [S.0]: %19:hvxvr = V6_vaddw %5:hvxvr, %17:hvxvr 
     1008:  Cycle 1 [S.1]: %23:hvxvr = V6_vaddw %22:hvxvr, %21:hvxvr 
        .
        .
        .
>>>>>>

--

...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Aug 2, 2024

LLVM Buildbot has detected a new failure on builder ml-opt-rel-x86-64 running on ml-opt-rel-x86-64-b1 while building llvm at step 6 "test-build-unified-tree-check-all".

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

Here is the relevant piece of the build log for the reference:

Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /b/ml-opt-rel-x86-64-b1/build/bin/llc --march=hexagon /b/ml-opt-rel-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /b/ml-opt-rel-x86-64-b1/build/bin/FileCheck /b/ml-opt-rel-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /b/ml-opt-rel-x86-64-b1/build/bin/llc --march=hexagon /b/ml-opt-rel-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
+ /b/ml-opt-rel-x86-64-b1/build/bin/FileCheck /b/ml-opt-rel-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
/b/ml-opt-rel-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: error: CHECK-NEXT: is not on the line after the previous match
# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
              ^
<stdin>:1003:2: note: 'next' match was here
 Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
 ^
<stdin>:1000:42: note: previous match ended here
Best window offset is 6 and Best II is 2.
                                         ^
<stdin>:1001:1: note: non-matching line after previous match is here
 Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
^

Input file: <stdin>
Check file: /b/ml-opt-rel-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
        .
        .
        .
      998: Current window Offset is 9 and II is 4. 
      999:  
     1000: Best window offset is 6 and Best II is 2. 
     1001:  Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3 
     1002:  Cycle 0 [S.0]: %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) 
     1003:  Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr 
next:9      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
     1004:  Cycle 0 [S.1]: %22:hvxvr = V6_vaddw %18:hvxvr, %20:hvxvr 
     1005:  Cycle 0 [S.0]: %18:hvxvr = V6_vaddw %7:hvxvr, %17:hvxvr 
     1006:  Cycle 1 [S.0]: %15:intregs = PHI %0:intregs, %bb.1, %16:intregs, %bb.3 
     1007:  Cycle 1 [S.0]: %19:hvxvr = V6_vaddw %5:hvxvr, %17:hvxvr 
     1008:  Cycle 1 [S.1]: %23:hvxvr = V6_vaddw %22:hvxvr, %21:hvxvr 
        .
        .
        .
>>>>>>

--

...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Aug 2, 2024

LLVM Buildbot has detected a new failure on builder ml-opt-dev-x86-64 running on ml-opt-dev-x86-64-b2 while building llvm at step 6 "test-build-unified-tree-check-all".

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

Here is the relevant piece of the build log for the reference:

Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /b/ml-opt-dev-x86-64-b1/build/bin/llc --march=hexagon /b/ml-opt-dev-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /b/ml-opt-dev-x86-64-b1/build/bin/FileCheck /b/ml-opt-dev-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /b/ml-opt-dev-x86-64-b1/build/bin/llc --march=hexagon /b/ml-opt-dev-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
+ /b/ml-opt-dev-x86-64-b1/build/bin/FileCheck /b/ml-opt-dev-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
/b/ml-opt-dev-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: error: CHECK-NEXT: is not on the line after the previous match
# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
              ^
<stdin>:1003:2: note: 'next' match was here
 Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
 ^
<stdin>:1000:42: note: previous match ended here
Best window offset is 6 and Best II is 2.
                                         ^
<stdin>:1001:1: note: non-matching line after previous match is here
 Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
^

Input file: <stdin>
Check file: /b/ml-opt-dev-x86-64-b1/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
        .
        .
        .
      998: Current window Offset is 9 and II is 4. 
      999:  
     1000: Best window offset is 6 and Best II is 2. 
     1001:  Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3 
     1002:  Cycle 0 [S.0]: %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) 
     1003:  Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr 
next:9      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
     1004:  Cycle 0 [S.1]: %22:hvxvr = V6_vaddw %18:hvxvr, %20:hvxvr 
     1005:  Cycle 0 [S.0]: %18:hvxvr = V6_vaddw %7:hvxvr, %17:hvxvr 
     1006:  Cycle 1 [S.0]: %15:intregs = PHI %0:intregs, %bb.1, %16:intregs, %bb.3 
     1007:  Cycle 1 [S.0]: %19:hvxvr = V6_vaddw %5:hvxvr, %17:hvxvr 
     1008:  Cycle 1 [S.1]: %23:hvxvr = V6_vaddw %22:hvxvr, %21:hvxvr 
        .
        .
        .
>>>>>>

--

...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Aug 2, 2024

LLVM Buildbot has detected a new failure on builder premerge-monolithic-linux running on premerge-linux-1 while building llvm at step 7 "test-build-unified-tree-check-all".

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

Here is the relevant piece of the build log for the reference:

Step 7 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /build/buildbot/premerge-monolithic-linux/build/bin/llc --march=hexagon /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /build/buildbot/premerge-monolithic-linux/build/bin/FileCheck /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /build/buildbot/premerge-monolithic-linux/build/bin/llc --march=hexagon /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
+ /build/buildbot/premerge-monolithic-linux/build/bin/FileCheck /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
/build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: error: CHECK-NEXT: is not on the line after the previous match
# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
              ^
<stdin>:1003:2: note: 'next' match was here
 Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
 ^
<stdin>:1000:42: note: previous match ended here
Best window offset is 6 and Best II is 2.
                                         ^
<stdin>:1001:1: note: non-matching line after previous match is here
 Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
^

Input file: <stdin>
Check file: /build/buildbot/premerge-monolithic-linux/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
        .
        .
        .
      998: Current window Offset is 9 and II is 4. 
      999:  
     1000: Best window offset is 6 and Best II is 2. 
     1001:  Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3 
     1002:  Cycle 0 [S.0]: %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) 
     1003:  Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr 
next:9      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
     1004:  Cycle 0 [S.1]: %22:hvxvr = V6_vaddw %18:hvxvr, %20:hvxvr 
     1005:  Cycle 0 [S.0]: %18:hvxvr = V6_vaddw %7:hvxvr, %17:hvxvr 
     1006:  Cycle 1 [S.0]: %15:intregs = PHI %0:intregs, %bb.1, %16:intregs, %bb.3 
     1007:  Cycle 1 [S.0]: %19:hvxvr = V6_vaddw %5:hvxvr, %17:hvxvr 
     1008:  Cycle 1 [S.1]: %23:hvxvr = V6_vaddw %22:hvxvr, %21:hvxvr 
        .
        .
        .
>>>>>>

--

...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Aug 2, 2024

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

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

Here is the relevant piece of the build log for the reference:

Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/bin/llc --march=hexagon /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/bin/FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/bin/llc --march=hexagon /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/bin/FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
�[1m/home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: �[0m�[0;1;31merror: �[0m�[1mCHECK-NEXT: is not on the line after the previous match
�[0m# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
�[0;1;32m              ^
�[0m�[1m<stdin>:1003:2: �[0m�[0;1;30mnote: �[0m�[1m'next' match was here
�[0m Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
�[0;1;32m ^
�[0m�[1m<stdin>:1000:42: �[0m�[0;1;30mnote: �[0m�[1mprevious match ended here
�[0mBest window offset is 6 and Best II is 2.
�[0;1;32m                                         ^
�[0m�[1m<stdin>:1001:1: �[0m�[0;1;30mnote: �[0m�[1mnon-matching line after previous match is here
�[0m Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
�[0;1;32m^
�[0m
Input file: <stdin>
Check file: /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
�[1m�[0m�[0;1;30m          1: �[0m�[1m�[0;1;46mSU(0): %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) �[0m
�[0;1;30m          2: �[0m�[1m�[0;1;46m # preds left : 0 �[0m
�[0;1;30m          3: �[0m�[1m�[0;1;46m # succs left : 2 �[0m
�[0;1;30m          4: �[0m�[1m�[0;1;46m # rdefs left : 0 �[0m
�[0;1;30m          5: �[0m�[1m�[0;1;46m Latency : 1 �[0m
�[0;1;30m          6: �[0m�[1m�[0;1;46m Depth : 0 �[0m
�[0;1;30m          7: �[0m�[1m�[0;1;46m Height : 3 �[0m
�[0;1;30m          8: �[0m�[1m�[0;1;46m Successors: �[0m
�[0;1;30m          9: �[0m�[1m�[0;1;46m SU(3): Data Latency=1 Reg=%17 �[0m
�[0;1;30m         10: �[0m�[1m�[0;1;46m SU(2): Data Latency=1 Reg=%17 �[0m
�[0;1;30m         11: �[0m�[1m�[0;1;46m SU(1): Data Latency=0 Reg=%17 �[0m
�[0;1;30m         12: �[0m�[1m�[0;1;46m ExitSU: Data Latency=1 Reg=%14 �[0m
�[0;1;30m         13: �[0m�[1m�[0;1;46m Pressure Diff : HvxVR -1 �[0m
�[0;1;30m         14: �[0m�[1m�[0;1;46m Single Issue : false; �[0m
�[0;1;30m         15: �[0m�[1m�[0;1;46mSU(1): %18:hvxvr = V6_vaddw %7:hvxvr, %17:hvxvr �[0m
�[0;1;30m         16: �[0m�[1m�[0;1;46m # preds left : 0 �[0m
�[0;1;30m         17: �[0m�[1m�[0;1;46m # succs left : 0 �[0m
�[0;1;30m         18: �[0m�[1m�[0;1;46m # rdefs left : 0 �[0m
�[0;1;30m         19: �[0m�[1m�[0;1;46m Latency : 1 �[0m
�[0;1;30m         20: �[0m�[1m�[0;1;46m Depth : 0 �[0m
�[0;1;30m         21: �[0m�[1m�[0;1;46m Height : 2 �[0m
�[0;1;30m         22: �[0m�[1m�[0;1;46m Predecessors: �[0m
...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Aug 2, 2024

LLVM Buildbot has detected a new failure on builder llvm-clang-x86_64-expensive-checks-debian running on gribozavr4 while building llvm at step 6 "test-build-unified-tree-check-all".

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

Here is the relevant piece of the build log for the reference:

Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llc --march=hexagon /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/FileCheck /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/llc --march=hexagon /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
+ /b/1/llvm-clang-x86_64-expensive-checks-debian/build/bin/FileCheck /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
/b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: error: CHECK-NEXT: is not on the line after the previous match
# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
              ^
<stdin>:1003:2: note: 'next' match was here
 Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
 ^
<stdin>:1000:42: note: previous match ended here
Best window offset is 6 and Best II is 2.
                                         ^
<stdin>:1001:1: note: non-matching line after previous match is here
 Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
^

Input file: <stdin>
Check file: /b/1/llvm-clang-x86_64-expensive-checks-debian/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
        .
        .
        .
      998: Current window Offset is 9 and II is 4. 
      999:  
     1000: Best window offset is 6 and Best II is 2. 
     1001:  Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3 
     1002:  Cycle 0 [S.0]: %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) 
     1003:  Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr 
next:9      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
     1004:  Cycle 0 [S.1]: %22:hvxvr = V6_vaddw %18:hvxvr, %20:hvxvr 
     1005:  Cycle 0 [S.0]: %18:hvxvr = V6_vaddw %7:hvxvr, %17:hvxvr 
     1006:  Cycle 1 [S.0]: %15:intregs = PHI %0:intregs, %bb.1, %16:intregs, %bb.3 
     1007:  Cycle 1 [S.0]: %19:hvxvr = V6_vaddw %5:hvxvr, %17:hvxvr 
     1008:  Cycle 1 [S.1]: %23:hvxvr = V6_vaddw %22:hvxvr, %21:hvxvr 
        .
        .
        .
>>>>>>

--

...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Aug 2, 2024

LLVM Buildbot has detected a new failure on builder clang-debian-cpp20 running on clang-debian-cpp20 while building llvm at step 6 "test-build-unified-tree-check-all".

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

Here is the relevant piece of the build log for the reference:

Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /vol/worker/clang-debian-cpp20/clang-debian-cpp20/build/bin/llc --march=hexagon /vol/worker/clang-debian-cpp20/clang-debian-cpp20/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /vol/worker/clang-debian-cpp20/clang-debian-cpp20/build/bin/FileCheck /vol/worker/clang-debian-cpp20/clang-debian-cpp20/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /vol/worker/clang-debian-cpp20/clang-debian-cpp20/build/bin/llc --march=hexagon /vol/worker/clang-debian-cpp20/clang-debian-cpp20/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
+ /vol/worker/clang-debian-cpp20/clang-debian-cpp20/build/bin/FileCheck /vol/worker/clang-debian-cpp20/clang-debian-cpp20/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
/vol/worker/clang-debian-cpp20/clang-debian-cpp20/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: error: CHECK-NEXT: is not on the line after the previous match
# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
              ^
<stdin>:1003:2: note: 'next' match was here
 Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
 ^
<stdin>:1000:42: note: previous match ended here
Best window offset is 6 and Best II is 2.
                                         ^
<stdin>:1001:1: note: non-matching line after previous match is here
 Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
^

Input file: <stdin>
Check file: /vol/worker/clang-debian-cpp20/clang-debian-cpp20/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
        .
        .
        .
      998: Current window Offset is 9 and II is 4. 
      999:  
     1000: Best window offset is 6 and Best II is 2. 
     1001:  Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3 
     1002:  Cycle 0 [S.0]: %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) 
     1003:  Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr 
next:9      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
     1004:  Cycle 0 [S.1]: %22:hvxvr = V6_vaddw %18:hvxvr, %20:hvxvr 
     1005:  Cycle 0 [S.0]: %18:hvxvr = V6_vaddw %7:hvxvr, %17:hvxvr 
     1006:  Cycle 1 [S.0]: %15:intregs = PHI %0:intregs, %bb.1, %16:intregs, %bb.3 
     1007:  Cycle 1 [S.0]: %19:hvxvr = V6_vaddw %5:hvxvr, %17:hvxvr 
     1008:  Cycle 1 [S.1]: %23:hvxvr = V6_vaddw %22:hvxvr, %21:hvxvr 
        .
        .
        .
>>>>>>

--

...

@llvm-ci
Copy link
Collaborator

llvm-ci commented Aug 2, 2024

LLVM Buildbot has detected a new failure on builder clang-ppc64le-linux-test-suite running on ppc64le-clang-test-suite while building llvm at step 6 "test-build-unified-tree-check-all".

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

Here is the relevant piece of the build log for the reference:

Step 6 (test-build-unified-tree-check-all) failure: test (failure)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-test-suite/clang-ppc64le-test-suite/build/bin/llc --march=hexagon /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-test-suite/clang-ppc64le-test-suite/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-test-suite/clang-ppc64le-test-suite/build/bin/FileCheck /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-test-suite/clang-ppc64le-test-suite/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-test-suite/clang-ppc64le-test-suite/build/bin/llc --march=hexagon /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-test-suite/clang-ppc64le-test-suite/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
+ /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-test-suite/clang-ppc64le-test-suite/build/bin/FileCheck /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-test-suite/clang-ppc64le-test-suite/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
/home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-test-suite/clang-ppc64le-test-suite/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: error: CHECK-NEXT: is not on the line after the previous match
# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
              ^
<stdin>:1003:2: note: 'next' match was here
 Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
 ^
<stdin>:1000:42: note: previous match ended here
Best window offset is 6 and Best II is 2.
                                         ^
<stdin>:1001:1: note: non-matching line after previous match is here
 Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
^

Input file: <stdin>
Check file: /home/buildbots/llvm-external-buildbots/workers/ppc64le-clang-test-suite/clang-ppc64le-test-suite/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
        .
        .
        .
      998: Current window Offset is 9 and II is 4. 
      999:  
     1000: Best window offset is 6 and Best II is 2. 
     1001:  Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3 
     1002:  Cycle 0 [S.0]: %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) 
     1003:  Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr 
next:9      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
     1004:  Cycle 0 [S.1]: %22:hvxvr = V6_vaddw %18:hvxvr, %20:hvxvr 
     1005:  Cycle 0 [S.0]: %18:hvxvr = V6_vaddw %7:hvxvr, %17:hvxvr 
     1006:  Cycle 1 [S.0]: %15:intregs = PHI %0:intregs, %bb.1, %16:intregs, %bb.3 
     1007:  Cycle 1 [S.0]: %19:hvxvr = V6_vaddw %5:hvxvr, %17:hvxvr 
     1008:  Cycle 1 [S.1]: %23:hvxvr = V6_vaddw %22:hvxvr, %21:hvxvr 
        .
        .
        .
>>>>>>

--

...

kaiyan96 added a commit to kaiyan96/llvm-project that referenced this pull request Aug 2, 2024
huaatian pushed a commit that referenced this pull request Aug 2, 2024
@llvm-ci
Copy link
Collaborator

llvm-ci commented Aug 2, 2024

LLVM Buildbot has detected a new failure on builder sanitizer-x86_64-linux running on sanitizer-buildbot2 while building llvm at step 2 "annotate".

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

Here is the relevant piece of the build log for the reference:

Step 2 (annotate) failure: 'python ../sanitizer_buildbot/sanitizers/zorg/buildbot/builders/sanitizers/buildbot_selector.py' (failure)
...
[374/378] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.x86_64-with-call.o
[375/378] Generating Msan-x86_64-with-call-Test
[376/378] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.x86_64.o
[377/378] Generating Msan-x86_64-Test
[377/378] Running compiler_rt regression tests
llvm-lit: /b/sanitizer-x86_64-linux/build/llvm-project/llvm/utils/lit/lit/discovery.py:276: warning: input '/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/rtsan/X86_64LinuxConfig' contained no tests
llvm-lit: /b/sanitizer-x86_64-linux/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 10098 tests, 88 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
TIMEOUT: SanitizerCommon-hwasan-x86_64-Linux :: Posix/fork_threaded.c (10098 of 10098)
******************** TEST 'SanitizerCommon-hwasan-x86_64-Linux :: Posix/fork_threaded.c' FAILED ********************
Exit Code: -9
Timeout: Reached timeout of 900 seconds

Command Output (stderr):
--
RUN: at line 1: /b/sanitizer-x86_64-linux/build/build_default/./bin/clang  -gline-tables-only -fsanitize=hwaddress -fuse-ld=lld -fsanitize-hwaddress-experimental-aliasing  -m64 -funwind-tables  -I/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/test -ldl -O0 /b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/test/sanitizer_common/TestCases/Posix/fork_threaded.c -o /b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp && env HWASAN_OPTIONS=die_after_fork=0  /b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp
+ /b/sanitizer-x86_64-linux/build/build_default/./bin/clang -gline-tables-only -fsanitize=hwaddress -fuse-ld=lld -fsanitize-hwaddress-experimental-aliasing -m64 -funwind-tables -I/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/test -ldl -O0 /b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/test/sanitizer_common/TestCases/Posix/fork_threaded.c -o /b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp
+ env HWASAN_OPTIONS=die_after_fork=0 /b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp

=================================================================
==3918944==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 224 byte(s) in 2 object(s) allocated from:
    #0 0x57b1598747d8 in malloc /b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp:151:3
    #1 0x57b1599ccc9e in operator new(unsigned long) llvm-link
    #2 0x57b15986ac84 in _start (/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp+0xeec84)

Direct leak of 204 byte(s) in 1 object(s) allocated from:
    #0 0x57b15987431d in calloc /b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp:127:3
    #1 0x57b159955541 in llvm::safe_calloc(unsigned long, unsigned long) llvm-link
    #2 0x57b15986ac84 in _start (/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp+0xeec84)

Indirect leak of 152 byte(s) in 5 object(s) allocated from:
    #0 0x57b159873cd9 in aligned_alloc /b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp:58:3
    #1 0x57b159962e2f in llvm::allocate_buffer(unsigned long, unsigned long) llvm-link

SUMMARY: HWAddressSanitizer: 580 byte(s) leaked in 8 allocation(s).
==3918944==ERROR: HWAddressSanitizer: tag-mismatch on address 0x481400005140 at pc 0x57b1598800c7
READ of size 155 at 0x481400005140 tags: 01/00 (ptr/mem) in thread T2

=================================================================
==3917419==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 64 byte(s) in 1 object(s) allocated from:
    #0 0x57b1598747d8 in malloc /b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp:151:3
    #1 0x57b1599ccc9e in operator new(unsigned long) llvm-link
    #2 0x57b15986ac84 in _start (/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp+0xeec84)

Step 9 (test compiler-rt symbolizer) failure: test compiler-rt symbolizer (failure)
...
[374/378] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.x86_64-with-call.o
[375/378] Generating Msan-x86_64-with-call-Test
[376/378] Generating MSAN_INST_TEST_OBJECTS.msan_test.cpp.x86_64.o
[377/378] Generating Msan-x86_64-Test
[377/378] Running compiler_rt regression tests
llvm-lit: /b/sanitizer-x86_64-linux/build/llvm-project/llvm/utils/lit/lit/discovery.py:276: warning: input '/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/rtsan/X86_64LinuxConfig' contained no tests
llvm-lit: /b/sanitizer-x86_64-linux/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 10098 tests, 88 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
TIMEOUT: SanitizerCommon-hwasan-x86_64-Linux :: Posix/fork_threaded.c (10098 of 10098)
******************** TEST 'SanitizerCommon-hwasan-x86_64-Linux :: Posix/fork_threaded.c' FAILED ********************
Exit Code: -9
Timeout: Reached timeout of 900 seconds

Command Output (stderr):
--
RUN: at line 1: /b/sanitizer-x86_64-linux/build/build_default/./bin/clang  -gline-tables-only -fsanitize=hwaddress -fuse-ld=lld -fsanitize-hwaddress-experimental-aliasing  -m64 -funwind-tables  -I/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/test -ldl -O0 /b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/test/sanitizer_common/TestCases/Posix/fork_threaded.c -o /b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp && env HWASAN_OPTIONS=die_after_fork=0  /b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp
+ /b/sanitizer-x86_64-linux/build/build_default/./bin/clang -gline-tables-only -fsanitize=hwaddress -fuse-ld=lld -fsanitize-hwaddress-experimental-aliasing -m64 -funwind-tables -I/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/test -ldl -O0 /b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/test/sanitizer_common/TestCases/Posix/fork_threaded.c -o /b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp
+ env HWASAN_OPTIONS=die_after_fork=0 /b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp

=================================================================
==3918944==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 224 byte(s) in 2 object(s) allocated from:
    #0 0x57b1598747d8 in malloc /b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp:151:3
    #1 0x57b1599ccc9e in operator new(unsigned long) llvm-link
    #2 0x57b15986ac84 in _start (/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp+0xeec84)

Direct leak of 204 byte(s) in 1 object(s) allocated from:
    #0 0x57b15987431d in calloc /b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp:127:3
    #1 0x57b159955541 in llvm::safe_calloc(unsigned long, unsigned long) llvm-link
    #2 0x57b15986ac84 in _start (/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp+0xeec84)

Indirect leak of 152 byte(s) in 5 object(s) allocated from:
    #0 0x57b159873cd9 in aligned_alloc /b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp:58:3
    #1 0x57b159962e2f in llvm::allocate_buffer(unsigned long, unsigned long) llvm-link

SUMMARY: HWAddressSanitizer: 580 byte(s) leaked in 8 allocation(s).
==3918944==ERROR: HWAddressSanitizer: tag-mismatch on address 0x481400005140 at pc 0x57b1598800c7
READ of size 155 at 0x481400005140 tags: 01/00 (ptr/mem) in thread T2

=================================================================
==3917419==ERROR: LeakSanitizer: detected memory leaks

Direct leak of 64 byte(s) in 1 object(s) allocated from:
    #0 0x57b1598747d8 in malloc /b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/hwasan/hwasan_allocation_functions.cpp:151:3
    #1 0x57b1599ccc9e in operator new(unsigned long) llvm-link
    #2 0x57b15986ac84 in _start (/b/sanitizer-x86_64-linux/build/build_default/runtimes/runtimes-bins/compiler-rt/test/sanitizer_common/hwasan-x86_64-Linux/Posix/Output/fork_threaded.c.tmp+0xeec84)


@huaatian
Copy link
Contributor

huaatian commented Aug 2, 2024

#101658
The ci is failed and this pr is reverted.

@llvm-ci
Copy link
Collaborator

llvm-ci commented Aug 2, 2024

LLVM Buildbot has detected a new failure on builder sanitizer-x86_64-linux-fast running on sanitizer-buildbot4 while building llvm at step 2 "annotate".

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

Here is the relevant piece of the build log for the reference:

Step 2 (annotate) failure: 'python ../sanitizer_buildbot/sanitizers/zorg/buildbot/builders/sanitizers/buildbot_selector.py' (failure)
...
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using lld-link: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lld-link
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using ld64.lld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld64.lld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using wasm-ld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/wasm-ld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using ld.lld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld.lld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using lld-link: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lld-link
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using ld64.lld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld64.lld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using wasm-ld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/wasm-ld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 84812 of 84813 tests, 88 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
FAIL: LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir (84775 of 84812)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/llc --march=hexagon /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/FileCheck /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/llc --march=hexagon /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
+ /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/FileCheck /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: error: CHECK-NEXT: is not on the line after the previous match
# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
              ^
<stdin>:1003:2: note: 'next' match was here
 Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
 ^
<stdin>:1000:42: note: previous match ended here
Best window offset is 6 and Best II is 2.
                                         ^
<stdin>:1001:1: note: non-matching line after previous match is here
 Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
^

Input file: <stdin>
Check file: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
        .
        .
        .
      998: Current window Offset is 9 and II is 4. 
      999:  
     1000: Best window offset is 6 and Best II is 2. 
     1001:  Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3 
     1002:  Cycle 0 [S.0]: %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) 
     1003:  Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr 
next:9      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
Step 9 (stage2/asan_ubsan check) failure: stage2/asan_ubsan check (failure)
...
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using lld-link: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lld-link
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using ld64.lld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld64.lld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using wasm-ld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/wasm-ld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using ld.lld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld.lld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using lld-link: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/lld-link
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using ld64.lld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/ld64.lld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using wasm-ld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/wasm-ld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 84812 of 84813 tests, 88 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
FAIL: LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir (84775 of 84812)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/llc --march=hexagon /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/FileCheck /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/llc --march=hexagon /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
+ /b/sanitizer-x86_64-linux-fast/build/llvm_build_asan_ubsan/bin/FileCheck /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: error: CHECK-NEXT: is not on the line after the previous match
# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
              ^
<stdin>:1003:2: note: 'next' match was here
 Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
 ^
<stdin>:1000:42: note: previous match ended here
Best window offset is 6 and Best II is 2.
                                         ^
<stdin>:1001:1: note: non-matching line after previous match is here
 Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
^

Input file: <stdin>
Check file: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
        .
        .
        .
      998: Current window Offset is 9 and II is 4. 
      999:  
     1000: Best window offset is 6 and Best II is 2. 
     1001:  Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3 
     1002:  Cycle 0 [S.0]: %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) 
     1003:  Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr 
next:9      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
Step 12 (stage2/msan check) failure: stage2/msan check (failure)
...
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using lld-link: /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/lld-link
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using ld64.lld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/ld64.lld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using wasm-ld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/wasm-ld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using ld.lld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/ld.lld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using lld-link: /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/lld-link
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using ld64.lld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/ld64.lld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:508: note: using wasm-ld: /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/wasm-ld
llvm-lit: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 84811 tests, 88 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
FAIL: LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir (84757 of 84811)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/llc --march=hexagon /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/FileCheck /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/llc --march=hexagon /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
+ /b/sanitizer-x86_64-linux-fast/build/llvm_build_msan/bin/FileCheck /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
/b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: error: CHECK-NEXT: is not on the line after the previous match
# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
              ^
<stdin>:1003:2: note: 'next' match was here
 Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
 ^
<stdin>:1000:42: note: previous match ended here
Best window offset is 6 and Best II is 2.
                                         ^
<stdin>:1001:1: note: non-matching line after previous match is here
 Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
^

Input file: <stdin>
Check file: /b/sanitizer-x86_64-linux-fast/build/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
        .
        .
        .
      998: Current window Offset is 9 and II is 4. 
      999:  
     1000: Best window offset is 6 and Best II is 2. 
     1001:  Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3 
     1002:  Cycle 0 [S.0]: %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) 
     1003:  Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr 
next:9      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line

@kaiyan96
Copy link
Contributor Author

kaiyan96 commented Aug 2, 2024

This PR is reverted at 101658
A Fixed PR is at 101665

@llvm-ci
Copy link
Collaborator

llvm-ci commented Aug 3, 2024

LLVM Buildbot has detected a new failure on builder llvm-x86_64-debian-dylib running on gribozavr4 while building llvm at step 7 "test-build-unified-tree-check-llvm".

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

Here is the relevant piece of the build log for the reference:

Step 7 (test-build-unified-tree-check-llvm) failure: test (failure)
******************** TEST 'LLVM :: CodeGen/Hexagon/swp-ws-resource-reserve.mir' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /b/1/llvm-x86_64-debian-dylib/build/bin/llc --march=hexagon /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner  -window-sched=force -filetype=null -verify-machineinstrs 2>&1  -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1  | /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /b/1/llvm-x86_64-debian-dylib/build/bin/FileCheck /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir
+ /b/1/llvm-x86_64-debian-dylib/build/bin/llc --march=hexagon /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir -run-pass=pipeliner -debug-only=pipeliner -window-sched=force -filetype=null -verify-machineinstrs -window-search-ratio=100 -window-search-num=100 -window-diff-limit=1
/b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir:9:15: error: CHECK-NEXT: is not on the line after the previous match
# CHECK-NEXT: Cycle [[CycleNum:[0-9]+]] [[[StageNum:S.[0-9]+]]]: {{%[0-9]+}}:hvxvr = V6_vaddw {{%[0-9]+}}:hvxvr, {{%[0-9]+}}:hvxvr
              ^
<stdin>:1003:2: note: 'next' match was here
 Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr
 ^
<stdin>:1000:42: note: previous match ended here
Best window offset is 6 and Best II is 2.
                                         ^
<stdin>:1001:1: note: non-matching line after previous match is here
 Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3
^

Input file: <stdin>
Check file: /b/1/llvm-x86_64-debian-dylib/llvm-project/llvm/test/CodeGen/Hexagon/swp-ws-resource-reserve.mir

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

Input was:
<<<<<<
        .
        .
        .
      998: Current window Offset is 9 and II is 4. 
      999:  
     1000: Best window offset is 6 and Best II is 2. 
     1001:  Cycle 0 [S.0]: %13:intregs = PHI %1:intregs, %bb.1, %14:intregs, %bb.3 
     1002:  Cycle 0 [S.0]: %17:hvxvr, %14:intregs = V6_vL32b_pi %13:intregs(tied-def 1), 128 :: (load (s1024) from %ir.lsr.iv1) 
     1003:  Cycle 0 [S.1]: %21:hvxvr = V6_vaddw %18:hvxvr, %19:hvxvr 
next:9      !~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  error: match on wrong line
     1004:  Cycle 0 [S.1]: %22:hvxvr = V6_vaddw %18:hvxvr, %20:hvxvr 
     1005:  Cycle 0 [S.0]: %18:hvxvr = V6_vaddw %7:hvxvr, %17:hvxvr 
     1006:  Cycle 1 [S.0]: %15:intregs = PHI %0:intregs, %bb.1, %16:intregs, %bb.3 
     1007:  Cycle 1 [S.0]: %19:hvxvr = V6_vaddw %5:hvxvr, %17:hvxvr 
     1008:  Cycle 1 [S.1]: %23:hvxvr = V6_vaddw %22:hvxvr, %21:hvxvr 
        .
        .
        .
>>>>>>

--

...

banach-space pushed a commit to banach-space/llvm-project that referenced this pull request Aug 7, 2024
…n window scheduling (llvm#100301)

Address the issue of multiple resource reservations in window scheduling
banach-space pushed a commit to banach-space/llvm-project that referenced this pull request Aug 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend:Hexagon mi-sched machine instruction scheduler
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants