summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorJordan Rupprecht <rupprecht@google.com>2019-04-30 15:21:36 +0000
committerJordan Rupprecht <rupprecht@google.com>2019-04-30 15:21:36 +0000
commit96bbb1dc2b390f1ed17152c77a7476f898ebcd0c (patch)
tree9f71493a555f420bca007ee73e32f88f2f9c0bd3 /llvm/test
parent21c31f5e7b30f3eaf14a2e79b952fb389174065c (diff)
downloadbcm5719-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.test28
-rw-r--r--llvm/test/tools/llvm-objcopy/ELF/cross-arch-headers.test30
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
OpenPOWER on IntegriCloud