; REQUIRES: object-emission
-; RUN: %llc_dwarf -O0 -filetype=obj < %s | llvm-dwarfdump -debug-dump=info - | FileCheck %s
+; RUN: %llc_dwarf -O0 -filetype=obj < %s | llvm-dwarfdump -debug-dump=info - | FileCheck -implicit-check-not=DW_TAG %s
; Build from source:
; $ clang++ a.cpp b.cpp -g -c -emit-llvm
; CHECK: DW_TAG_subprogram
; CHECK: DW_AT_type [DW_FORM_ref_addr] (0x00000000[[INT:.*]])
; CHECK: DW_TAG_inlined_subroutine
-; CHECK-NOT: DW_TAG
; CHECK: DW_AT_abstract_origin {{.*}}[[ABS_FUNC:........]])
; CHECK: DW_TAG_formal_parameter
-; CHECK-NOT: DW_TAG
; CHECK: DW_AT_abstract_origin {{.*}}[[ABS_VAR:........]])
; Check the abstract definition is in the 'b.cpp' CU and doesn't contain any
; CHECK: 0x[[ABS_FUNC]]: DW_TAG_subprogram
; CHECK-NOT: DW_AT_low_pc
; CHECK: 0x[[ABS_VAR]]: DW_TAG_formal_parameter
-; CHECK-NOT: DW_TAG
; CHECK-NOT: DW_AT_location
; CHECK: DW_AT_type [DW_FORM_ref4] {{.*}} {0x[[INT]]}
; CHECK-NOT: DW_AT_location
; CHECK: 0x[[INT]]: DW_TAG_base_type
-; CHECK-NOT: DW_TAG
; CHECK: DW_AT_name {{.*}} "int"
; Check the concrete out of line definition references the abstract and
; provides the address range and variable location
; CHECK: DW_TAG_subprogram
-; CHECK-NOT: DW_TAG
; CHECK: DW_AT_low_pc
-; CHECK-NOT: DW_TAG
; CHECK: DW_AT_abstract_origin {{.*}} {0x[[ABS_FUNC]]}
; CHECK: DW_TAG_formal_parameter
-; CHECK-NOT: DW_TAG
; CHECK: DW_AT_location
-; CHECK-NOT: DW_TAG
; CHECK: DW_AT_abstract_origin {{.*}} {0x[[ABS_VAR]]}