Jake Ehrlich | c3a89ee | 2017-11-03 19:15:06 +0000 | [diff] [blame] | 1 | # REQUIRES: llvm-64-bits |
| 2 | # REQUIRES: system-linux |
| 3 | |
| 4 | # RUN: yaml2obj %s > %t |
Jake Ehrlich | 1a46848 | 2017-12-01 00:54:28 +0000 | [diff] [blame] | 5 | # RUN: dd if=%t of=%t bs=1 count=0 seek=1M |
Jake Ehrlich | c3a89ee | 2017-11-03 19:15:06 +0000 | [diff] [blame] | 6 | # RUN: rm -f %t.lib |
| 7 | # RUN: cp %t %t2 |
Jake Ehrlich | 1a46848 | 2017-12-01 00:54:28 +0000 | [diff] [blame] | 8 | # RUN: llvm-ar -sym64-threshold=19 cr %t.lib %t %t2 %p/Inputs/trivial-object-test.elf-x86-64 |
Jake Ehrlich | c3a89ee | 2017-11-03 19:15:06 +0000 | [diff] [blame] | 9 | # RUN: llvm-nm --print-armap %t.lib | FileCheck %s |
Jake Ehrlich | 1a46848 | 2017-12-01 00:54:28 +0000 | [diff] [blame] | 10 | # RUN: grep SYM64 %t.lib |
Jake Ehrlich | c3a89ee | 2017-11-03 19:15:06 +0000 | [diff] [blame] | 11 | |
NAKAMURA Takumi | 1ac3ae7 | 2017-11-04 06:00:11 +0000 | [diff] [blame] | 12 | # Delete temp files. They are too large. |
| 13 | # RUN: rm -f %t %t2 %t.lib |
| 14 | |
Jake Ehrlich | c3a89ee | 2017-11-03 19:15:06 +0000 | [diff] [blame] | 15 | !ELF |
| 16 | FileHeader: |
| 17 | Class: ELFCLASS64 |
| 18 | Data: ELFDATA2LSB |
| 19 | Type: ET_EXEC |
| 20 | Machine: EM_X86_64 |
| 21 | Sections: |
| 22 | - Name: .data |
| 23 | Type: SHT_PROGBITS |
| 24 | Flags: [ SHF_ALLOC ] |
| 25 | AddressAlign: 0x0000000000000001 |
| 26 | Content: "00" |
| 27 | Size: 32 |
| 28 | |
| 29 | # CHECK: Archive map |
| 30 | # CHECK-NEXT: main in trivial-object-test.elf-x86-64 |
| 31 | |
Jake Ehrlich | 1a46848 | 2017-12-01 00:54:28 +0000 | [diff] [blame] | 32 | # CHECK: archive-GNU64-write.test.tmp: |
Jake Ehrlich | c3a89ee | 2017-11-03 19:15:06 +0000 | [diff] [blame] | 33 | |
Jake Ehrlich | 1a46848 | 2017-12-01 00:54:28 +0000 | [diff] [blame] | 34 | # CHECK: archive-GNU64-write.test.tmp2: |
Jake Ehrlich | c3a89ee | 2017-11-03 19:15:06 +0000 | [diff] [blame] | 35 | |
| 36 | # CHECK: trivial-object-test.elf-x86-64: |
| 37 | # CHECK-NEXT: U SomeOtherFunction |
| 38 | # CHECK-NEXT: 0000000000000000 T main |
| 39 | # CHECK-NEXT: U puts |