[llvm-objcopy][test] Clean up -B tests

-B is ignored for GNU objcopy compatibility after D67215/r371914.

* Delete mentions of -B from input-output-target.test - we have enough -B tests.
* Merge binary-input-with-arch.test into binary-output-target.test.

Reviewed By: rupprecht

Differential Revision: https://reviews.llvm.org/D67693

llvm-svn: 372809
This commit is contained in:
Fangrui Song 2019-09-25 03:41:01 +00:00
parent 0264950697
commit f2bbfa05fe
3 changed files with 13 additions and 30 deletions

View File

@ -1,26 +0,0 @@
# RUN: echo -n abcd > %t.x-txt
# Preserve input to verify it is not modified.
# RUN: cp %t.x-txt %t-copy.txt
# RUN: llvm-objcopy -I binary -B i386 -O elf64-x86-64 %t.x-txt %t.o
# RUN: llvm-readobj --file-headers %t.o | FileCheck %s --check-prefixes=CHECK,SYSV
# RUN: cmp %t.x-txt %t-copy.txt
# Many uses of objcopy use no spaces in the flags, make sure that also works.
# RUN: llvm-objcopy -Ibinary -Bi386 -Oelf64-x86-64 %t.x-txt %t-no-spaces.o
# RUN: cmp %t.o %t-no-spaces.o
# elf64-x86-64-freebsd sets the OS/ABI field.
# RUN: llvm-objcopy -I binary -B i386 -O elf64-x86-64-freebsd %t.x-txt %t.freebsd.o
# RUN: llvm-readobj --file-headers %t.freebsd.o | FileCheck %s --check-prefixes=CHECK,FREEBSD
# CHECK: Format: ELF64-x86-64
# CHECK-NEXT: Arch: x86_64
# CHECK-NEXT: AddressSize: 64bit
# CHECK: Class: 64-bit
# CHECK: DataEncoding: LittleEndian
# SYSV: OS/ABI: SystemV
# FREEBSD: OS/ABI: FreeBSD
# CHECK: Machine: EM_X86_64
# CHECK: HeaderSize: 64
# CHECK: SectionHeaderEntrySize: 64

View File

@ -105,3 +105,12 @@
# CHECK-NEXT: SectionHeaderCount: 4
# CHECK-NEXT: StringTableSectionIndex:
# CHECK-NEXT: }
## ELFOSABI_NONE = ELFOSABI_SYSV = 0 is the default.
## "-freebsd" suffixed target name can change the field to ELFOSABI_FREEBSD.
## Many uses of objcopy use no spaces in the flags, make sure that also works.
# RUN: llvm-objcopy -Ibinary -O elf64-x86-64-freebsd %t.txt %t.freebsd.o
# RUN: llvm-readobj --file-headers %t.freebsd.o | FileCheck %s --check-prefixes=FREEBSD
# FREEBSD: OS/ABI: FreeBSD

View File

@ -4,18 +4,18 @@
# RUN: cp %t.txt %t-copy.txt
# -F <target> is equivalent to -I <target> -O <target>
# RUN: llvm-objcopy -F binary -B i386:x86-64 %t.txt %t.2.txt
# RUN: llvm-objcopy -F binary %t.txt %t.2.txt
# RUN: cmp %t-copy.txt %t.2.txt
# --target <target> is equivalent to --input-target <target> --output-target <target>
# RUN: llvm-objcopy --target binary -B i386:x86-64 %t.txt %t.3.txt
# RUN: llvm-objcopy --target binary %t.txt %t.3.txt
# RUN: cmp %t-copy.txt %t.3.txt
# --target is incompatibile with --input-target/--output-target
# RUN: not llvm-objcopy --target binary --input-target binary -B i386:x86-64 \
# RUN: not llvm-objcopy --target binary --input-target binary \
# RUN: %t.txt %t.4.txt 2>&1 \
# RUN: | FileCheck %s --check-prefix=BAD-FLAG
# RUN: not llvm-objcopy --target binary --output-target binary -B i386:x86-64 \
# RUN: not llvm-objcopy --target binary --output-target binary \
# RUN: %t.txt %t.4.txt 2>&1 \
# RUN: | FileCheck %s --check-prefix=BAD-FLAG