1/* 2 Copyright 2013-2014 Free Software Foundation, Inc. 3 4 This program is free software; you can redistribute it and/or modify 5 it under the terms of the GNU General Public License as published by 6 the Free Software Foundation; either version 3 of the License, or 7 (at your option) any later version. 8 9 This program is distributed in the hope that it will be useful, 10 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 GNU General Public License for more details. 13 14 You should have received a copy of the GNU General Public License 15 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 16 17 /* The FDE entry for "stop_frame" in the .debug_frame section has 18 been hand modified to mark a set of registers as undefined. 19 Otherwise this file is as generated by gcc 4.7.2 for x86_64. */ 20 .file "dw2-reg-undefined.c" 21 .text 22.Ltext0: 23 .globl stop_frame 24 .type stop_frame, @function 25stop_frame: 26.LFB0: 27 .file 1 "dw2-reg-undefined.c" 28 .loc 1 19 0 29 pushq %rbp 30.LCFI0: 31 movq %rsp, %rbp 32.LCFI1: 33 .loc 1 22 0 34 popq %rbp 35.LCFI2: 36 ret 37.LFE0: 38 .size stop_frame, .-stop_frame 39 .globl first_frame 40 .type first_frame, @function 41first_frame: 42.LFB1: 43 .loc 1 26 0 44 pushq %rbp 45.LCFI3: 46 movq %rsp, %rbp 47.LCFI4: 48 .loc 1 27 0 49 movl $0, %eax 50 call stop_frame 51 .loc 1 28 0 52 popq %rbp 53.LCFI5: 54 ret 55.LFE1: 56 .size first_frame, .-first_frame 57 .globl main 58 .type main, @function 59main: 60.LFB2: 61 .loc 1 32 0 62 pushq %rbp 63.LCFI6: 64 movq %rsp, %rbp 65.LCFI7: 66 .loc 1 33 0 67 movl $0, %eax 68 call first_frame 69 .loc 1 35 0 70 movl $0, %eax 71 .loc 1 36 0 72 popq %rbp 73.LCFI8: 74 ret 75.LFE2: 76 .size main, .-main 77 .section .debug_frame,"",@progbits 78.Lframe0: 79 .long .LECIE0-.LSCIE0 80.LSCIE0: 81 .long 0xffffffff 82 .byte 0x1 83 .string "" 84 .uleb128 0x1 85 .sleb128 -8 86 .byte 0x10 87 .byte 0xc 88 .uleb128 0x7 89 .uleb128 0x8 90 .byte 0x90 91 .uleb128 0x1 92 .align 8 93.LECIE0: 94 /* This FDE entry, for stop_frame was modified to mark 95 registers 0 -> 6 as being undefined. */ 96.LSFDE0: 97 .long .LEFDE0-.LASFDE0 98.LASFDE0: 99 .long .Lframe0 100 .quad .LFB0 101 .quad .LFE0-.LFB0 102 103 /* START OF NEW CONTENT. */ 104 .byte 0x7 /* DW_CFA_undefined */ 105 .uleb128 0x0 /* ULEB128 register */ 106 .byte 0x7 /* DW_CFA_undefined */ 107 .uleb128 0x1 /* ULEB128 register */ 108 .byte 0x7 /* DW_CFA_undefined */ 109 .uleb128 0x2 /* ULEB128 register */ 110 .byte 0x7 /* DW_CFA_undefined */ 111 .uleb128 0x3 /* ULEB128 register */ 112 .byte 0x7 /* DW_CFA_undefined */ 113 .uleb128 0x4 /* ULEB128 register */ 114 .byte 0x7 /* DW_CFA_undefined */ 115 .uleb128 0x5 /* ULEB128 register */ 116 .byte 0x7 /* DW_CFA_undefined */ 117 .uleb128 0x6 /* ULEB128 register */ 118 .byte 0x7 /* DW_CFA_undefined */ 119 .uleb128 0x7 /* ULEB128 register */ 120 /* END OF NEW CONTENT. */ 121 122 .byte 0x4 123 .long .LCFI0-.LFB0 124 .byte 0xe 125 .uleb128 0x10 126 .byte 0x86 127 .uleb128 0x2 128 .byte 0x4 129 .long .LCFI1-.LCFI0 130 .byte 0xd 131 .uleb128 0x6 132 .byte 0x4 133 .long .LCFI2-.LCFI1 134 .byte 0xc 135 .uleb128 0x7 136 .uleb128 0x8 137 .align 8 138.LEFDE0: 139.LSFDE2: 140 .long .LEFDE2-.LASFDE2 141.LASFDE2: 142 .long .Lframe0 143 .quad .LFB1 144 .quad .LFE1-.LFB1 145 .byte 0x4 146 .long .LCFI3-.LFB1 147 .byte 0xe 148 .uleb128 0x10 149 .byte 0x86 150 .uleb128 0x2 151 .byte 0x4 152 .long .LCFI4-.LCFI3 153 .byte 0xd 154 .uleb128 0x6 155 .byte 0x4 156 .long .LCFI5-.LCFI4 157 .byte 0xc 158 .uleb128 0x7 159 .uleb128 0x8 160 .align 8 161.LEFDE2: 162.LSFDE4: 163 .long .LEFDE4-.LASFDE4 164.LASFDE4: 165 .long .Lframe0 166 .quad .LFB2 167 .quad .LFE2-.LFB2 168 .byte 0x4 169 .long .LCFI6-.LFB2 170 .byte 0xe 171 .uleb128 0x10 172 .byte 0x86 173 .uleb128 0x2 174 .byte 0x4 175 .long .LCFI7-.LCFI6 176 .byte 0xd 177 .uleb128 0x6 178 .byte 0x4 179 .long .LCFI8-.LCFI7 180 .byte 0xc 181 .uleb128 0x7 182 .uleb128 0x8 183 .align 8 184.LEFDE4: 185 .section .eh_frame,"a",@progbits 186.Lframe1: 187 .long .LECIE1-.LSCIE1 188.LSCIE1: 189 .long 0 190 .byte 0x1 191 .string "zR" 192 .uleb128 0x1 193 .sleb128 -8 194 .byte 0x10 195 .uleb128 0x1 196 .byte 0x3 197 .byte 0xc 198 .uleb128 0x7 199 .uleb128 0x8 200 .byte 0x90 201 .uleb128 0x1 202 .align 8 203.LECIE1: 204.LSFDE7: 205 .long .LEFDE7-.LASFDE7 206.LASFDE7: 207 .long .LASFDE7-.Lframe1 208 .long .LFB0 209 .long .LFE0-.LFB0 210 .uleb128 0 211 .byte 0x4 212 .long .LCFI0-.LFB0 213 .byte 0xe 214 .uleb128 0x10 215 .byte 0x86 216 .uleb128 0x2 217 .byte 0x4 218 .long .LCFI1-.LCFI0 219 .byte 0xd 220 .uleb128 0x6 221 .byte 0x4 222 .long .LCFI2-.LCFI1 223 .byte 0xc 224 .uleb128 0x7 225 .uleb128 0x8 226 .align 8 227.LEFDE7: 228.LSFDE9: 229 .long .LEFDE9-.LASFDE9 230.LASFDE9: 231 .long .LASFDE9-.Lframe1 232 .long .LFB1 233 .long .LFE1-.LFB1 234 .uleb128 0 235 .byte 0x4 236 .long .LCFI3-.LFB1 237 .byte 0xe 238 .uleb128 0x10 239 .byte 0x86 240 .uleb128 0x2 241 .byte 0x4 242 .long .LCFI4-.LCFI3 243 .byte 0xd 244 .uleb128 0x6 245 .byte 0x4 246 .long .LCFI5-.LCFI4 247 .byte 0xc 248 .uleb128 0x7 249 .uleb128 0x8 250 .align 8 251.LEFDE9: 252.LSFDE11: 253 .long .LEFDE11-.LASFDE11 254.LASFDE11: 255 .long .LASFDE11-.Lframe1 256 .long .LFB2 257 .long .LFE2-.LFB2 258 .uleb128 0 259 .byte 0x4 260 .long .LCFI6-.LFB2 261 .byte 0xe 262 .uleb128 0x10 263 .byte 0x86 264 .uleb128 0x2 265 .byte 0x4 266 .long .LCFI7-.LCFI6 267 .byte 0xd 268 .uleb128 0x6 269 .byte 0x4 270 .long .LCFI8-.LCFI7 271 .byte 0xc 272 .uleb128 0x7 273 .uleb128 0x8 274 .align 8 275.LEFDE11: 276 .text 277.Letext0: 278 .section .debug_info,"",@progbits 279.Ldebug_info0: 280 .long 0x8c 281 .value 0x2 282 .long .Ldebug_abbrev0 283 .byte 0x8 284 .uleb128 0x1 285 .long .LASF2 286 .byte 0x1 287 .long .LASF3 288 .long .LASF4 289 .quad .Ltext0 290 .quad .Letext0 291 .long .Ldebug_line0 292 .uleb128 0x2 293 .byte 0x1 294 .long .LASF0 295 .byte 0x1 296 .byte 0x12 297 .quad .LFB0 298 .quad .LFE0 299 .long .LLST0 300 .byte 0x1 301 .uleb128 0x3 302 .byte 0x1 303 .long .LASF1 304 .byte 0x1 305 .byte 0x19 306 .quad .LFB1 307 .quad .LFE1 308 .long .LLST1 309 .byte 0x1 310 .uleb128 0x4 311 .byte 0x1 312 .long .LASF5 313 .byte 0x1 314 .byte 0x1f 315 .long 0x88 316 .quad .LFB2 317 .quad .LFE2 318 .long .LLST2 319 .byte 0x1 320 .uleb128 0x5 321 .byte 0x4 322 .byte 0x5 323 .string "int" 324 .byte 0 325 .section .debug_abbrev,"",@progbits 326.Ldebug_abbrev0: 327 .uleb128 0x1 328 .uleb128 0x11 329 .byte 0x1 330 .uleb128 0x25 331 .uleb128 0xe 332 .uleb128 0x13 333 .uleb128 0xb 334 .uleb128 0x3 335 .uleb128 0xe 336 .uleb128 0x1b 337 .uleb128 0xe 338 .uleb128 0x11 339 .uleb128 0x1 340 .uleb128 0x12 341 .uleb128 0x1 342 .uleb128 0x10 343 .uleb128 0x6 344 .byte 0 345 .byte 0 346 .uleb128 0x2 347 .uleb128 0x2e 348 .byte 0 349 .uleb128 0x3f 350 .uleb128 0xc 351 .uleb128 0x3 352 .uleb128 0xe 353 .uleb128 0x3a 354 .uleb128 0xb 355 .uleb128 0x3b 356 .uleb128 0xb 357 .uleb128 0x11 358 .uleb128 0x1 359 .uleb128 0x12 360 .uleb128 0x1 361 .uleb128 0x40 362 .uleb128 0x6 363 .uleb128 0x2117 364 .uleb128 0xc 365 .byte 0 366 .byte 0 367 .uleb128 0x3 368 .uleb128 0x2e 369 .byte 0 370 .uleb128 0x3f 371 .uleb128 0xc 372 .uleb128 0x3 373 .uleb128 0xe 374 .uleb128 0x3a 375 .uleb128 0xb 376 .uleb128 0x3b 377 .uleb128 0xb 378 .uleb128 0x11 379 .uleb128 0x1 380 .uleb128 0x12 381 .uleb128 0x1 382 .uleb128 0x40 383 .uleb128 0x6 384 .uleb128 0x2116 385 .uleb128 0xc 386 .byte 0 387 .byte 0 388 .uleb128 0x4 389 .uleb128 0x2e 390 .byte 0 391 .uleb128 0x3f 392 .uleb128 0xc 393 .uleb128 0x3 394 .uleb128 0xe 395 .uleb128 0x3a 396 .uleb128 0xb 397 .uleb128 0x3b 398 .uleb128 0xb 399 .uleb128 0x49 400 .uleb128 0x13 401 .uleb128 0x11 402 .uleb128 0x1 403 .uleb128 0x12 404 .uleb128 0x1 405 .uleb128 0x40 406 .uleb128 0x6 407 .uleb128 0x2116 408 .uleb128 0xc 409 .byte 0 410 .byte 0 411 .uleb128 0x5 412 .uleb128 0x24 413 .byte 0 414 .uleb128 0xb 415 .uleb128 0xb 416 .uleb128 0x3e 417 .uleb128 0xb 418 .uleb128 0x3 419 .uleb128 0x8 420 .byte 0 421 .byte 0 422 .byte 0 423 .section .debug_loc,"",@progbits 424.Ldebug_loc0: 425.LLST0: 426 .quad .LFB0-.Ltext0 427 .quad .LCFI0-.Ltext0 428 .value 0x2 429 .byte 0x77 430 .sleb128 8 431 .quad .LCFI0-.Ltext0 432 .quad .LCFI1-.Ltext0 433 .value 0x2 434 .byte 0x77 435 .sleb128 16 436 .quad .LCFI1-.Ltext0 437 .quad .LCFI2-.Ltext0 438 .value 0x2 439 .byte 0x76 440 .sleb128 16 441 .quad .LCFI2-.Ltext0 442 .quad .LFE0-.Ltext0 443 .value 0x2 444 .byte 0x77 445 .sleb128 8 446 .quad 0 447 .quad 0 448.LLST1: 449 .quad .LFB1-.Ltext0 450 .quad .LCFI3-.Ltext0 451 .value 0x2 452 .byte 0x77 453 .sleb128 8 454 .quad .LCFI3-.Ltext0 455 .quad .LCFI4-.Ltext0 456 .value 0x2 457 .byte 0x77 458 .sleb128 16 459 .quad .LCFI4-.Ltext0 460 .quad .LCFI5-.Ltext0 461 .value 0x2 462 .byte 0x76 463 .sleb128 16 464 .quad .LCFI5-.Ltext0 465 .quad .LFE1-.Ltext0 466 .value 0x2 467 .byte 0x77 468 .sleb128 8 469 .quad 0 470 .quad 0 471.LLST2: 472 .quad .LFB2-.Ltext0 473 .quad .LCFI6-.Ltext0 474 .value 0x2 475 .byte 0x77 476 .sleb128 8 477 .quad .LCFI6-.Ltext0 478 .quad .LCFI7-.Ltext0 479 .value 0x2 480 .byte 0x77 481 .sleb128 16 482 .quad .LCFI7-.Ltext0 483 .quad .LCFI8-.Ltext0 484 .value 0x2 485 .byte 0x76 486 .sleb128 16 487 .quad .LCFI8-.Ltext0 488 .quad .LFE2-.Ltext0 489 .value 0x2 490 .byte 0x77 491 .sleb128 8 492 .quad 0 493 .quad 0 494 .section .debug_aranges,"",@progbits 495 .long 0x2c 496 .value 0x2 497 .long .Ldebug_info0 498 .byte 0x8 499 .byte 0 500 .value 0 501 .value 0 502 .quad .Ltext0 503 .quad .Letext0-.Ltext0 504 .quad 0 505 .quad 0 506 .section .debug_line,"",@progbits 507.Ldebug_line0: 508 .section .debug_str,"MS",@progbits,1 509.LASF0: 510 .string "stop_frame" 511.LASF3: 512 .string "dw2-reg-undefined.c" 513.LASF2: 514 .string "GNU C 4.7.2" 515.LASF1: 516 .string "first_frame" 517.LASF5: 518 .string "main" 519.LASF4: 520 .string "/home/username/src/gdb/testsuite/gdb.dwarf2" 521 .ident "GCC: (GNU) 4.7.2" 522 .section .note.GNU-stack,"",@progbits 523