Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 ; Tests that we generate an ELF container with fields that make sense, | 1 ; Tests that we generate an ELF container with fields that make sense, |
| 2 ; cross-validating against llvm-mc. | 2 ; cross-validating against llvm-mc. |
| 3 | 3 |
| 4 ; For the integrated ELF writer, we can't pipe the output because we need | 4 ; For the integrated ELF writer, we can't pipe the output because we need |
| 5 ; to seek backward and patch up the file headers. So, use a temporary file. | 5 ; to seek backward and patch up the file headers. So, use a temporary file. |
| 6 ; RUN: %p2i -i %s --filetype=obj --args -O2 --verbose none -o %t \ | 6 ; RUN: %p2i -i %s --filetype=obj --args -O2 --verbose none -o %t \ |
| 7 ; RUN: && llvm-readobj -file-headers -sections -section-data \ | 7 ; RUN: && llvm-readobj -file-headers -sections -section-data \ |
| 8 ; RUN: -relocations -symbols %t | FileCheck %s | 8 ; RUN: -relocations -symbols %t | FileCheck %s |
| 9 | 9 |
| 10 ; RUN: %if --need=allow_dump --command %p2i -i %s --args -O2 --verbose none \ | 10 ; RUN: %if --need=allow_dump --command %p2i -i %s --args -O2 --verbose none \ |
| (...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 304 ; CHECK: SHF_MERGE | 304 ; CHECK: SHF_MERGE |
| 305 ; CHECK: ] | 305 ; CHECK: ] |
| 306 ; CHECK: Address: 0x0 | 306 ; CHECK: Address: 0x0 |
| 307 ; CHECK: Offset: 0x{{[1-9A-F][0-9A-F]*}} | 307 ; CHECK: Offset: 0x{{[1-9A-F][0-9A-F]*}} |
| 308 ; CHECK: Size: 8 | 308 ; CHECK: Size: 8 |
| 309 ; CHECK: Link: 0 | 309 ; CHECK: Link: 0 |
| 310 ; CHECK: Info: 0 | 310 ; CHECK: Info: 0 |
| 311 ; CHECK: AddressAlignment: 4 | 311 ; CHECK: AddressAlignment: 4 |
| 312 ; CHECK: EntrySize: 4 | 312 ; CHECK: EntrySize: 4 |
| 313 ; CHECK: SectionData ( | 313 ; CHECK: SectionData ( |
| 314 ; CHECK: 0000: A0709D3F 00000080 | 314 ; CHECK: 0000: 00000080 A0709D3F |
| 315 ; CHECK: ) | 315 ; CHECK: ) |
| 316 ; CHECK: } | 316 ; CHECK: } |
| 317 ; CHECK: Section { | 317 ; CHECK: Section { |
| 318 ; CHECK: Index: {{[1-9][0-9]*}} | 318 ; CHECK: Index: {{[1-9][0-9]*}} |
| 319 ; CHECK: Name: .rodata.cst8 | 319 ; CHECK: Name: .rodata.cst8 |
| 320 ; CHECK: Type: SHT_PROGBITS | 320 ; CHECK: Type: SHT_PROGBITS |
| 321 ; CHECK: Flags [ (0x12) | 321 ; CHECK: Flags [ (0x12) |
| 322 ; CHECK: SHF_ALLOC | 322 ; CHECK: SHF_ALLOC |
| 323 ; CHECK: SHF_MERGE | 323 ; CHECK: SHF_MERGE |
| 324 ; CHECK: ] | 324 ; CHECK: ] |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 413 ; CHECK-NEXT: Name: (0) | 413 ; CHECK-NEXT: Name: (0) |
| 414 ; CHECK-NEXT: Value: 0x0 | 414 ; CHECK-NEXT: Value: 0x0 |
| 415 ; CHECK-NEXT: Size: 0 | 415 ; CHECK-NEXT: Size: 0 |
| 416 ; CHECK-NEXT: Binding: Local | 416 ; CHECK-NEXT: Binding: Local |
| 417 ; CHECK-NEXT: Type: None | 417 ; CHECK-NEXT: Type: None |
| 418 ; CHECK-NEXT: Other: 0 | 418 ; CHECK-NEXT: Other: 0 |
| 419 ; CHECK-NEXT: Section: Undefined (0x0) | 419 ; CHECK-NEXT: Section: Undefined (0x0) |
| 420 ; CHECK-NEXT: } | 420 ; CHECK-NEXT: } |
| 421 ; CHECK: Symbol { | 421 ; CHECK: Symbol { |
| 422 ; CHECK: Name: .L$double$0 | 422 ; CHECK: Name: .L$double$0 |
| 423 ; CHECK-NEXT: Value: 0x10 | 423 ; CHECK-NEXT: Value: 0x10 |
|
jvoung (off chromium)
2015/04/08 15:03:28
a bit surprised that L$double$0 and $1 didn't swit
Jim Stichnoth
2015/04/08 22:34:30
(Note: For whatever reason (oversight?), .L$double
| |
| 424 ; CHECK-NEXT: Size: 0 | 424 ; CHECK-NEXT: Size: 0 |
| 425 ; CHECK-NEXT: Binding: Local (0x0) | 425 ; CHECK-NEXT: Binding: Local (0x0) |
| 426 ; CHECK-NEXT: Type: None (0x0) | 426 ; CHECK-NEXT: Type: None (0x0) |
| 427 ; CHECK-NEXT: Other: 0 | 427 ; CHECK-NEXT: Other: 0 |
| 428 ; CHECK-NEXT: Section: .rodata.cst8 | 428 ; CHECK-NEXT: Section: .rodata.cst8 |
| 429 ; CHECK-NEXT: } | 429 ; CHECK-NEXT: } |
| 430 ; CHECK: Symbol { | 430 ; CHECK: Symbol { |
| 431 ; CHECK: Name: .L$double$2 | 431 ; CHECK: Name: .L$double$2 |
| 432 ; CHECK-NEXT: Value: 0x0 | 432 ; CHECK-NEXT: Value: 0x0 |
| 433 ; CHECK-NEXT: Size: 0 | 433 ; CHECK-NEXT: Size: 0 |
| 434 ; CHECK-NEXT: Binding: Local (0x0) | 434 ; CHECK-NEXT: Binding: Local (0x0) |
| 435 ; CHECK-NEXT: Type: None (0x0) | 435 ; CHECK-NEXT: Type: None (0x0) |
| 436 ; CHECK-NEXT: Other: 0 | 436 ; CHECK-NEXT: Other: 0 |
| 437 ; CHECK-NEXT: Section: .rodata.cst8 | 437 ; CHECK-NEXT: Section: .rodata.cst8 |
| 438 ; CHECK-NEXT: } | 438 ; CHECK-NEXT: } |
| 439 ; CHECK: Symbol { | 439 ; CHECK: Symbol { |
| 440 ; CHECK: Name: .L$float$0 | 440 ; CHECK: Name: .L$float$0 |
| 441 ; CHECK-NEXT: Value: 0x4 | 441 ; CHECK-NEXT: Value: 0x0 |
| 442 ; CHECK-NEXT: Size: 0 | 442 ; CHECK-NEXT: Size: 0 |
| 443 ; CHECK-NEXT: Binding: Local (0x0) | 443 ; CHECK-NEXT: Binding: Local (0x0) |
| 444 ; CHECK-NEXT: Type: None (0x0) | 444 ; CHECK-NEXT: Type: None (0x0) |
| 445 ; CHECK-NEXT: Other: 0 | 445 ; CHECK-NEXT: Other: 0 |
| 446 ; CHECK-NEXT: Section: .rodata.cst4 | 446 ; CHECK-NEXT: Section: .rodata.cst4 |
| 447 ; CHECK-NEXT: } | 447 ; CHECK-NEXT: } |
| 448 ; CHECK: Symbol { | 448 ; CHECK: Symbol { |
| 449 ; CHECK: Name: .L$float$1 | 449 ; CHECK: Name: .L$float$1 |
| 450 ; CHECK-NEXT: Value: 0x0 | 450 ; CHECK-NEXT: Value: 0x4 |
| 451 ; CHECK-NEXT: Size: 0 | 451 ; CHECK-NEXT: Size: 0 |
| 452 ; CHECK-NEXT: Binding: Local (0x0) | 452 ; CHECK-NEXT: Binding: Local (0x0) |
| 453 ; CHECK-NEXT: Type: None (0x0) | 453 ; CHECK-NEXT: Type: None (0x0) |
| 454 ; CHECK-NEXT: Other: 0 | 454 ; CHECK-NEXT: Other: 0 |
| 455 ; CHECK-NEXT: Section: .rodata.cst4 | 455 ; CHECK-NEXT: Section: .rodata.cst4 |
| 456 ; CHECK-NEXT: } | 456 ; CHECK-NEXT: } |
| 457 ; CHECK: Symbol { | 457 ; CHECK: Symbol { |
| 458 ; CHECK: Name: addend_ptr | 458 ; CHECK: Name: addend_ptr |
| 459 ; CHECK-NEXT: Value: 0x18 | 459 ; CHECK-NEXT: Value: 0x18 |
| 460 ; CHECK-NEXT: Size: 4 | 460 ; CHECK-NEXT: Size: 4 |
| (...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 638 ; CHECK: Symbol { | 638 ; CHECK: Symbol { |
| 639 ; CHECK: Name: memset | 639 ; CHECK: Name: memset |
| 640 ; CHECK-NEXT: Value: 0x0 | 640 ; CHECK-NEXT: Value: 0x0 |
| 641 ; CHECK-NEXT: Size: 0 | 641 ; CHECK-NEXT: Size: 0 |
| 642 ; CHECK-NEXT: Binding: Global | 642 ; CHECK-NEXT: Binding: Global |
| 643 ; CHECK-NEXT: Type: None | 643 ; CHECK-NEXT: Type: None |
| 644 ; CHECK-NEXT: Other: 0 | 644 ; CHECK-NEXT: Other: 0 |
| 645 ; CHECK-NEXT: Section: Undefined | 645 ; CHECK-NEXT: Section: Undefined |
| 646 ; CHECK-NEXT: } | 646 ; CHECK-NEXT: } |
| 647 ; CHECK: ] | 647 ; CHECK: ] |
| OLD | NEW |