[llvm] [llvm][ScheduleDAG] SUnit::biasCriticalPath() does not find the critical path consistently (PR #93001)

Matt Arsenault via llvm-commits llvm-commits at lists.llvm.org
Wed May 22 01:54:21 PDT 2024


================
@@ -0,0 +1,240 @@
+; RUN: llc < %s -mtriple=x86_64-apple-darwin8 -misched-print-dags -o - 2>&1 > /dev/null | FileCheck %s
+
+target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"
+
+ at sc = common global i8 0
+ at uc = common global i8 0
+ at ss = common global i16 0
+ at us = common global i16 0
+ at si = common global i32 0
+ at ui = common global i32 0
+ at sl = common global i64 0
+ at ul = common global i64 0
+ at sll = common global i64 0
+ at ull = common global i64 0
+
+; Regression Test for PR92368.
+;
+; CHECK: SU(75):   CMP8rr %49:gr8, %48:gr8, implicit-def $eflags
+; CHECK:   Predecessors:
+; CHECK-NEXT:    SU(73): Data Latency=0 Reg=%49
+; CHECK-NEXT:    SU(74): Out  Latency=0
+; CHECK-NEXT:    SU(72): Out  Latency=0
+; CHECK-NEXT:    SU(70): Data Latency=4 Reg=%48
+define void @misched_bug() nounwind {
+entry:
+  %0 = load i8, i8* @sc, align 1
----------------
arsenm wrote:

Use named values in tests. This also needs to use opaque pointers. Can you reduce this at all? 

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


More information about the llvm-commits mailing list