[DebugInfo][InstrRef][NFC] "Final" x86 test cleanup

These are some final test changes for using instruction referencing on X86:
 * Most of these tests just have the flag switched so that they run with
   instr-ref, and just work: these tests were fixed by earlier patches.
 * There are some spurious differences in textual outputs,
 * A few have different temporary labels in the output because more
   MCSymbols are printed to the output.

Differential Revision: https://reviews.llvm.org/D114588
This commit is contained in:
Jeremy Morse 2021-11-29 22:25:42 +00:00
parent f50207c015
commit fc9dae420c
13 changed files with 27 additions and 24 deletions

View File

@ -1,4 +1,4 @@
# RUN: llc -start-after=prologepilog -filetype=obj -O0 %s -o - -experimental-debug-variable-locations=false | llvm-readobj --codeview - | FileCheck %s
# RUN: llc -start-after=prologepilog -filetype=obj -O0 %s -o - -experimental-debug-variable-locations=true | llvm-readobj --codeview - | FileCheck %s
# Offsets are now CFA, or VFRAME, relative. Both the NRVO sret pointer and the
# string* parameter are on the stack, NRVO at offset 4 (after RA), and Str at

View File

@ -1,5 +1,5 @@
; RUN: llc -O2 < %s -experimental-debug-variable-locations=false | FileCheck %s
; RUN: llc -O2 -regalloc=basic < %s -experimental-debug-variable-locations=false | FileCheck %s
; RUN: llc -O2 < %s -experimental-debug-variable-locations=true | FileCheck %s
; RUN: llc -O2 -regalloc=basic < %s -experimental-debug-variable-locations=true | FileCheck %s
source_filename = "test/CodeGen/X86/2010-05-26-DotDebugLoc.ll"
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-n8:16:32:64"
target triple = "x86_64-apple-darwin10"
@ -56,9 +56,10 @@ attributes #1 = { nounwind readnone }
!22 = distinct !DILexicalBlock(scope: !8, file: !1, line: 17)
!23 = !DILocation(line: 19, scope: !22)
; The variable bar:myvar changes registers after the first movq.
; It is cobbered by popq %rbx
; The variable bar:myvar changes registers after $rdi is clobbered by a memory
; movl. It is later clobbered by popq %rbx.
; CHECK: movq
; CHECK: movl
; CHECK-NEXT: [[LABEL:Ltmp[0-9]*]]
; CHECK: .loc 1 19 0
; CHECK: popq

View File

@ -1,5 +1,5 @@
# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
# RUN: llc -O0 -mtriple=x86_64-unknown-linux-gnu -start-before=regallocfast -stop-after=livedebugvalues -verify-machineinstrs -o - %s -experimental-debug-variable-locations=false | FileCheck %s
# RUN: llc -O0 -mtriple=x86_64-unknown-linux-gnu -start-before=regallocfast -stop-after=livedebugvalues -verify-machineinstrs -o - %s -experimental-debug-variable-locations=true | FileCheck %s
# DBG_VALUEs for %0 should be present in the use blocks
--- |

View File

@ -1,5 +1,5 @@
; RUN: llc -enable-shrink-wrap=true < %s -experimental-debug-variable-locations=false | FileCheck %s --check-prefix=ASM
; RUN: llc -enable-shrink-wrap=true -filetype=obj < %s -experimental-debug-variable-locations=false | llvm-readobj --codeview - | FileCheck %s --check-prefix=OBJ
; RUN: llc -enable-shrink-wrap=true < %s -experimental-debug-variable-locations=true | FileCheck %s --check-prefix=ASM
; RUN: llc -enable-shrink-wrap=true -filetype=obj < %s -experimental-debug-variable-locations=true | llvm-readobj --codeview - | FileCheck %s --check-prefix=OBJ
; C source:
; int doSomething(int*);
@ -33,7 +33,7 @@
; ASM: popl %ebx
; ASM: [[EPILOGUE]]: # %return
; ASM: retl $8
; ASM: Ltmp11:
; ASM: Ltmp12:
; ASM: .cv_fpo_endproc
; Note how RvaStart advances 7 bytes to skip the shrink-wrapped portion.

View File

@ -1,4 +1,4 @@
; RUN: llc < %s -experimental-debug-variable-locations=false | FileCheck %s
; RUN: llc < %s -experimental-debug-variable-locations=true | FileCheck %s
; C source:
; void escape(int *);
@ -30,7 +30,7 @@
; CHECK: addl $20, %esp
; CHECK: popl %esi
; CHECK: retl
; CHECK: Ltmp3:
; CHECK: Ltmp4:
; CHECK: .cv_fpo_endproc
; ModuleID = 't.c'

View File

@ -1,5 +1,5 @@
; RUN: llc < %s -filetype=obj -experimental-debug-variable-locations=false | llvm-readobj - --codeview | FileCheck %s
; RUN: llc < %s -experimental-debug-variable-locations=false | llvm-mc -filetype=obj --triple=i686-windows | llvm-readobj - --codeview | FileCheck %s
; RUN: llc < %s -filetype=obj -experimental-debug-variable-locations=true | llvm-readobj - --codeview | FileCheck %s
; RUN: llc < %s -experimental-debug-variable-locations=true | llvm-mc -filetype=obj --triple=i686-windows | llvm-readobj - --codeview | FileCheck %s
; C++ source to regenerate:
; $ cat t.cpp

View File

@ -1,7 +1,9 @@
# RUN: llc -run-pass=livedebugvalues -march=x86-64 -o - %s \
# RUN: -experimental-debug-variable-locations=false \
# RUN: | FileCheck %s --check-prefixes=CHECK,VARLOCLDV
# RUN: llc -force-instr-ref-livedebugvalues=1 -run-pass=livedebugvalues -march=x86-64 -o - %s | FileCheck %s --check-prefixes=CHECK,INSTRREFLDV
# RUN: llc -run-pass=livedebugvalues -march=x86-64 -o - %s \
# RUN: -experimental-debug-variable-locations=true \
# RUN: | FileCheck %s --check-prefixes=CHECK,INSTRREFLDV
#
#extern void fn1 (int, int, int);
#

View File

@ -1,5 +1,5 @@
# RUN: llc -debug-entry-values -run-pass=livedebugvalues -march=x86-64 -o - %s -experimental-debug-variable-locations=false | FileCheck %s --check-prefixes=CHECK,VARLOCLDV
# RUN: llc -debug-entry-values -force-instr-ref-livedebugvalues=1 -run-pass=livedebugvalues -march=x86-64 -o - %s | FileCheck %s --check-prefixes=CHECK,INSTRREFLDV
# RUN: llc -debug-entry-values -run-pass=livedebugvalues -march=x86-64 -o - %s -experimental-debug-variable-locations=true | FileCheck %s --check-prefixes=CHECK,INSTRREFLDV
#
# The test case was artificially adjusted, in order to make proper diamond basic
# block structure relevant to the debug entry values clobbering.

View File

@ -1,5 +1,5 @@
# RUN: llc -run-pass livedebugvalues -march=x86-64 -o - %s \
# RUN: -experimental-debug-variable-locations=false | FileCheck %s
# RUN: -experimental-debug-variable-locations=true | FileCheck %s
# Generated from the following source with:
# clang -g -mllvm -stop-before=livedebugvalues -S -O2 test.c -o test.mir

View File

@ -1,4 +1,4 @@
; RUN: llc %s -o %t.s -experimental-debug-variable-locations=false
; RUN: llc %s -o %t.s -experimental-debug-variable-locations=true
; RUN: llvm-mc %t.s -filetype=obj -triple=x86_64-windows-msvc -o %t.o
; RUN: FileCheck %s < %t.s --check-prefix=ASM
; RUN: llvm-dwarfdump %t.o | FileCheck %s --check-prefix=DWARF

View File

@ -1,4 +1,4 @@
; RUN: llc -O0 -filetype=asm %s -o - -experimental-debug-variable-locations=false | FileCheck %s
; RUN: llc -O0 -filetype=asm %s -o - -experimental-debug-variable-locations=true | FileCheck %s
; Test large integral function arguments passed in multiple registers.
; CHECK: DEBUG_VALUE: foo:bar <- [DW_OP_LLVM_fragment 64 16] ${{([a-d]x)|(si)|(di)|(bp)|(r[0-9]+w)}}
; CHECK: DEBUG_VALUE: foo:bar <- [DW_OP_LLVM_fragment 48 16] ${{([a-d]x)|(si)|(di)|(bp)|(r[0-9]+w)}}

View File

@ -1,4 +1,4 @@
; RUN: llc %s -stop-after=livedebugvars -o %t -experimental-debug-variable-locations=false
; RUN: llc %s -stop-after=livedebugvars -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
@ -13,8 +13,8 @@
; return 0;
; }
;
; CHECK-DAG: DBG_VALUE ${{[a-z]+}}, $noreg, !{{[0-9]+}}, !DIExpression(DW_OP_LLVM_fragment, 0, 32), debug-location !{{[0-9]+}}
; CHECK-DAG: DBG_VALUE ${{[a-z]+}}, $noreg, !{{[0-9]+}}, !DIExpression(DW_OP_LLVM_fragment, 32, 32), debug-location !{{[0-9]+}}
; CHECK-DAG: DBG_VALUE ${{[a-z]+}}, $noreg, !{{[0-9]+}}, !DIExpression(DW_OP_LLVM_fragment, 0, 32), debug-location
; CHECK-DAG: DBG_VALUE ${{[a-z]+}}, $noreg, !{{[0-9]+}}, !DIExpression(DW_OP_LLVM_fragment, 32, 32), debug-location
; ModuleID = 'sdagsplit-1.c'
target datalayout = "e-m:e-p:32:32-f64:32:64-f80:32-n8:16:32-S128"

View File

@ -1,6 +1,6 @@
; UNSUPPORTED: system-windows
; REQUIRES: x86-registered-target
; RUN: llc %s -o %t0.o -filetype=obj -experimental-debug-variable-locations=false
; RUN: llc %s -o %t0.o -filetype=obj -experimental-debug-variable-locations=true
; RUN: %llvm-locstats %t0.o | FileCheck %s --check-prefix=LOCSTATS
;
; Test the llvm-locstats output.
@ -11,11 +11,11 @@
; LOCSTATS: [30%,40%) 0 0%
; LOCSTATS: [40%,50%) 0 0%
; LOCSTATS: [50%,60%) 0 0%
; LOCSTATS: [60%,70%) 3 33%
; LOCSTATS: [60%,70%) 1 11%
; LOCSTATS: [70%,80%) 0 0%
; LOCSTATS: [80%,90%) 2 22%
; LOCSTATS: [90%,100%) 1 11%
; LOCSTATS: 100% 2 22%
; LOCSTATS: 100% 4 44%
;
; The source code of the test case:
;extern int fn2 (int);