• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# This test verifies that DWARF form types are printed in verbose mode and when
2# passing -F but not in brief mode. Additionally we check that the high pc is
3# not printed as an address in verbose or show-form mode.
4
5# RUN: llvm-mc %S/brief.s -filetype obj -triple x86_64-apple-darwin -o - \
6# RUN: | llvm-dwarfdump -v --debug-info - \
7# RUN: | FileCheck %s
8
9# RUN: llvm-mc %S/brief.s -filetype obj -triple x86_64-apple-darwin -o - \
10# RUN: | llvm-dwarfdump -F --debug-info - \
11# RUN: | FileCheck %s
12
13# RUN: llvm-mc %S/brief.s -filetype obj -triple x86_64-apple-darwin -o - \
14# RUN: | llvm-dwarfdump --debug-info - \
15# RUN: | FileCheck %s --check-prefix NO-FORM
16
17# CHECK: DW_TAG_compile_unit
18# CHECK: DW_AT_producer [DW_FORM_strp]
19# CHECK: DW_AT_language [DW_FORM_data2]
20# CHECK: DW_AT_name [DW_FORM_strp]
21# CHECK: DW_AT_stmt_list [DW_FORM_sec_offset]
22# CHECK: DW_AT_comp_dir [DW_FORM_strp]
23# CHECK: DW_AT_low_pc [DW_FORM_addr]
24# CHECK: DW_AT_high_pc [DW_FORM_data4] (0x00000008)
25
26# CHECK: DW_TAG_subprogram
27# CHECK: DW_AT_low_pc [DW_FORM_addr]
28# CHECK: DW_AT_high_pc [DW_FORM_data4] (0x00000008)
29# CHECK: DW_AT_frame_base [DW_FORM_exprloc]
30# CHECK: DW_AT_name [DW_FORM_strp]
31# CHECK: DW_AT_decl_file [DW_FORM_data1]
32# CHECK: DW_AT_decl_line [DW_FORM_data1]
33# CHECK: DW_AT_type [DW_FORM_ref4]
34# CHECK: DW_AT_external [DW_FORM_flag_present]
35
36# CHECK: DW_TAG_base_type
37# CHECK: DW_AT_name [DW_FORM_strp]
38# CHECK: DW_AT_encoding [DW_FORM_data1]
39# CHECK: DW_AT_byte_size [DW_FORM_data1]
40
41# NO-FORM-NOT: DW_FORM_
42# NO-FORM: DW_AT_high_pc (0x0000000000000008)
43# NO-FORM-NOT: DW_FORM_
44# NO-FORM: DW_AT_high_pc (0x0000000000000008)
45# NO-FORM-NOT: DW_FORM_
46