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 312 matching lines...) Loading... |
323 ; CHECK: SHF_MERGE | 323 ; CHECK: SHF_MERGE |
324 ; CHECK: ] | 324 ; CHECK: ] |
325 ; CHECK: Address: 0x0 | 325 ; CHECK: Address: 0x0 |
326 ; CHECK: Offset: 0x{{[1-9A-F][0-9A-F]*}} | 326 ; CHECK: Offset: 0x{{[1-9A-F][0-9A-F]*}} |
327 ; CHECK: Size: 24 | 327 ; CHECK: Size: 24 |
328 ; CHECK: Link: 0 | 328 ; CHECK: Link: 0 |
329 ; CHECK: Info: 0 | 329 ; CHECK: Info: 0 |
330 ; CHECK: AddressAlignment: 8 | 330 ; CHECK: AddressAlignment: 8 |
331 ; CHECK: EntrySize: 8 | 331 ; CHECK: EntrySize: 8 |
332 ; CHECK: SectionData ( | 332 ; CHECK: SectionData ( |
333 ; CHECK: 0000: 03000000 0000F8FF FFFFFFFF FFFFF7FF | 333 ; CHECK: 0000: FFFFFFFF FFFFF7FF 03000000 0000F8FF |
334 ; CHECK: 0010: FFFFFFFF FFFFFFFF | 334 ; CHECK: 0010: FFFFFFFF FFFFFFFF |
335 ; CHECK: ) | 335 ; CHECK: ) |
336 ; CHECK: } | 336 ; CHECK: } |
337 ; CHECK: Section { | 337 ; CHECK: Section { |
338 ; CHECK: Index: {{[1-9][0-9]*}} | 338 ; CHECK: Index: {{[1-9][0-9]*}} |
339 ; CHECK: Name: .shstrtab | 339 ; CHECK: Name: .shstrtab |
340 ; CHECK: Type: SHT_STRTAB | 340 ; CHECK: Type: SHT_STRTAB |
341 ; CHECK: Flags [ (0x0) | 341 ; CHECK: Flags [ (0x0) |
342 ; CHECK: ] | 342 ; CHECK: ] |
343 ; CHECK: Address: 0x0 | 343 ; CHECK: Address: 0x0 |
(...skipping 78 matching lines...) Loading... |
422 ; CHECK: Name: .L$double$0 | 422 ; CHECK: Name: .L$double$0 |
423 ; CHECK-NEXT: Value: 0x10 | 423 ; CHECK-NEXT: Value: 0x10 |
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: 0x8 |
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: 0x4 |
442 ; CHECK-NEXT: Size: 0 | 442 ; CHECK-NEXT: Size: 0 |
(...skipping 195 matching lines...) 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 |