diff options
author | Jordan Rupprecht <rupprecht@google.com> | 2019-04-30 15:21:36 +0000 |
---|---|---|
committer | Jordan Rupprecht <rupprecht@google.com> | 2019-04-30 15:21:36 +0000 |
commit | 96bbb1dc2b390f1ed17152c77a7476f898ebcd0c (patch) | |
tree | 9f71493a555f420bca007ee73e32f88f2f9c0bd3 /llvm/test | |
parent | 21c31f5e7b30f3eaf14a2e79b952fb389174065c (diff) | |
download | bcm5719-llvm-96bbb1dc2b390f1ed17152c77a7476f898ebcd0c.tar.gz bcm5719-llvm-96bbb1dc2b390f1ed17152c77a7476f898ebcd0c.zip |
[llvm-objcopy] Add RISC-V support for -B/-O
Reviewers: jorgbrown, espindola, alexshap, jhenderson
Subscribers: emaste, arichardson, fedor.sergeev, jakehehrlich, kito-cheng, shiva0217, MaskRay, rogfer01, rkruppe, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D61272
llvm-svn: 359568
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/tools/llvm-objcopy/ELF/binary-input-arch.test | 28 | ||||
-rw-r--r-- | llvm/test/tools/llvm-objcopy/ELF/cross-arch-headers.test | 30 |
2 files changed, 43 insertions, 15 deletions
diff --git a/llvm/test/tools/llvm-objcopy/ELF/binary-input-arch.test b/llvm/test/tools/llvm-objcopy/ELF/binary-input-arch.test index 73ebdddd163..40e95672b3b 100644 --- a/llvm/test/tools/llvm-objcopy/ELF/binary-input-arch.test +++ b/llvm/test/tools/llvm-objcopy/ELF/binary-input-arch.test @@ -18,6 +18,12 @@ # RUN: llvm-objcopy -I binary -B powerpc:common64 %t.txt %t.powerpc_common64.o # RUN: llvm-readobj --file-headers %t.powerpc_common64.o | FileCheck %s --check-prefixes=CHECK,LE,PPC,64 +# RUN: llvm-objcopy -I binary -B riscv:rv32 %t.txt %t.rv32.o +# RUN: llvm-readobj --file-headers %t.rv32.o | FileCheck %s --check-prefixes=CHECK,LE,RISCV32,32 + +# RUN: llvm-objcopy -I binary -B riscv:rv64 %t.txt %t.rv64.o +# RUN: llvm-readobj --file-headers %t.rv64.o | FileCheck %s --check-prefixes=CHECK,LE,RISCV64,64 + # RUN: llvm-objcopy -I binary -B sparc %t.txt %t.sparc.o # RUN: llvm-readobj --file-headers %t.sparc.o | FileCheck %s --check-prefixes=CHECK,LE,SPARC,32 @@ -25,19 +31,25 @@ # RUN: llvm-readobj --file-headers %t.x86-64.o | FileCheck %s --check-prefixes=CHECK,LE,X86-64,64 # CHECK: Format: -# AARCH64-SAME: ELF64-aarch64-little -# ARM-SAME: ELF32-arm-little -# I386-SAME: ELF32-i386 -# MIPS-SAME: ELF32-mips{{$}} -# PPC-SAME: ELF64-ppc64 -# SPARC-SAME: ELF32-sparc -# X86-64-SAME: ELF64-x86-64 +# 32-SAME: ELF32- +# 64-SAME: ELF64- +# AARCH64-SAME: aarch64-little +# ARM-SAME: arm-little +# I386-SAME: i386 +# MIPS-SAME: mips{{$}} +# RISCV32-SAME: riscv{{$}} +# RISCV64-SAME: riscv{{$}} +# PPC-SAME: ppc64 +# SPARC-SAME: sparc +# X86-64-SAME: x86-64 # AARCH64-NEXT: Arch: aarch64 # ARM-NEXT: Arch: arm # I386-NEXT: Arch: i386 # MIPS-NEXT: Arch: mips{{$$}} # PPC-NEXT: Arch: powerpc64le +# RISCV32-NEXT: Arch: riscv32 +# RISCV64-NEXT: Arch: riscv64 # SPARC-NEXT: Arch: sparcel # X86-64-NEXT: Arch: x86_64 @@ -62,6 +74,8 @@ # I386-NEXT: Machine: EM_386 (0x3) # MIPS-NEXT: Machine: EM_MIPS (0x8) # PPC-NEXT: Machine: EM_PPC64 (0x15) +# RISCV32-NEXT: Machine: EM_RISCV (0xF3) +# RISCV64-NEXT: Machine: EM_RISCV (0xF3) # SPARC-NEXT: Machine: EM_SPARC (0x2) # X86-64-NEXT: Machine: EM_X86_64 (0x3E) # CHECK-NEXT: Version: 1 diff --git a/llvm/test/tools/llvm-objcopy/ELF/cross-arch-headers.test b/llvm/test/tools/llvm-objcopy/ELF/cross-arch-headers.test index af0379c79f1..769b58bbff3 100644 --- a/llvm/test/tools/llvm-objcopy/ELF/cross-arch-headers.test +++ b/llvm/test/tools/llvm-objcopy/ELF/cross-arch-headers.test @@ -53,6 +53,14 @@ # RUN: llvm-readobj --file-headers %t.elf64_ppcle.o | FileCheck %s --check-prefixes=CHECK,LE,PPC64LE,64,SYSV # RUN: llvm-readobj --file-headers %t.elf64_ppcle.dwo | FileCheck %s --check-prefixes=CHECK,LE,PPC64LE,64,SYSV +# RUN: llvm-objcopy %t.o -O elf32-littleriscv %t.elf32_littleriscv.o --split-dwo=%t.elf32_littleriscv.dwo +# RUN: llvm-readobj --file-headers %t.elf32_littleriscv.o | FileCheck %s --check-prefixes=CHECK,LE,RISCV32,32,SYSV +# RUN: llvm-readobj --file-headers %t.elf32_littleriscv.dwo | FileCheck %s --check-prefixes=CHECK,LE,RISCV32,32,SYSV + +# RUN: llvm-objcopy %t.o -O elf64-littleriscv %t.elf64_littleriscv.o --split-dwo=%t.elf64_littleriscv.dwo +# RUN: llvm-readobj --file-headers %t.elf64_littleriscv.o | FileCheck %s --check-prefixes=CHECK,LE,RISCV64,64,SYSV +# RUN: llvm-readobj --file-headers %t.elf64_littleriscv.dwo | FileCheck %s --check-prefixes=CHECK,LE,RISCV64,64,SYSV + # RUN: llvm-objcopy %t.o -O elf64-x86-64 %t.elf64_x86_64.o --split-dwo=%t.elf64_x86_64.dwo # RUN: llvm-readobj --file-headers %t.elf64_x86_64.o | FileCheck %s --check-prefixes=CHECK,LE,X86-64,64,SYSV # RUN: llvm-readobj --file-headers %t.elf64_x86_64.dwo | FileCheck %s --check-prefixes=CHECK,LE,X86-64,64,SYSV @@ -127,6 +135,8 @@ Symbols: # PPC-SAME: ppc{{$}} # PPC64BE-SAME: ppc64{{$}} # PPC64LE-SAME: ppc64{{$}} +# RISCV32-SAME: riscv{{$}} +# RISCV64-SAME: riscv{{$}} # X86-64-SAME: x86-64 # DEFAULT-SAME: unknown @@ -141,6 +151,8 @@ Symbols: # PPC-NEXT: Arch: powerpc{{$}} # PPC64BE-NEXT: Arch: powerpc64{{$}} # PPC64LE-NEXT: Arch: powerpc64le +# RISCV32-NEXT: Arch: riscv32 +# RISCV64-NEXT: Arch: riscv64 # X86-64-NEXT: Arch: x86_64 # DEFAULT-NEXT: Arch: unknown @@ -156,14 +168,16 @@ Symbols: # FREEBSD: OS/ABI: FreeBSD (0x9) # DEFAULT: OS/ABI: Standalone (0xFF) -# AARCH: Machine: EM_AARCH64 (0xB7) -# ARM: Machine: EM_ARM (0x28) -# I386: Machine: EM_386 (0x3) -# IAMCU: Machine: EM_IAMCU (0x6) -# MIPS: Machine: EM_MIPS (0x8) -# PPC: Machine: EM_PPC (0x14) -# PPC64: Machine: EM_PPC64 (0x15) -# X86-64: Machine: EM_X86_64 (0x3E) +# AARCH: Machine: EM_AARCH64 (0xB7) +# ARM: Machine: EM_ARM (0x28) +# I386: Machine: EM_386 (0x3) +# IAMCU: Machine: EM_IAMCU (0x6) +# MIPS: Machine: EM_MIPS (0x8) +# PPC: Machine: EM_PPC (0x14) +# PPC64: Machine: EM_PPC64 (0x15) +# RISCV32: Machine: EM_RISCV (0xF3) +# RISCV64: Machine: EM_RISCV (0xF3) +# X86-64: Machine: EM_X86_64 (0x3E) # 32: HeaderSize: 52 # 64: HeaderSize: 64 |