[llvm] [llvm][CodeGen] Fix failure in window scheduler caused by phi (PR #95900)
Hua Tian via llvm-commits
llvm-commits at lists.llvm.org
Tue Jun 18 05:08:53 PDT 2024
=?utf-8?b?4oCcYWtpcmF0aWFu4oCd?= <akiratian at tencent.com>
Message-ID:
In-Reply-To: <llvm.org/llvm/llvm-project/pull/95900 at github.com>
================
@@ -0,0 +1,44 @@
+# REQUIRES: asserts
+# RUN: llc --march=hexagon %s -run-pass=pipeliner -debug-only=pipeliner \
+# RUN: -window-sched=force -filetype=null 2>&1 | FileCheck %s
+
+# CHECK: Special phi structure is not supported!
+# CHECK-LABEL: body: |
+# CHECK: bb.0:
+# CHECK: [[REG:%[0-9]+]]:intregs = A2_tfrsi 0
+# CHECK: bb.2:
+# CHECK: {{%[0-9]+}}:intregs = PHI {{%[0-9]+}}, %bb.0, [[REG]], %bb.2
+
+---
+name: poll_for_response
+tracksRegLiveness: true
+body: |
+ bb.0:
+ successors: %bb.2(0x80000000)
+ liveins: $r0, $r1
+
+ %0:intregs = COPY $r1
+ %1:intregs = COPY $r0
+ %2:intregs = A2_tfrsi 0
+ J2_loop0i %bb.2, 2, implicit-def $lc0, implicit-def $sa0, implicit-def $usr
+ J2_jump %bb.2, implicit-def dead $pc
+
+ bb.1:
+ PS_jmpret $r31, implicit-def dead $pc
+
+ bb.2:
+ successors: %bb.1(0x04000000), %bb.2(0x7c000000)
+
+ %3:intregs = PHI %1, %bb.0, %2, %bb.2
+ %4:intregs = PHI %2, %bb.0, %5, %bb.2
+ %6:intregs = S2_lsr_i_r %3, 1
+ S2_storerb_io %0, 0, killed %6
+ S4_storerb_rr %0, %4, 0, %2
+ %5:intregs = A2_tfrsi 1
+ ENDLOOP0 %bb.2, implicit-def $pc, implicit-def $lc0, implicit $sa0, implicit $lc0
+ J2_jump %bb.1, implicit-def $pc
+
+...
+
+
+
----------------
huaatian wrote:
Updated
https://github.com/llvm/llvm-project/pull/95900
More information about the llvm-commits
mailing list