Skip to content

Commit 2b32902

Browse files
committed
[llvm-objcopy] Add -B mips
llvm-svn: 358667
1 parent 8bbbd31 commit 2b32902

File tree

2 files changed

+16
-8
lines changed

2 files changed

+16
-8
lines changed

llvm/test/tools/llvm-objcopy/ELF/binary-input-arch.test

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,42 @@
11
# RUN: echo abcd > %t.txt
22

33
# RUN: llvm-objcopy -I binary -B aarch64 %t.txt %t.aarch64.o
4-
# RUN: llvm-readobj --file-headers %t.aarch64.o | FileCheck %s --check-prefixes=CHECK,AARCH64,64
4+
# RUN: llvm-readobj --file-headers %t.aarch64.o | FileCheck %s --check-prefixes=CHECK,LE,AARCH64,64
55

66
# RUN: llvm-objcopy -I binary -B arm %t.txt %t.arm.o
7-
# RUN: llvm-readobj --file-headers %t.arm.o | FileCheck %s --check-prefixes=CHECK,ARM,32
7+
# RUN: llvm-readobj --file-headers %t.arm.o | FileCheck %s --check-prefixes=CHECK,LE,ARM,32
88

99
# RUN: llvm-objcopy -I binary -B i386 %t.txt %t.i386.o
10-
# RUN: llvm-readobj --file-headers %t.i386.o | FileCheck %s --check-prefixes=CHECK,I386,32
10+
# RUN: llvm-readobj --file-headers %t.i386.o | FileCheck %s --check-prefixes=CHECK,LE,I386,32
1111

1212
# RUN: llvm-objcopy -I binary -B i386:x86-64 %t.txt %t.i386_x86-64.o
13-
# RUN: llvm-readobj --file-headers %t.i386_x86-64.o | FileCheck %s --check-prefixes=CHECK,X86-64,64
13+
# RUN: llvm-readobj --file-headers %t.i386_x86-64.o | FileCheck %s --check-prefixes=CHECK,LE,X86-64,64
14+
15+
# RUN: llvm-objcopy -I binary -B mips %t.txt %t.mips.o
16+
# RUN: llvm-readobj --file-headers %t.mips.o | FileCheck %s --check-prefixes=CHECK,BE,MIPS,32
1417

1518
# RUN: llvm-objcopy -I binary -B powerpc:common64 %t.txt %t.powerpc_common64.o
16-
# RUN: llvm-readobj --file-headers %t.powerpc_common64.o | FileCheck %s --check-prefixes=CHECK,PPC,64
19+
# RUN: llvm-readobj --file-headers %t.powerpc_common64.o | FileCheck %s --check-prefixes=CHECK,LE,PPC,64
1720

1821
# RUN: llvm-objcopy -I binary -B sparc %t.txt %t.sparc.o
19-
# RUN: llvm-readobj --file-headers %t.sparc.o | FileCheck %s --check-prefixes=CHECK,SPARC,32
22+
# RUN: llvm-readobj --file-headers %t.sparc.o | FileCheck %s --check-prefixes=CHECK,LE,SPARC,32
2023

2124
# RUN: llvm-objcopy -I binary -B x86-64 %t.txt %t.x86-64.o
22-
# RUN: llvm-readobj --file-headers %t.x86-64.o | FileCheck %s --check-prefixes=CHECK,X86-64,64
25+
# RUN: llvm-readobj --file-headers %t.x86-64.o | FileCheck %s --check-prefixes=CHECK,LE,X86-64,64
2326

2427
# CHECK: Format:
2528
# AARCH64-SAME: ELF64-aarch64-little
2629
# ARM-SAME: ELF32-arm-little
2730
# I386-SAME: ELF32-i386
31+
# MIPS-SAME: ELF32-mips{{$}}
2832
# PPC-SAME: ELF64-ppc64
2933
# SPARC-SAME: ELF32-sparc
3034
# X86-64-SAME: ELF64-x86-64
3135

3236
# AARCH64-NEXT: Arch: aarch64
3337
# ARM-NEXT: Arch: arm
3438
# I386-NEXT: Arch: i386
39+
# MIPS-NEXT: Arch: mips{{$$}}
3540
# PPC-NEXT: Arch: powerpc64le
3641
# SPARC-NEXT: Arch: sparcel
3742
# X86-64-NEXT: Arch: x86_64
@@ -44,7 +49,8 @@
4449
# CHECK-NEXT: Magic: (7F 45 4C 46)
4550
# 32-NEXT: Class: 32-bit (0x1)
4651
# 64-NEXT: Class: 64-bit (0x2)
47-
# CHECK-NEXT: DataEncoding: LittleEndian (0x1)
52+
# LE-NEXT: DataEncoding: LittleEndian (0x1)
53+
# BE-NEXT: DataEncoding: BigEndian (0x2)
4854
# CHECK-NEXT: FileVersion: 1
4955
# CHECK-NEXT: OS/ABI: SystemV (0x0)
5056
# CHECK-NEXT: ABIVersion: 0
@@ -54,6 +60,7 @@
5460
# AARCH64-NEXT: Machine: EM_AARCH64 (0xB7)
5561
# ARM-NEXT: Machine: EM_ARM (0x28)
5662
# I386-NEXT: Machine: EM_386 (0x3)
63+
# MIPS-NEXT: Machine: EM_MIPS (0x8)
5764
# PPC-NEXT: Machine: EM_PPC64 (0x15)
5865
# SPARC-NEXT: Machine: EM_SPARC (0x2)
5966
# X86-64-NEXT: Machine: EM_X86_64 (0x3E)

llvm/tools/llvm-objcopy/CopyConfig.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -258,6 +258,7 @@ static const StringMap<MachineInfo> ArchMap{
258258
{"arm", {ELF::EM_ARM, false, true}},
259259
{"i386", {ELF::EM_386, false, true}},
260260
{"i386:x86-64", {ELF::EM_X86_64, true, true}},
261+
{"mips", {ELF::EM_MIPS, false, false}},
261262
{"powerpc:common64", {ELF::EM_PPC64, true, true}},
262263
{"sparc", {ELF::EM_SPARC, false, true}},
263264
{"x86-64", {ELF::EM_X86_64, true, true}},

0 commit comments

Comments
 (0)