dw2-compressed.S revision 1.9
1/* This testcase is part of GDB, the GNU debugger. 2 3 Copyright 2008-2020 Free Software Foundation, Inc. 4 5 This program is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 3 of the License, or 8 (at your option) any later version. 9 10 This program is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 17 18/* This tests that gdb can read compressed sections. The contents 19 are the same as dw2-basic.S, but the .debug_abbrev section has been 20 comrpessed using zlib. */ 21 22/* Dummy function to provide debug information for. */ 23 24 .text 25 .globl _start 26 .globl __start 27_start: 28__start: 29 .int 0 30.Lbegin_text1: 31 .globl func_cu1 32 .type func_cu1, %function 33func_cu1: 34.Lbegin_func_cu1: 35 .int 0 36.Lend_func_cu1: 37 .size func_cu1, .-func_cu1 38.Lend_text1: 39 40/* Debug information */ 41 42 .section .debug_info 43.Lcu1_begin: 44 /* CU header */ 45 .4byte .Lcu1_end - .Lcu1_start /* Length of Compilation Unit */ 46.Lcu1_start: 47 .2byte 2 /* DWARF Version */ 48 .4byte .Labbrev1_begin /* Offset into abbrev section */ 49 .byte 4 /* Pointer size */ 50 51 /* CU die */ 52 .uleb128 1 /* Abbrev: DW_TAG_compile_unit */ 53 .4byte .Lline1_begin /* DW_AT_stmt_list */ 54 .4byte .Lend_text1 /* DW_AT_high_pc */ 55 .4byte .Lbegin_text1 /* DW_AT_low_pc */ 56 .ascii "file1.txt\0" /* DW_AT_name */ 57 .ascii "GNU C 3.3.3\0" /* DW_AT_producer */ 58 .byte 1 /* DW_AT_language (C) */ 59 60 /* func_cu1 */ 61 .uleb128 2 /* Abbrev: DW_TAG_subprogram */ 62 .byte 1 /* DW_AT_external */ 63 .byte 1 /* DW_AT_decl_file */ 64 .byte 2 /* DW_AT_decl_line */ 65 .ascii "func_cu1\0" /* DW_AT_name */ 66 .4byte .Ltype_int-.Lcu1_begin /* DW_AT_type */ 67 .4byte .Lbegin_func_cu1 /* DW_AT_low_pc */ 68 .4byte .Lend_func_cu1 /* DW_AT_high_pc */ 69 .byte 1 /* DW_AT_frame_base: length */ 70 .byte 0x55 /* DW_AT_frame_base: DW_OP_reg5 */ 71 72.Ltype_int: 73 .uleb128 3 /* Abbrev: DW_TAG_base_type */ 74 .ascii "int\0" /* DW_AT_name */ 75 .byte 4 /* DW_AT_byte_size */ 76 .byte 5 /* DW_AT_encoding */ 77 78 .byte 0 /* End of children of CU */ 79 80.Lcu1_end: 81 82/* Line table */ 83 .section .debug_line 84.Lline1_begin: 85 .4byte .Lline1_end - .Lline1_start /* Initial length */ 86.Lline1_start: 87 .2byte 2 /* Version */ 88 .4byte .Lline1_lines - .Lline1_hdr /* header_length */ 89.Lline1_hdr: 90 .byte 1 /* Minimum insn length */ 91 .byte 1 /* default_is_stmt */ 92 .byte 1 /* line_base */ 93 .byte 1 /* line_range */ 94 .byte 0x10 /* opcode_base */ 95 96 /* Standard lengths */ 97 .byte 0 98 .byte 1 99 .byte 1 100 .byte 1 101 .byte 1 102 .byte 0 103 .byte 0 104 .byte 0 105 .byte 1 106 .byte 0 107 .byte 0 108 .byte 1 109 .byte 0 110 .byte 0 111 .byte 0 112 113 /* Include directories */ 114 .byte 0 115 116 /* File names */ 117 .ascii "file1.txt\0" 118 .uleb128 0 119 .uleb128 0 120 .uleb128 0 121 122 .byte 0 123 124.Lline1_lines: 125 .byte 0 /* DW_LNE_set_address */ 126 .uleb128 5 127 .byte 2 128 .4byte .Lbegin_func_cu1 129 130 .byte 3 /* DW_LNS_advance_line */ 131 .sleb128 3 /* ... to 4 */ 132 133 .byte 1 /* DW_LNS_copy */ 134 135 .byte 1 /* DW_LNS_copy (second time as an end-of-prologue marker) */ 136 137 .byte 0 /* DW_LNE_set_address */ 138 .uleb128 5 139 .byte 2 140 .4byte .Lend_func_cu1 141 142 .byte 0 /* DW_LNE_end_of_sequence */ 143 .uleb128 1 144 .byte 1 145 146.Lline1_end: 147 148/* Abbrev table -- compressed */ 149 .section .zdebug_abbrev 150.Labbrev1_begin: 151 .ascii "ZLIB" 152 .4byte 0 153 .2byte 0 154 .byte 0 155 .byte 51 156 .byte 0x78 157 .byte 0x5e 158 .byte 0x63 159 .byte 0x14 160 .byte 0x64 161 .byte 0x14 162 .byte 0x60 163 .byte 0x13 164 .byte 0x62 165 .byte 0x14 166 .byte 0x64 167 .byte 0x64 168 .byte 0xe6 169 .byte 0x50 170 .byte 0xe5 171 .byte 0x10 172 .byte 0xe6 173 .byte 0x66 174 .byte 0x60 175 .byte 0x60 176 .byte 0xd2 177 .byte 0x63 178 .byte 0xb0 179 .byte 0xe7 180 .byte 0xb1 181 .byte 0xe2 182 .byte 0xb6 183 .byte 0xe6 184 .byte 0x66 185 .byte 0xe6 186 .byte 0xf0 187 .byte 0x14 188 .byte 0x16 189 .byte 0x64 190 .byte 0x14 191 .byte 0x62 192 .byte 0x74 193 .byte 0xe0 194 .byte 0x02 195 .byte 0x00 196 .byte 0x25 197 .byte 0x78 198 .byte 0x02 199 .byte 0x81 200 .byte 0x78 201 .byte 0x9c 202 .byte 0x63 203 .byte 0x60 204 .byte 0x60 205 .byte 0x56 206 .byte 0x61 207 .byte 0x60 208 .byte 0xe6 209 .byte 0xe0 210 .byte 0xe6 211 .byte 0xb6 212 .byte 0xe3 213 .byte 0x66 214 .byte 0x00 215 .byte 0x02 216 .byte 0x00 217 .byte 0x04 218 .byte 0x9c 219 .byte 0x00 220 .byte 0x92 221