1// RUN: llvm-mc < %s -triple=armv7-linux-gnueabi -filetype=obj -o %t -g -fdebug-compilation-dir=/tmp
2// RUN: llvm-dwarfdump %t | FileCheck -check-prefix DWARF %s
3// RUN: llvm-objdump -r %t | FileCheck -check-prefix RELOC %s
4
5  .section .text, "ax"
6a:
7  mov r0, r0
8
9
10// DWARF: .debug_abbrev contents:
11// DWARF: Abbrev table for offset: 0x00000000
12// DWARF: [1] DW_TAG_compile_unit DW_CHILDREN_yes
13// DWARF:         DW_AT_stmt_list DW_FORM_data4
14// DWARF:         DW_AT_low_pc    DW_FORM_addr
15// DWARF:         DW_AT_high_pc   DW_FORM_addr
16// DWARF:         DW_AT_name      DW_FORM_string
17// DWARF:         DW_AT_comp_dir  DW_FORM_string
18// DWARF:         DW_AT_producer  DW_FORM_string
19// DWARF:         DW_AT_language  DW_FORM_data2
20
21// DWARF: .debug_info contents:
22// DWARF: 0x{{[0-9a-f]+}}: DW_TAG_compile_unit [1]
23// CHECK-NOT-DWARF: DW_TAG_
24// DWARF:               DW_AT_low_pc [DW_FORM_addr]       (0x0000000000000000)
25// DWARF:               DW_AT_high_pc [DW_FORM_addr]      (0x0000000000000004)
26
27// DWARF: 0x{{[0-9a-f]+}}:   DW_TAG_label [2] *
28// DWARF-NEXT: DW_AT_name [DW_FORM_string]     ("a")
29
30
31// DWARF: .debug_aranges contents:
32// DWARF-NEXT: Address Range Header: length = 0x0000001c, version = 0x0002, cu_offset = 0x00000000, addr_size = 0x04, seg_size = 0x00
33// DWARF-NEXT: [0x00000000 - 0x00000004)
34
35// DWARF: .debug_line contents:
36// DWARF:      0x0000000000000000      7      0      1   0   0 is_stmt
37// DWARF-NEXT: 0x0000000000000004      7      0      1   0   0 is_stmt end_sequence
38
39
40// DWARF: .debug_ranges contents:
41// DWARF-NOT: {{0-9a-f}}
42// DWARF: .debug_pubnames contents:
43
44
45// RELOC: RELOCATION RECORDS FOR [.rel.debug_info]:
46// RELOC-NEXT: 00000006 R_ARM_ABS32 .debug_abbrev
47// RELOC-NEXT: 0000000c R_ARM_ABS32 .debug_line
48// RELOC-NEXT: R_ARM_ABS32 .text
49// RELOC-NEXT: R_ARM_ABS32 .text
50// RELOC-NEXT: R_ARM_ABS32 .text
51
52// RELOC-NOT: RELOCATION RECORDS FOR [.rel.debug_ranges]:
53
54// RELOC: RELOCATION RECORDS FOR [.rel.debug_aranges]:
55// RELOC-NEXT: 00000006 R_ARM_ABS32 .debug_info
56// RELOC-NEXT: 00000010 R_ARM_ABS32 .text
57