[llvm] 5d4f1f2 - [DebugInfo] Do not stop after livedebugvars (#215169)

via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 12 09:04:27 PDT 2026


Author: Aiden Grossman
Date: 2026-08-12T09:04:22-07:00
New Revision: 5d4f1f2a232a97efee7e880746a18bcde0ebf876

URL: https://github.com/llvm/llvm-project/commit/5d4f1f2a232a97efee7e880746a18bcde0ebf876
DIFF: https://github.com/llvm/llvm-project/commit/5d4f1f2a232a97efee7e880746a18bcde0ebf876.diff

LOG: [DebugInfo] Do not stop after livedebugvars (#215169)

livedebugvars is an analysis. We can only -stop-after it inside the
LegacyPM due to how the LegacyPM schedules analyses. We cannot
stop-after it inside of the NewPM given analyses are dynamically
requested within each pass. Instead, just stop before the asm printer
given we're after the last livedebugvars analysis which happens pretty
late in the pipeline and it doesn't seem like there's a vastly better
spot.

Added: 
    

Modified: 
    llvm/test/CodeGen/X86/debug-spilled-snippet.mir
    llvm/test/DebugInfo/AArch64/dbg-value-i8.ll
    llvm/test/DebugInfo/MSP430/sdagsplit-1.ll
    llvm/test/DebugInfo/X86/bbjoin.ll
    llvm/test/DebugInfo/X86/live-debug-vars-nodebug.ll
    llvm/test/DebugInfo/X86/pr34545.ll
    llvm/test/DebugInfo/X86/sdag-combine.ll
    llvm/test/DebugInfo/X86/sdag-legalize-multires.ll
    llvm/test/DebugInfo/X86/sdagsplit-1.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/CodeGen/X86/debug-spilled-snippet.mir b/llvm/test/CodeGen/X86/debug-spilled-snippet.mir
index 015701f71fefc..d4e4a720bf5c3 100644
--- a/llvm/test/CodeGen/X86/debug-spilled-snippet.mir
+++ b/llvm/test/CodeGen/X86/debug-spilled-snippet.mir
@@ -1,4 +1,4 @@
-# RUN: llc -mtriple i386 -start-before=greedy -stop-after=livedebugvars %s -o - | FileCheck %s
+# RUN: llc -mtriple i386 -start-before=greedy -stop-before=x86-asm-printer %s -o - | FileCheck %s
 
 # There should be multiple debug values for this variable after regalloc. The
 # value has been spilled, but we shouldn't lose track of the location because

diff  --git a/llvm/test/DebugInfo/AArch64/dbg-value-i8.ll b/llvm/test/DebugInfo/AArch64/dbg-value-i8.ll
index 1532c111959e4..076b5a9183dd4 100644
--- a/llvm/test/DebugInfo/AArch64/dbg-value-i8.ll
+++ b/llvm/test/DebugInfo/AArch64/dbg-value-i8.ll
@@ -1,4 +1,4 @@
-; RUN: llc -stop-after=livedebugvars < %s | FileCheck %s
+; RUN: llc -stop-before=aarch64-asm-printer < %s | FileCheck %s
 ; ModuleID = 'debug_value-i8.bc'
 source_filename = "debug_value.c"
 target datalayout = "e-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128"

diff  --git a/llvm/test/DebugInfo/MSP430/sdagsplit-1.ll b/llvm/test/DebugInfo/MSP430/sdagsplit-1.ll
index 9e77e950f837b..f68839fdd569d 100644
--- a/llvm/test/DebugInfo/MSP430/sdagsplit-1.ll
+++ b/llvm/test/DebugInfo/MSP430/sdagsplit-1.ll
@@ -1,4 +1,4 @@
-; RUN: llc %s -stop-after=livedebugvars -o %t
+; RUN: llc %s -stop-before=msp430-asm-printer -o %t
 ; RUN: cat %t | FileCheck %s
 ;
 ; Test that we can emit debug info for large values that are split

diff  --git a/llvm/test/DebugInfo/X86/bbjoin.ll b/llvm/test/DebugInfo/X86/bbjoin.ll
index f1f33f96da18d..51713f629dc1f 100644
--- a/llvm/test/DebugInfo/X86/bbjoin.ll
+++ b/llvm/test/DebugInfo/X86/bbjoin.ll
@@ -1,4 +1,4 @@
-; RUN: llc -mtriple=x86_64-apple-macosx10.9.0 %s -stop-after=livedebugvars \
+; RUN: llc -mtriple=x86_64-apple-macosx10.9.0 %s -stop-before=x86-asm-printer \
 ; RUN:   -o - | FileCheck %s
 ; Generated from:
 ; void g(int *);

diff  --git a/llvm/test/DebugInfo/X86/live-debug-vars-nodebug.ll b/llvm/test/DebugInfo/X86/live-debug-vars-nodebug.ll
index 35d05392209db..22eead375fd64 100644
--- a/llvm/test/DebugInfo/X86/live-debug-vars-nodebug.ll
+++ b/llvm/test/DebugInfo/X86/live-debug-vars-nodebug.ll
@@ -5,10 +5,10 @@
 ; RUN:   -experimental-debug-variable-locations \
 ; RUN:   | FileCheck %s --check-prefix=EXPER-INPUT
 
-; RUN: llc %s -mtriple=x86_64-unknown-unknown -o - -stop-after=livedebugvars \
+; RUN: llc %s -mtriple=x86_64-unknown-unknown -o - -stop-before=x86-asm-printer \
 ; RUN:   | FileCheck %s --check-prefix=OUTPUT
 
-; RUN: llc %s -mtriple=x86_64-unknown-unknown -o - -stop-after=livedebugvars \
+; RUN: llc %s -mtriple=x86_64-unknown-unknown -o - -stop-before=x86-asm-printer \
 ; RUN:   -experimental-debug-variable-locations \
 ; RUN:   | FileCheck %s --check-prefix=OUTPUT
 

diff  --git a/llvm/test/DebugInfo/X86/pr34545.ll b/llvm/test/DebugInfo/X86/pr34545.ll
index 27a784cbcc4b0..d7a36e1174722 100644
--- a/llvm/test/DebugInfo/X86/pr34545.ll
+++ b/llvm/test/DebugInfo/X86/pr34545.ll
@@ -1,9 +1,9 @@
 ; RUN: llc -O1 -filetype=asm -mtriple x86_64-unknown-linux-gnu -mcpu=x86-64 \
-; RUN:    -o - %s -stop-after=livedebugvars \
+; RUN:    -o - %s -stop-before=x86-asm-printer \
 ; RUN:    -experimental-debug-variable-locations=false \
 ; RUN: | FileCheck %s --check-prefixes=CHECK,VARLOCS
 ; RUN: llc -O1 -filetype=asm -mtriple x86_64-unknown-linux-gnu -mcpu=x86-64 \
-; RUN:    -o - %s -stop-after=livedebugvars \
+; RUN:    -o - %s -stop-before=x86-asm-printer \
 ; RUN:    -experimental-debug-variable-locations=true \
 ; RUN: | FileCheck %s --check-prefixes=CHECK,INSTRREF
 

diff  --git a/llvm/test/DebugInfo/X86/sdag-combine.ll b/llvm/test/DebugInfo/X86/sdag-combine.ll
index 84ef27be6dbd7..db726415e8d6d 100644
--- a/llvm/test/DebugInfo/X86/sdag-combine.ll
+++ b/llvm/test/DebugInfo/X86/sdag-combine.ll
@@ -1,5 +1,5 @@
-; RUN: llc %s -stop-after=livedebugvars -o - -experimental-debug-variable-locations=false | FileCheck %s --check-prefix=CHECK
-; RUN: llc %s -stop-after=livedebugvars -o - -experimental-debug-variable-locations=true | FileCheck %s --check-prefix=INSTRREF
+; RUN: llc %s -stop-before=x86-asm-printer -o - -experimental-debug-variable-locations=false | FileCheck %s --check-prefix=CHECK
+; RUN: llc %s -stop-before=x86-asm-printer -o - -experimental-debug-variable-locations=true | FileCheck %s --check-prefix=INSTRREF
 source_filename = "/tmp/t.ll"
 target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
 target triple = "x86_64-apple-macosx10.13"

diff  --git a/llvm/test/DebugInfo/X86/sdag-legalize-multires.ll b/llvm/test/DebugInfo/X86/sdag-legalize-multires.ll
index f0db358b54253..f7e8c8eba40d3 100644
--- a/llvm/test/DebugInfo/X86/sdag-legalize-multires.ll
+++ b/llvm/test/DebugInfo/X86/sdag-legalize-multires.ll
@@ -1,4 +1,4 @@
-; RUN: llc -O0 %s -stop-after=livedebugvars -o - | FileCheck %s
+; RUN: llc -O0 %s -stop-before=x86-asm-printer -o - | FileCheck %s
 ; This is a hand-crafted example modified after some Swift compiler output.
 ; Test that SelectionDAG legalization of DAG nodes with two results
 ; transfers debug info correctly.

diff  --git a/llvm/test/DebugInfo/X86/sdagsplit-1.ll b/llvm/test/DebugInfo/X86/sdagsplit-1.ll
index 40a6be850c38f..0e3722c0c8e59 100644
--- a/llvm/test/DebugInfo/X86/sdagsplit-1.ll
+++ b/llvm/test/DebugInfo/X86/sdagsplit-1.ll
@@ -1,4 +1,4 @@
-; RUN: llc %s -stop-after=livedebugvars -o %t -experimental-debug-variable-locations=true
+; RUN: llc %s -stop-before=x86-asm-printer -o %t -experimental-debug-variable-locations=true
 ; RUN: cat %t | FileCheck %s
 ;
 ; Test that we can emit debug info for large values that are split


        


More information about the llvm-commits mailing list