Index: test/tools/llvm-objcopy/ELF/binary-input-with-arch.test =================================================================== --- test/tools/llvm-objcopy/ELF/binary-input-with-arch.test +++ /dev/null @@ -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 Index: test/tools/llvm-objcopy/ELF/binary-output-target.test =================================================================== --- test/tools/llvm-objcopy/ELF/binary-output-target.test +++ test/tools/llvm-objcopy/ELF/binary-output-target.test @@ -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 Index: test/tools/llvm-objcopy/ELF/input-output-target.test =================================================================== --- test/tools/llvm-objcopy/ELF/input-output-target.test +++ test/tools/llvm-objcopy/ELF/input-output-target.test @@ -4,18 +4,18 @@ # RUN: cp %t.txt %t-copy.txt # -F is equivalent to -I -O -# 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 is equivalent to --input-target --output-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