1/* 2 Copyright 2010-2021 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/* This was compiled with gcc version 4.7.2 using: 18 gcc -O3 -m32 -g -o pieces-optimized-out.S -S pieces-optimized-out.c 19 The contents of this file are otherwise unmodified. */ 20 21 .file "pieces-optimized-out.c" 22 .text 23.Ltext0: 24 .p2align 4,,15 25 .globl foo 26 .type foo, @function 27foo: 28.LFB0: 29 .file 1 "pieces-optimized-out.c" 30 .loc 1 33 0 31.LVL0: 32 .loc 1 35 0 33 movl 4(%esp), %eax 34 ret 35.LFE0: 36 .size foo, .-foo 37 .section .text.startup,"ax",@progbits 38 .p2align 4,,15 39 .globl main 40 .type main, @function 41main: 42.LFB1: 43 .loc 1 39 0 44.LVL1: 45 subl $4, %esp 46.LCFI0: 47 .loc 1 44 0 48 movl $10, (%esp) 49 call foo 50.LVL2: 51 .loc 1 46 0 52 addl $4, %esp 53.LCFI1: 54 .loc 1 45 0 55 addl $20, %eax 56.LVL3: 57 .loc 1 46 0 58 ret 59.LFE1: 60 .size main, .-main 61 .section .debug_frame,"",@progbits 62.Lframe0: 63 .long .LECIE0-.LSCIE0 64.LSCIE0: 65 .long 0xffffffff 66 .byte 0x1 67 .string "" 68 .uleb128 0x1 69 .sleb128 -4 70 .byte 0x8 71 .byte 0xc 72 .uleb128 0x4 73 .uleb128 0x4 74 .byte 0x88 75 .uleb128 0x1 76 .align 4 77.LECIE0: 78.LSFDE0: 79 .long .LEFDE0-.LASFDE0 80.LASFDE0: 81 .long .Lframe0 82 .long .LFB0 83 .long .LFE0-.LFB0 84 .align 4 85.LEFDE0: 86.LSFDE2: 87 .long .LEFDE2-.LASFDE2 88.LASFDE2: 89 .long .Lframe0 90 .long .LFB1 91 .long .LFE1-.LFB1 92 .byte 0x4 93 .long .LCFI0-.LFB1 94 .byte 0xe 95 .uleb128 0x8 96 .byte 0x4 97 .long .LCFI1-.LCFI0 98 .byte 0xe 99 .uleb128 0x4 100 .align 4 101.LEFDE2: 102 .section .eh_frame,"a",@progbits 103.Lframe1: 104 .long .LECIE1-.LSCIE1 105.LSCIE1: 106 .long 0 107 .byte 0x1 108 .string "" 109 .uleb128 0x1 110 .sleb128 -4 111 .byte 0x8 112 .byte 0xc 113 .uleb128 0x4 114 .uleb128 0x4 115 .byte 0x88 116 .uleb128 0x1 117 .align 4 118.LECIE1: 119.LSFDE5: 120 .long .LEFDE5-.LASFDE5 121.LASFDE5: 122 .long .LASFDE5-.Lframe1 123 .long .LFB0 124 .long .LFE0-.LFB0 125 .align 4 126.LEFDE5: 127.LSFDE7: 128 .long .LEFDE7-.LASFDE7 129.LASFDE7: 130 .long .LASFDE7-.Lframe1 131 .long .LFB1 132 .long .LFE1-.LFB1 133 .byte 0x4 134 .long .LCFI0-.LFB1 135 .byte 0xe 136 .uleb128 0x8 137 .byte 0x4 138 .long .LCFI1-.LCFI0 139 .byte 0xe 140 .uleb128 0x4 141 .align 4 142.LEFDE7: 143 .text 144.Letext0: 145 .section .debug_info,"",@progbits 146.Ldebug_info0: 147 .long 0xe4 148 .value 0x2 149 .long .Ldebug_abbrev0 150 .byte 0x4 151 .uleb128 0x1 152 .long .LASF0 153 .byte 0x1 154 .long .LASF1 155 .long .LASF2 156 .long .Ldebug_ranges0+0 157 .long 0 158 .long 0 159 .long .Ldebug_line0 160 .uleb128 0x2 161 .string "str" 162 .byte 0xc 163 .byte 0x1 164 .byte 0x17 165 .long 0x6c 166 .uleb128 0x3 167 .string "a" 168 .byte 0x1 169 .byte 0x19 170 .long 0x6c 171 .byte 0x2 172 .byte 0x23 173 .uleb128 0 174 .uleb128 0x3 175 .string "b" 176 .byte 0x1 177 .byte 0x1a 178 .long 0x6c 179 .byte 0x2 180 .byte 0x23 181 .uleb128 0x4 182 .uleb128 0x4 183 .string "c" 184 .byte 0x1 185 .byte 0x1b 186 .long 0x6c 187 .byte 0x4 188 .byte 0x3 189 .byte 0x1d 190 .byte 0x2 191 .byte 0x23 192 .uleb128 0x8 193 .uleb128 0x4 194 .string "d" 195 .byte 0x1 196 .byte 0x1c 197 .long 0x6c 198 .byte 0x4 199 .byte 0x3 200 .byte 0x1a 201 .byte 0x2 202 .byte 0x23 203 .uleb128 0x8 204 .byte 0 205 .uleb128 0x5 206 .byte 0x4 207 .byte 0x5 208 .string "int" 209 .uleb128 0x6 210 .byte 0x1 211 .string "foo" 212 .byte 0x1 213 .byte 0x20 214 .byte 0x1 215 .long 0x6c 216 .long .LFB0 217 .long .LFE0 218 .byte 0x2 219 .byte 0x74 220 .sleb128 4 221 .byte 0x1 222 .long 0x9f 223 .uleb128 0x7 224 .string "arg" 225 .byte 0x1 226 .byte 0x20 227 .long 0x6c 228 .byte 0x2 229 .byte 0x91 230 .sleb128 0 231 .byte 0 232 .uleb128 0x8 233 .byte 0x1 234 .long .LASF3 235 .byte 0x1 236 .byte 0x26 237 .byte 0x1 238 .long 0x6c 239 .long .LFB1 240 .long .LFE1 241 .long .LLST0 242 .byte 0x1 243 .uleb128 0x9 244 .string "s" 245 .byte 0x1 246 .byte 0x28 247 .long 0x29 248 .byte 0x6 249 .byte 0x35 250 .byte 0x9f 251 .byte 0x93 252 .uleb128 0x4 253 .byte 0x93 254 .uleb128 0x8 255 .uleb128 0xa 256 .string "v" 257 .byte 0x1 258 .byte 0x29 259 .long 0x6c 260 .long .LLST1 261 .uleb128 0xb 262 .long .LVL2 263 .long 0x73 264 .uleb128 0xc 265 .byte 0x2 266 .byte 0x74 267 .sleb128 0 268 .byte 0x1 269 .byte 0x3a 270 .byte 0 271 .byte 0 272 .byte 0 273 .section .debug_abbrev,"",@progbits 274.Ldebug_abbrev0: 275 .uleb128 0x1 276 .uleb128 0x11 277 .byte 0x1 278 .uleb128 0x25 279 .uleb128 0xe 280 .uleb128 0x13 281 .uleb128 0xb 282 .uleb128 0x3 283 .uleb128 0xe 284 .uleb128 0x1b 285 .uleb128 0xe 286 .uleb128 0x55 287 .uleb128 0x6 288 .uleb128 0x11 289 .uleb128 0x1 290 .uleb128 0x52 291 .uleb128 0x1 292 .uleb128 0x10 293 .uleb128 0x6 294 .byte 0 295 .byte 0 296 .uleb128 0x2 297 .uleb128 0x13 298 .byte 0x1 299 .uleb128 0x3 300 .uleb128 0x8 301 .uleb128 0xb 302 .uleb128 0xb 303 .uleb128 0x3a 304 .uleb128 0xb 305 .uleb128 0x3b 306 .uleb128 0xb 307 .uleb128 0x1 308 .uleb128 0x13 309 .byte 0 310 .byte 0 311 .uleb128 0x3 312 .uleb128 0xd 313 .byte 0 314 .uleb128 0x3 315 .uleb128 0x8 316 .uleb128 0x3a 317 .uleb128 0xb 318 .uleb128 0x3b 319 .uleb128 0xb 320 .uleb128 0x49 321 .uleb128 0x13 322 .uleb128 0x38 323 .uleb128 0xa 324 .byte 0 325 .byte 0 326 .uleb128 0x4 327 .uleb128 0xd 328 .byte 0 329 .uleb128 0x3 330 .uleb128 0x8 331 .uleb128 0x3a 332 .uleb128 0xb 333 .uleb128 0x3b 334 .uleb128 0xb 335 .uleb128 0x49 336 .uleb128 0x13 337 .uleb128 0xb 338 .uleb128 0xb 339 .uleb128 0xd 340 .uleb128 0xb 341 .uleb128 0xc 342 .uleb128 0xb 343 .uleb128 0x38 344 .uleb128 0xa 345 .byte 0 346 .byte 0 347 .uleb128 0x5 348 .uleb128 0x24 349 .byte 0 350 .uleb128 0xb 351 .uleb128 0xb 352 .uleb128 0x3e 353 .uleb128 0xb 354 .uleb128 0x3 355 .uleb128 0x8 356 .byte 0 357 .byte 0 358 .uleb128 0x6 359 .uleb128 0x2e 360 .byte 0x1 361 .uleb128 0x3f 362 .uleb128 0xc 363 .uleb128 0x3 364 .uleb128 0x8 365 .uleb128 0x3a 366 .uleb128 0xb 367 .uleb128 0x3b 368 .uleb128 0xb 369 .uleb128 0x27 370 .uleb128 0xc 371 .uleb128 0x49 372 .uleb128 0x13 373 .uleb128 0x11 374 .uleb128 0x1 375 .uleb128 0x12 376 .uleb128 0x1 377 .uleb128 0x40 378 .uleb128 0xa 379 .uleb128 0x2117 380 .uleb128 0xc 381 .uleb128 0x1 382 .uleb128 0x13 383 .byte 0 384 .byte 0 385 .uleb128 0x7 386 .uleb128 0x5 387 .byte 0 388 .uleb128 0x3 389 .uleb128 0x8 390 .uleb128 0x3a 391 .uleb128 0xb 392 .uleb128 0x3b 393 .uleb128 0xb 394 .uleb128 0x49 395 .uleb128 0x13 396 .uleb128 0x2 397 .uleb128 0xa 398 .byte 0 399 .byte 0 400 .uleb128 0x8 401 .uleb128 0x2e 402 .byte 0x1 403 .uleb128 0x3f 404 .uleb128 0xc 405 .uleb128 0x3 406 .uleb128 0xe 407 .uleb128 0x3a 408 .uleb128 0xb 409 .uleb128 0x3b 410 .uleb128 0xb 411 .uleb128 0x27 412 .uleb128 0xc 413 .uleb128 0x49 414 .uleb128 0x13 415 .uleb128 0x11 416 .uleb128 0x1 417 .uleb128 0x12 418 .uleb128 0x1 419 .uleb128 0x40 420 .uleb128 0x6 421 .uleb128 0x2117 422 .uleb128 0xc 423 .byte 0 424 .byte 0 425 .uleb128 0x9 426 .uleb128 0x34 427 .byte 0 428 .uleb128 0x3 429 .uleb128 0x8 430 .uleb128 0x3a 431 .uleb128 0xb 432 .uleb128 0x3b 433 .uleb128 0xb 434 .uleb128 0x49 435 .uleb128 0x13 436 .uleb128 0x2 437 .uleb128 0xa 438 .byte 0 439 .byte 0 440 .uleb128 0xa 441 .uleb128 0x34 442 .byte 0 443 .uleb128 0x3 444 .uleb128 0x8 445 .uleb128 0x3a 446 .uleb128 0xb 447 .uleb128 0x3b 448 .uleb128 0xb 449 .uleb128 0x49 450 .uleb128 0x13 451 .uleb128 0x2 452 .uleb128 0x6 453 .byte 0 454 .byte 0 455 .uleb128 0xb 456 .uleb128 0x4109 457 .byte 0x1 458 .uleb128 0x11 459 .uleb128 0x1 460 .uleb128 0x31 461 .uleb128 0x13 462 .byte 0 463 .byte 0 464 .uleb128 0xc 465 .uleb128 0x410a 466 .byte 0 467 .uleb128 0x2 468 .uleb128 0xa 469 .uleb128 0x2111 470 .uleb128 0xa 471 .byte 0 472 .byte 0 473 .byte 0 474 .section .debug_loc,"",@progbits 475.Ldebug_loc0: 476.LLST0: 477 .long .LFB1 478 .long .LCFI0 479 .value 0x2 480 .byte 0x74 481 .sleb128 4 482 .long .LCFI0 483 .long .LCFI1 484 .value 0x2 485 .byte 0x74 486 .sleb128 8 487 .long .LCFI1 488 .long .LFE1 489 .value 0x2 490 .byte 0x74 491 .sleb128 4 492 .long 0 493 .long 0 494.LLST1: 495 .long .LVL1 496 .long .LVL2 497 .value 0x2 498 .byte 0x3a 499 .byte 0x9f 500 .long .LVL2 501 .long .LVL3 502 .value 0x3 503 .byte 0x70 504 .sleb128 10 505 .byte 0x9f 506 .long .LVL3 507 .long .LFE1 508 .value 0x3 509 .byte 0x70 510 .sleb128 -10 511 .byte 0x9f 512 .long 0 513 .long 0 514 .section .debug_aranges,"",@progbits 515 .long 0x24 516 .value 0x2 517 .long .Ldebug_info0 518 .byte 0x4 519 .byte 0 520 .value 0 521 .value 0 522 .long .Ltext0 523 .long .Letext0-.Ltext0 524 .long .LFB1 525 .long .LFE1-.LFB1 526 .long 0 527 .long 0 528 .section .debug_ranges,"",@progbits 529.Ldebug_ranges0: 530 .long .Ltext0 531 .long .Letext0 532 .long .LFB1 533 .long .LFE1 534 .long 0 535 .long 0 536 .section .debug_line,"",@progbits 537.Ldebug_line0: 538 .section .debug_str,"MS",@progbits,1 539.LASF2: 540 .string "/home/username/" 541.LASF1: 542 .string "pieces-optimized-out.c" 543.LASF0: 544 .string "GNU C 4.7.2" 545.LASF3: 546 .string "main" 547 .ident "GCC: (GNU) 4.7.2" 548 .section .note.GNU-stack,"",@progbits 549