summaryrefslogtreecommitdiffstats
path: root/llvm/test/DebugInfo/X86/parameters.ll
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/DebugInfo/X86/parameters.ll')
-rw-r--r--llvm/test/DebugInfo/X86/parameters.ll28
1 files changed, 16 insertions, 12 deletions
diff --git a/llvm/test/DebugInfo/X86/parameters.ll b/llvm/test/DebugInfo/X86/parameters.ll
index 26fb82df1f3..9983509a115 100644
--- a/llvm/test/DebugInfo/X86/parameters.ll
+++ b/llvm/test/DebugInfo/X86/parameters.ll
@@ -1,7 +1,7 @@
; REQUIRES: object-emission
;
; RUN: llc -mtriple=x86_64-unknown-linux-gnu -O0 -filetype=obj < %s > %t
-; RUN: llvm-dwarfdump %t | FileCheck %s
+; RUN: llvm-dwarfdump -debug-dump=info %t | FileCheck %s
; Test case derived from compiling the following source with clang -g:
;
@@ -23,21 +23,25 @@
; }
; CHECK: debug_info contents
-; 0x74 is DW_OP_breg4, showing that the parameter is accessed indirectly
-; (with a zero offset) from the register parameter.
-; CHECK: DW_AT_location {{.*}} 74 00 06
-
+; The parameter is accessed indirectly (with a zero offset) from the second
+; register parameter. RDI is consumed by 'sret'.
+; CHECK: DW_TAG_subprogram
+; CHECK: DW_AT_name{{.*}} = "func"
+; CHECK: DW_TAG_formal_parameter
+; CHECK: DW_AT_location {{.*}} (DW_OP_breg4 RSI+0, DW_OP_deref)
; CHECK-NOT: DW_TAG
; CHECK: DW_AT_name{{.*}} = "f"
-;
-; CHECK: DW_AT_location{{.*}}([[G_LOC:0x[0-9]*]])
+
+; CHECK: DW_TAG_subprogram
+; CHECK: DW_AT_name{{.*}} = "func2"
+; CHECK: DW_TAG_formal_parameter
+; CHECK: DW_AT_location{{.*}}(DW_OP_fbreg +23)
+; CHECK: DW_TAG_formal_parameter
+; CHECK: DW_AT_location{{.*}}(
+; CHECK-NEXT: {{.*}}: DW_OP_breg4 RSI+0, DW_OP_deref
+; CHECK-NEXT: {{.*}}: DW_OP_breg7 RSP+8, DW_OP_deref, DW_OP_deref)
; CHECK-NOT: DW_TAG
; CHECK: DW_AT_name{{.*}} = "g"
-;
-; CHECK: debug_loc contents
-; CHECK: [[G_LOC]]: Beginning
-; CHECK-NEXT: Ending
-; CHECK-NEXT: Location description: 74 00
%"struct.pr14763::foo" = type { i8 }
OpenPOWER on IntegriCloud