@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 0
@CHECK: .eabi_attribute 6, 0
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 1
@CHECK: .eabi_attribute 6, 1
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 10
@CHECK: .eabi_attribute 6, 10
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 11
@CHECK: .eabi_attribute 6, 11
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 12
@CHECK: .eabi_attribute 6, 12
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 13
@CHECK: .eabi_attribute 6, 13
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_compatibility, 136, "Foo Corp"
@CHECK: .eabi_attribute 32, 136
@CHECK-OBJ: Tag: 32
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 14
@CHECK: .eabi_attribute 6, 14
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_compatibility, 15, "Longer Corporation NaMe"
@CHECK: .eabi_attribute 32, 15
@CHECK-OBJ: Tag: 32
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 2
@CHECK: .eabi_attribute 6, 2
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 3
@CHECK: .eabi_attribute 6, 3
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 4
@CHECK: .eabi_attribute 6, 4
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 5
@CHECK: .eabi_attribute 6, 5
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 6
@CHECK: .eabi_attribute 6, 6
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 7
@CHECK: .eabi_attribute 6, 7
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 8
@CHECK: .eabi_attribute 6, 8
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch, 9
@CHECK: .eabi_attribute 6, 9
@CHECK-OBJ: Tag: 6
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch_profile, 'A'
@CHECK: .eabi_attribute 7, 65
@CHECK-OBJ: Tag: 7
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch_profile, 'M'
@CHECK: .eabi_attribute 7, 77
@CHECK-OBJ: Tag: 7
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch_profile, 'R'
@CHECK: .eabi_attribute 7, 82
@CHECK-OBJ: Tag: 7
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
-@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_CPU_arch_profile, 'S'
@CHECK: .eabi_attribute 7, 83
@CHECK-OBJ: Tag: 7
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
+@ RUN: | llvm-readobj -A - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_conformance, "0"
@CHECK: .eabi_attribute 67, "0"
@ RUN: llvm-mc -triple armv7-elf -filetype asm -o - %s | FileCheck %s
@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
+@ RUN: | llvm-readobj --arch-specific - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
+@ RUN: | llvm-readobj -A - | FileCheck %s --check-prefix=CHECK-OBJ
+@ RUN: llvm-mc -triple armv7-eabi -filetype obj -o - %s \
@ RUN: | llvm-readobj --arm-attributes - | FileCheck %s --check-prefix=CHECK-OBJ
.eabi_attribute Tag_conformance, "A.long--non numeric oddity...!!"
@CHECK: .eabi_attribute 67, "A.long--non numeric oddity...!!"
"codeview-subsection-bytes",
cl::desc("Dump raw contents of codeview debug sections and records"));
- // --arm-attributes
- cl::opt<bool> ARMAttributes("arm-attributes",
- cl::desc("Display the ARM attributes section"));
+ // --arch-specific
+ cl::opt<bool> ArchSpecificInfo("arch-specific",
+ cl::desc("Displays architecture-specific information, if there is any."));
+ cl::alias ArchSpecifcInfoShort("A", cl::desc("Alias for --arch-specific"),
+ cl::aliasopt(ArchSpecificInfo), cl::NotHidden);
+ cl::alias ARMAttributes("arm-attributes", cl::desc("Alias for --arch-specific"),
+ cl::aliasopt(ArchSpecificInfo), cl::Hidden);
// --mips-plt-got
cl::opt<bool>
if (Obj->isELF()) {
if (opts::ELFLinkerOptions)
Dumper->printELFLinkerOptions();
- if (Obj->getArch() == llvm::Triple::arm)
- if (opts::ARMAttributes)
+ if (opts::ArchSpecificInfo)
+ if (Obj->getArch() == llvm::Triple::arm)
Dumper->printAttributes();
if (isMipsArch(Obj->getArch())) {
if (opts::MipsPLTGOT)