1e0ca2ff0SJon Chesterfield# REQUIRES: x86 20a2678e9SPeter Collingbourne# RUN: llvm-mc -filetype=obj -triple=x86_64-pc-linux -o %t %s 30a2678e9SPeter Collingbourne# RUN: ld.lld --gdb-index --gc-sections -o %t2 %t 4*65b79a54SAdrian Prantl# RUN: llvm-dwarfdump -gdb-index %t2 | FileCheck %s 50a2678e9SPeter Collingbourne 60a2678e9SPeter Collingbourne# CHECK: Address area offset = 0x28, has 0 entries: 70a2678e9SPeter Collingbourne 80a2678e9SPeter Collingbourne# Generated with: (clang r302976) 90a2678e9SPeter Collingbourne# echo "void _start() { __builtin_unreachable(); }" | \ 100a2678e9SPeter Collingbourne# clang -Os -g -S -o gdb-index-empty.s -x c - -Xclang -fdebug-compilation-dir -Xclang . 110a2678e9SPeter Collingbourne 120a2678e9SPeter Collingbourne.text 130a2678e9SPeter Collingbourne.globl _start 140a2678e9SPeter Collingbourne.type _start,@function 15adaba7aeSGeorge Rimar_start: 160a2678e9SPeter Collingbourne.Lfunc_begin0: 170a2678e9SPeter Collingbourne.Lfunc_end0: 180a2678e9SPeter Collingbourne 190a2678e9SPeter Collingbourne.section .debug_abbrev,"",@progbits 200a2678e9SPeter Collingbourne .byte 1 # Abbreviation Code 210a2678e9SPeter Collingbourne .byte 17 # DW_TAG_compile_unit 220a2678e9SPeter Collingbourne .byte 1 # DW_CHILDREN_yes 230a2678e9SPeter Collingbourne .byte 37 # DW_AT_producer 240a2678e9SPeter Collingbourne .byte 14 # DW_FORM_strp 250a2678e9SPeter Collingbourne .byte 19 # DW_AT_language 260a2678e9SPeter Collingbourne .byte 5 # DW_FORM_data2 270a2678e9SPeter Collingbourne .byte 3 # DW_AT_name 280a2678e9SPeter Collingbourne .byte 14 # DW_FORM_strp 290a2678e9SPeter Collingbourne .byte 16 # DW_AT_stmt_list 300a2678e9SPeter Collingbourne .byte 23 # DW_FORM_sec_offset 310a2678e9SPeter Collingbourne .byte 27 # DW_AT_comp_dir 320a2678e9SPeter Collingbourne .byte 14 # DW_FORM_strp 330a2678e9SPeter Collingbourne .byte 17 # DW_AT_low_pc 340a2678e9SPeter Collingbourne .byte 1 # DW_FORM_addr 350a2678e9SPeter Collingbourne .byte 18 # DW_AT_high_pc 360a2678e9SPeter Collingbourne .byte 6 # DW_FORM_data4 370a2678e9SPeter Collingbourne .byte 0 # EOM(1) 380a2678e9SPeter Collingbourne .byte 0 # EOM(2) 390a2678e9SPeter Collingbourne .byte 2 # Abbreviation Code 400a2678e9SPeter Collingbourne .byte 46 # DW_TAG_subprogram 410a2678e9SPeter Collingbourne .byte 0 # DW_CHILDREN_no 420a2678e9SPeter Collingbourne .byte 17 # DW_AT_low_pc 430a2678e9SPeter Collingbourne .byte 1 # DW_FORM_addr 440a2678e9SPeter Collingbourne .byte 18 # DW_AT_high_pc 450a2678e9SPeter Collingbourne .byte 6 # DW_FORM_data4 460a2678e9SPeter Collingbourne .byte 64 # DW_AT_frame_base 470a2678e9SPeter Collingbourne .byte 24 # DW_FORM_exprloc 480a2678e9SPeter Collingbourne .byte 3 # DW_AT_name 490a2678e9SPeter Collingbourne .byte 14 # DW_FORM_strp 500a2678e9SPeter Collingbourne .byte 58 # DW_AT_decl_file 510a2678e9SPeter Collingbourne .byte 11 # DW_FORM_data1 520a2678e9SPeter Collingbourne .byte 59 # DW_AT_decl_line 530a2678e9SPeter Collingbourne .byte 11 # DW_FORM_data1 540a2678e9SPeter Collingbourne .byte 63 # DW_AT_external 550a2678e9SPeter Collingbourne .byte 25 # DW_FORM_flag_present 560a2678e9SPeter Collingbourne .byte 0 # EOM(1) 570a2678e9SPeter Collingbourne .byte 0 # EOM(2) 580a2678e9SPeter Collingbourne .byte 0 # EOM(3) 59adaba7aeSGeorge Rimar 600a2678e9SPeter Collingbourne.section .debug_info,"",@progbits 610a2678e9SPeter Collingbourne .long 60 # Length of Unit 620a2678e9SPeter Collingbourne .short 4 # DWARF version number 630a2678e9SPeter Collingbourne .long .debug_abbrev # Offset Into Abbrev. Section 640a2678e9SPeter Collingbourne .byte 8 # Address Size (in bytes) 650a2678e9SPeter Collingbourne .byte 1 # Abbrev [1] 0xb:0x35 DW_TAG_compile_unit 66adaba7aeSGeorge Rimar .long 0 # DW_AT_producer 670a2678e9SPeter Collingbourne .short 12 # DW_AT_language 68adaba7aeSGeorge Rimar .long 0 # DW_AT_name 69adaba7aeSGeorge Rimar .long 0 # DW_AT_stmt_list 70adaba7aeSGeorge Rimar .long 0 # DW_AT_comp_dir 710a2678e9SPeter Collingbourne .quad .Lfunc_begin0 # DW_AT_low_pc 720a2678e9SPeter Collingbourne .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc 730a2678e9SPeter Collingbourne .byte 2 # Abbrev [2] 0x2a:0x15 DW_TAG_subprogram 740a2678e9SPeter Collingbourne .quad .Lfunc_begin0 # DW_AT_low_pc 750a2678e9SPeter Collingbourne .long .Lfunc_end0-.Lfunc_begin0 # DW_AT_high_pc 760a2678e9SPeter Collingbourne .byte 1 # DW_AT_frame_base 770a2678e9SPeter Collingbourne .byte 87 78adaba7aeSGeorge Rimar .long 0 # DW_AT_name 790a2678e9SPeter Collingbourne .byte 1 # DW_AT_decl_file 800a2678e9SPeter Collingbourne .byte 1 # DW_AT_decl_line 810a2678e9SPeter Collingbourne .byte 0 # End Of Children Mark 82