brintos

brintos / llvm-project-archived public Read only

0
0
Text · 3.6 KiB · 7e6bd51 Raw
91 lines · plain
1RUN: llc -filetype=obj %p/Inputs/debuginfo1.ll -o %t.debuginfo1.o2RUN: llc -filetype=obj %p/Inputs/debuginfo2.ll -o %t.debuginfo2.o3RUN: wasm-ld -o %t.wasm %t.debuginfo1.o %t.debuginfo2.o4RUN: llvm-dwarfdump %t.wasm | FileCheck %s5 6CHECK: file format WASM7 8CHECK: .debug_info contents:9CHECK: DW_TAG_compile_unit10CHECK-NEXT:              DW_AT_producer	("clang version 7.0.0 (trunk {{.*}})")11CHECK-NEXT:              DW_AT_language	(DW_LANG_C99)12CHECK-NEXT:              DW_AT_name	("hi.c")13 14CHECK:   DW_TAG_subprogram15CHECK-NEXT:                DW_AT_low_pc16CHECK-NEXT:                DW_AT_high_pc17CHECK-NEXT:                DW_AT_frame_base18CHECK-NEXT:                DW_AT_name	("test")19CHECK-NEXT:                DW_AT_decl_file	("/Users/yury/llvmwasm{{(/|\\)}}hi.c")20CHECK-NEXT:                DW_AT_decl_line	(3)21CHECK-NEXT:                DW_AT_prototyped	(true)22 23CHECK:     DW_TAG_formal_parameter24CHECK-NEXT:                  DW_AT_location (DW_OP_WASM_location 0x0 0x0, DW_OP_stack_value)25CHECK-NEXT:                  DW_AT_name	("t")26CHECK-NEXT:                  DW_AT_decl_file	("/Users/yury/llvmwasm{{(/|\\)}}hi.c")27CHECK-NEXT:                  DW_AT_decl_line	(3)28 29CHECK:   DW_TAG_subprogram30CHECK-NEXT:                DW_AT_low_pc31CHECK-NEXT:                DW_AT_high_pc32CHECK-NEXT:                DW_AT_frame_base33CHECK-NEXT:                DW_AT_name	("_start")34CHECK-NEXT:                DW_AT_decl_file	("/Users/yury/llvmwasm{{(/|\\)}}hi.c")35CHECK-NEXT:                DW_AT_decl_line	(7)36 37CHECK:   DW_TAG_base_type38CHECK-NEXT:                DW_AT_name	("int")39CHECK-NEXT:                DW_AT_encoding	(DW_ATE_signed)40CHECK-NEXT:                DW_AT_byte_size	(0x04)41 42CHECK: DW_TAG_compile_unit43CHECK-NEXT:              DW_AT_producer	("clang version 7.0.0 (trunk {{.*}})")44CHECK-NEXT:              DW_AT_language	(DW_LANG_C99)45CHECK-NEXT:              DW_AT_name	("hi_foo.c")46 47CHECK:   DW_TAG_variable48CHECK-NEXT:                DW_AT_name	("y")49CHECK-NEXT:                DW_AT_type	(0x000000ac "int[2]")50CHECK-NEXT:                DW_AT_external	(true)51CHECK-NEXT:                DW_AT_decl_file	("{{.*}}hi_foo.c")52CHECK-NEXT:                DW_AT_decl_line	(1)53CHECK:                     DW_AT_location	(DW_OP_addr 0x10000)54 55CHECK:   DW_TAG_array_type56 57CHECK:     DW_TAG_subrange_type58 59CHECK:   DW_TAG_base_type60CHECK-NEXT:                DW_AT_name	("int")61CHECK-NEXT:                DW_AT_encoding	(DW_ATE_signed)62CHECK-NEXT:                DW_AT_byte_size	(0x04)63 64CHECK:   DW_TAG_base_type65CHECK-NEXT:                DW_AT_name	("__ARRAY_SIZE_TYPE__")66CHECK-NEXT:                DW_AT_byte_size	(0x08)67CHECK-NEXT:                DW_AT_encoding	(DW_ATE_unsigned)68 69CHECK:   DW_TAG_variable70CHECK-NEXT:                DW_AT_name	("z")71CHECK-NEXT:                DW_AT_type	(0x000000ac "int[2]")72CHECK-NEXT:                DW_AT_external	(true)73CHECK-NEXT:                DW_AT_decl_file	("{{.*}}hi_foo.c")74CHECK-NEXT:                DW_AT_decl_line	(8)75CHECK-NEXT:                DW_AT_location	(DW_OP_addr 0xffffffff)76 77CHECK:   DW_TAG_subprogram78CHECK-NEXT:                DW_AT_low_pc79CHECK-NEXT:                DW_AT_high_pc80CHECK-NEXT:                DW_AT_frame_base81CHECK-NEXT:                DW_AT_name	("foo")82CHECK-NEXT:                DW_AT_decl_file	("{{.*}}hi_foo.c")83CHECK-NEXT:                DW_AT_decl_line	(3)84 85CHECK:     DW_TAG_formal_parameter86CHECK-NEXT:                  DW_AT_location (DW_OP_WASM_location 0x0 0x0, DW_OP_stack_value)87CHECK-NEXT:                  DW_AT_name	("p")88CHECK-NEXT:                  DW_AT_decl_file	("{{.*}}hi_foo.c")89CHECK-NEXT:                  DW_AT_decl_line	(3)90 91