[llvm] [VPlan] Allow VPWidenPHI in non-native path and copy DebugLoc (PR #118662)

Luke Lau via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 4 12:08:50 PST 2024


================
@@ -15,8 +15,8 @@ define void @foo(ptr %h) !dbg !4 {
 ; CHECK-NEXT:    [[INDEX:%.*]] = phi i64 [ 0, [[VECTOR_PH]] ], [ [[INDEX_NEXT:%.*]], [[FOR_COND_CLEANUP32:%.*]] ]
 ; CHECK-NEXT:    br label [[FOR_COND5_PREHEADER1:%.*]], !dbg [[DBG21]]
 ; CHECK:       for.cond5.preheader1:
-; CHECK-NEXT:    [[VEC_PHI:%.*]] = phi <4 x i64> [ zeroinitializer, [[VECTOR_BODY]] ], [ [[TMP4:%.*]], [[FOR_COND5_PREHEADER1]] ], !dbg [[DBG21]]
-; CHECK-NEXT:    [[TMP0:%.*]] = getelementptr i32, ptr [[H]], <4 x i64> [[VEC_PHI]], !dbg [[DBG21]]
----------------
lukel97 wrote:

The original input phi and gep never had any debug info to begin with. So I think it was accidentally copying over the debug info from the branch instruction. I.e. the VPTransformState's debug loc wasn't being cleared when moving between recipes

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


More information about the llvm-commits mailing list