aboutsummaryrefslogtreecommitdiffstats
path: root/test/MC/ARM
diff options
context:
space:
mode:
Diffstat (limited to 'test/MC/ARM')
-rw-r--r--test/MC/ARM/cxx-global-constructor.ll5
-rw-r--r--test/MC/ARM/data-in-code.ll122
-rw-r--r--test/MC/ARM/elf-eflags-eabi-cg.ll5
-rw-r--r--test/MC/ARM/elf-eflags-eabi.s5
-rw-r--r--test/MC/ARM/elf-movt.s45
-rw-r--r--test/MC/ARM/elf-reloc-01.ll15
-rw-r--r--test/MC/ARM/elf-reloc-02.ll14
-rw-r--r--test/MC/ARM/elf-reloc-03.ll14
-rw-r--r--test/MC/ARM/elf-reloc-condcall.s35
-rw-r--r--test/MC/ARM/elf-thumbfunc-reloc.ll28
-rw-r--r--test/MC/ARM/elf-thumbfunc-reloc.s11
-rw-r--r--test/MC/ARM/elf-thumbfunc.s14
-rw-r--r--test/MC/ARM/xscale-attributes.ll33
13 files changed, 169 insertions, 177 deletions
diff --git a/test/MC/ARM/cxx-global-constructor.ll b/test/MC/ARM/cxx-global-constructor.ll
index e06d2c7..4afd1e1 100644
--- a/test/MC/ARM/cxx-global-constructor.ll
+++ b/test/MC/ARM/cxx-global-constructor.ll
@@ -1,5 +1,5 @@
; RUN: llc %s -mtriple=armv7-linux-gnueabi -relocation-model=pic \
-; RUN: -filetype=obj -o - | elf-dump --dump-section-data | FileCheck %s
+; RUN: -filetype=obj -o - | llvm-readobj -r | FileCheck %s
@llvm.global_ctors = appending global [1 x { i32, void ()* }] [{ i32, void ()* } { i32 65535, void ()* @f }]
@@ -9,4 +9,5 @@ define void @f() {
}
; Check for a relocation of type R_ARM_TARGET1.
-; CHECK: ('r_type', 0x26)
+; CHECK: Relocations [
+; CHECK: 0x{{[0-9,A-F]+}} R_ARM_TARGET1
diff --git a/test/MC/ARM/data-in-code.ll b/test/MC/ARM/data-in-code.ll
index c2feec5..e3325b6 100644
--- a/test/MC/ARM/data-in-code.ll
+++ b/test/MC/ARM/data-in-code.ll
@@ -1,8 +1,8 @@
;; RUN: llc -O0 -mtriple=armv7-linux-gnueabi -filetype=obj %s -o - | \
-;; RUN: elf-dump | FileCheck -check-prefix=ARM %s
+;; RUN: llvm-readobj -t | FileCheck -check-prefix=ARM %s
;; RUN: llc -O0 -mtriple=thumbv7-linux-gnueabi -filetype=obj %s -o - | \
-;; RUN: elf-dump --dump-section-data | FileCheck -check-prefix=TMB %s
+;; RUN: llvm-readobj -t | FileCheck -check-prefix=TMB %s
;; Ensure that if a jump table is generated that it has Mapping Symbols
;; marking the data-in-code region.
@@ -108,68 +108,68 @@ exit:
ret void
}
-;; ARM: # Symbol 2
-;; ARM-NEXT: $a
-;; ARM-NEXT: 'st_value', 0x00000000
-;; ARM-NEXT: 'st_size', 0x00000000
-;; ARM-NEXT: 'st_bind', 0x0
-;; ARM-NEXT: 'st_type', 0x0
-;; ARM-NEXT: 'st_other'
-;; ARM-NEXT: 'st_shndx', [[MIXED_SECT:0x[0-9a-f]+]]
-
-;; ARM: # Symbol 3
-;; ARM-NEXT: $a
-;; ARM-NEXT: 'st_value', 0x000000ac
-;; ARM-NEXT: 'st_size', 0x00000000
-;; ARM-NEXT: 'st_bind', 0x0
-;; ARM-NEXT: 'st_type', 0x0
-;; ARM-NEXT: 'st_other'
-;; ARM-NEXT: 'st_shndx', [[MIXED_SECT]]
-
-;; ARM: # Symbol 4
-;; ARM-NEXT: $d
-;; ARM-NEXT: 'st_value', 0x00000000
-;; ARM-NEXT: 'st_size', 0x00000000
-;; ARM-NEXT: 'st_bind', 0x0
-;; ARM-NEXT: 'st_type', 0x0
-
-;; ARM: # Symbol 5
-;; ARM-NEXT: $d
-;; ARM-NEXT: 'st_value', 0x00000030
-;; ARM-NEXT: 'st_size', 0x00000000
-;; ARM-NEXT: 'st_bind', 0x0
-;; ARM-NEXT: 'st_type', 0x0
-;; ARM-NEXT: 'st_other'
-;; ARM-NEXT: 'st_shndx', [[MIXED_SECT]]
+;; ARM: Symbol {
+;; ARM: Name: $a
+;; ARM-NEXT: Value: 0x0
+;; ARM-NEXT: Size: 0
+;; ARM-NEXT: Binding: Local
+;; ARM-NEXT: Type: None
+;; ARM-NEXT: Other:
+;; ARM-NEXT: Section: [[MIXED_SECT:[^ ]+]]
+
+;; ARM: Symbol {
+;; ARM: Name: $a
+;; ARM-NEXT: Value: 0xAC
+;; ARM-NEXT: Size: 0
+;; ARM-NEXT: Binding: Local
+;; ARM-NEXT: Type: None
+;; ARM-NEXT: Other:
+;; ARM-NEXT: Section: [[MIXED_SECT]]
+
+;; ARM: Symbol {
+;; ARM: Name: $d
+;; ARM-NEXT: Value: 0
+;; ARM-NEXT: Size: 0
+;; ARM-NEXT: Binding: Local
+;; ARM-NEXT: Type: None
+
+;; ARM: Symbol {
+;; ARM: Name: $d
+;; ARM-NEXT: Value: 0x30
+;; ARM-NEXT: Size: 0
+;; ARM-NEXT: Binding: Local
+;; ARM-NEXT: Type: None
+;; ARM-NEXT: Other:
+;; ARM-NEXT: Section: [[MIXED_SECT]]
;; ARM-NOT: ${{[atd]}}
-;; TMB: # Symbol 3
-;; TMB-NEXT: $d
-;; TMB-NEXT: 'st_value', 0x00000016
-;; TMB-NEXT: 'st_size', 0x00000000
-;; TMB-NEXT: 'st_bind', 0x0
-;; TMB-NEXT: 'st_type', 0x0
-;; TMB-NEXT: 'st_other'
-;; TMB-NEXT: 'st_shndx', [[MIXED_SECT:0x[0-9a-f]+]]
-
-;; TMB: # Symbol 4
-;; TMB-NEXT: $t
-;; TMB-NEXT: 'st_value', 0x00000000
-;; TMB-NEXT: 'st_size', 0x00000000
-;; TMB-NEXT: 'st_bind', 0x0
-;; TMB-NEXT: 'st_type', 0x0
-;; TMB-NEXT: 'st_other'
-;; TMB-NEXT: 'st_shndx', [[MIXED_SECT]]
-
-;; TMB: # Symbol 5
-;; TMB-NEXT: $t
-;; TMB-NEXT: 'st_value', 0x00000036
-;; TMB-NEXT: 'st_size', 0x00000000
-;; TMB-NEXT: 'st_bind', 0x0
-;; TMB-NEXT: 'st_type', 0x0
-;; TMB-NEXT: 'st_other'
-;; TMB-NEXT: 'st_shndx', [[MIXED_SECT]]
+;; TMB: Symbol {
+;; TMB: Name: $d.2
+;; TMB-NEXT: Value: 0x16
+;; TMB-NEXT: Size: 0
+;; TMB-NEXT: Binding: Local
+;; TMB-NEXT: Type: None
+;; TMB-NEXT: Other:
+;; TMB-NEXT: Section: [[MIXED_SECT:[^ ]+]]
+
+;; TMB: Symbol {
+;; TMB: Name: $t
+;; TMB-NEXT: Value: 0x0
+;; TMB-NEXT: Size: 0
+;; TMB-NEXT: Binding: Local
+;; TMB-NEXT: Type: None
+;; TMB-NEXT: Other:
+;; TMB-NEXT: Section: [[MIXED_SECT]]
+
+;; TMB: Symbol {
+;; TMB: Name: $t
+;; TMB-NEXT: Value: 0x36
+;; TMB-NEXT: Size: 0
+;; TMB-NEXT: Binding: Local
+;; TMB-NEXT: Type: None
+;; TMB-NEXT: Other:
+;; TMB-NEXT: Section: [[MIXED_SECT]]
;; TMB-NOT: ${{[atd]}}
diff --git a/test/MC/ARM/elf-eflags-eabi-cg.ll b/test/MC/ARM/elf-eflags-eabi-cg.ll
index 2e86a0f..0b9de7f 100644
--- a/test/MC/ARM/elf-eflags-eabi-cg.ll
+++ b/test/MC/ARM/elf-eflags-eabi-cg.ll
@@ -1,7 +1,7 @@
; Codegen version to check for ELF header flags.
;
; RUN: llc %s -mtriple=thumbv7-linux-gnueabi -relocation-model=pic \
-; RUN: -filetype=obj -o - | elf-dump --dump-section-data | \
+; RUN: -filetype=obj -o - | llvm-readobj -h | \
; RUN: FileCheck %s
define void @bar() nounwind {
@@ -10,4 +10,5 @@ entry:
}
; For now the only e_flag set is EF_ARM_EABI_VER5
-;CHECK: 'e_flags', 0x05000000
+; CHECK: ElfHeader {
+; CHECK: Flags [ (0x5000000)
diff --git a/test/MC/ARM/elf-eflags-eabi.s b/test/MC/ARM/elf-eflags-eabi.s
index ea89eac..fe0b6c0 100644
--- a/test/MC/ARM/elf-eflags-eabi.s
+++ b/test/MC/ARM/elf-eflags-eabi.s
@@ -1,5 +1,5 @@
@ RUN: llvm-mc %s -triple=armv7-linux-gnueabi -filetype=obj -o - | \
-@ RUN: elf-dump --dump-section-data | FileCheck -check-prefix=OBJ %s
+@ RUN: llvm-readobj -h | FileCheck -check-prefix=OBJ %s
.syntax unified
.text
.globl barf
@@ -10,4 +10,5 @@ barf: @ @barf
b foo
@@@ make sure the EF_ARM_EABIMASK comes out OK
-@OBJ: 'e_flags', 0x05000000
+@OBJ: ElfHeader {
+@OBJ: Flags [ (0x5000000)
diff --git a/test/MC/ARM/elf-movt.s b/test/MC/ARM/elf-movt.s
index 02bb5a6..74b3c9f 100644
--- a/test/MC/ARM/elf-movt.s
+++ b/test/MC/ARM/elf-movt.s
@@ -1,6 +1,6 @@
@ RUN: llvm-mc %s -triple=armv7-linux-gnueabi | FileCheck -check-prefix=ASM %s
@ RUN: llvm-mc %s -triple=armv7-linux-gnueabi -filetype=obj -o - | \
-@ RUN: elf-dump --dump-section-data | FileCheck -check-prefix=OBJ %s
+@ RUN: llvm-readobj -s -sd -sr | FileCheck -check-prefix=OBJ %s
.syntax unified
.text
.globl barf
@@ -15,25 +15,24 @@ barf: @ @barf
@ ASM-NEXT: movt r0, :upper16:(GOT-(.LPC0_2+8))
@@ make sure that the text section fixups are sane too
-@ OBJ: '.text'
-@ OBJ-NEXT: 'sh_type', 0x00000001
-@ OBJ-NEXT: 'sh_flags', 0x00000006
-@ OBJ-NEXT: 'sh_addr', 0x00000000
-@ OBJ-NEXT: 'sh_offset', 0x00000034
-@ OBJ-NEXT: 'sh_size', 0x00000008
-@ OBJ-NEXT: 'sh_link', 0x00000000
-@ OBJ-NEXT: 'sh_info', 0x00000000
-@ OBJ-NEXT: 'sh_addralign', 0x00000004
-@ OBJ-NEXT: 'sh_entsize', 0x00000000
-@ OBJ-NEXT: '_section_data', 'f00f0fe3 f40f4fe3'
-
-@ OBJ: Relocation 0
-@ OBJ-NEXT: 'r_offset', 0x00000000
-@ OBJ-NEXT: 'r_sym'
-@ OBJ-NEXT: 'r_type', 0x2d
-
-@ OBJ: Relocation 1
-@ OBJ-NEXT: 'r_offset', 0x00000004
-@ OBJ-NEXT: 'r_sym'
-@ OBJ-NEXT: 'r_type', 0x2e
-
+@ OBJ: Section {
+@ OBJ: Name: .text
+@ OBJ-NEXT: Type: SHT_PROGBITS
+@ OBJ-NEXT: Flags [ (0x6)
+@ OBJ-NEXT: SHF_ALLOC
+@ OBJ-NEXT: SHF_EXECINSTR
+@ OBJ-NEXT: ]
+@ OBJ-NEXT: Address: 0x0
+@ OBJ-NEXT: Offset: 0x34
+@ OBJ-NEXT: Size: 8
+@ OBJ-NEXT: Link: 0
+@ OBJ-NEXT: Info: 0
+@ OBJ-NEXT: AddressAlignment: 4
+@ OBJ-NEXT: EntrySize: 0
+@ OBJ-NEXT: Relocations [
+@ OBJ-NEXT: 0x0 R_ARM_MOVW_PREL_NC
+@ OBJ-NEXT: 0x4 R_ARM_MOVT_PREL
+@ OBJ-NEXT: ]
+@ OBJ-NEXT: SectionData (
+@ OBJ-NEXT: 0000: F00F0FE3 F40F4FE3
+@ OBJ-NEXT: )
diff --git a/test/MC/ARM/elf-reloc-01.ll b/test/MC/ARM/elf-reloc-01.ll
index 3ebd7c6..9b5dbd9 100644
--- a/test/MC/ARM/elf-reloc-01.ll
+++ b/test/MC/ARM/elf-reloc-01.ll
@@ -1,7 +1,7 @@
;; RUN: llc -mtriple=armv7-linux-gnueabi -O3 \
;; RUN: -mcpu=cortex-a8 -mattr=-neon -mattr=+vfp2 -arm-reserve-r9 \
;; RUN: -filetype=obj %s -o - | \
-;; RUN: elf-dump --dump-section-data | FileCheck -check-prefix=OBJ %s
+;; RUN: llvm-readobj -r | FileCheck -check-prefix=OBJ %s
;; FIXME: This file needs to be in .s form!
;; The args to llc are there to constrain the codegen only.
@@ -60,11 +60,8 @@ bb3: ; preds = %bb, %entry
declare void @exit(i32) noreturn nounwind
-;; OBJ: Relocation 1
-;; OBJ-NEXT: 'r_offset',
-;; OBJ-NEXT: 'r_sym', 0x000007
-;; OBJ-NEXT: 'r_type', 0x2b
-
-;; OBJ: Symbol 7
-;; OBJ-NEXT: '_MergedGlobals'
-;; OBJ-NEXT: 'st_value', 0x00000010
+; OBJ: Relocations [
+; OBJ: Section (1) .text {
+; OBJ: 0x{{[0-9,A-F]+}} R_ARM_MOVW_ABS_NC _MergedGlobals
+; OBJ: }
+; OBJ: ]
diff --git a/test/MC/ARM/elf-reloc-02.ll b/test/MC/ARM/elf-reloc-02.ll
index 6b6b03c..f021764 100644
--- a/test/MC/ARM/elf-reloc-02.ll
+++ b/test/MC/ARM/elf-reloc-02.ll
@@ -1,7 +1,7 @@
;; RUN: llc -mtriple=armv7-linux-gnueabi -O3 \
;; RUN: -mcpu=cortex-a8 -mattr=-neon -mattr=+vfp2 -arm-reserve-r9 \
;; RUN: -filetype=obj %s -o - | \
-;; RUN: elf-dump --dump-section-data | FileCheck -check-prefix=OBJ %s
+;; RUN: llvm-readobj -r | FileCheck -check-prefix=OBJ %s
;; FIXME: This file needs to be in .s form!
;; The args to llc are there to constrain the codegen only.
@@ -41,10 +41,8 @@ declare i32 @write(...)
declare void @exit(i32) noreturn nounwind
-;; OBJ: Relocation 0
-;; OBJ-NEXT: 'r_offset',
-;; OBJ-NEXT: 'r_sym', 0x000005
-;; OBJ-NEXT: 'r_type', 0x2b
-
-;; OBJ: Symbol 5
-;; OBJ-NEXT: '.L.str'
+;; OBJ: Relocations [
+;; OBJ: Section (1) .text {
+;; OBJ-NEXT: 0x{{[0-9,A-F]+}} R_ARM_MOVW_ABS_NC .L.str
+;; OBJ: }
+;; OBJ: ]
diff --git a/test/MC/ARM/elf-reloc-03.ll b/test/MC/ARM/elf-reloc-03.ll
index 87f91c1..ac46e69 100644
--- a/test/MC/ARM/elf-reloc-03.ll
+++ b/test/MC/ARM/elf-reloc-03.ll
@@ -1,7 +1,7 @@
;; RUN: llc -mtriple=armv7-linux-gnueabi -O3 \
;; RUN: -mcpu=cortex-a8 -mattr=-neon -mattr=+vfp2 -arm-reserve-r9 \
;; RUN: -filetype=obj %s -o - | \
-;; RUN: elf-dump --dump-section-data | FileCheck -check-prefix=OBJ %s
+;; RUN: llvm-readobj -r | FileCheck -check-prefix=OBJ %s
;; FIXME: This file needs to be in .s form!
;; The args to llc are there to constrain the codegen only.
@@ -88,10 +88,8 @@ entry:
declare void @exit(i32) noreturn nounwind
-;; OBJ: Relocation 1
-;; OBJ-NEXT: 'r_offset',
-;; OBJ-NEXT: 'r_sym', 0x000010
-;; OBJ-NEXT: 'r_type', 0x2b
-
-;; OBJ: Symbol 16
-;; OBJ-NEXT: 'vtable'
+;; OBJ: Relocations [
+;; OBJ: Section (1) .text {
+;; OBJ: 0x{{[0-9,A-F]+}} R_ARM_MOVW_ABS_NC vtable
+;; OBJ: }
+;; OBJ: ]
diff --git a/test/MC/ARM/elf-reloc-condcall.s b/test/MC/ARM/elf-reloc-condcall.s
index 3fafb43..612942f 100644
--- a/test/MC/ARM/elf-reloc-condcall.s
+++ b/test/MC/ARM/elf-reloc-condcall.s
@@ -1,33 +1,18 @@
// RUN: llvm-mc -triple=armv7-linux-gnueabi -filetype=obj %s -o - | \
-// RUN: elf-dump | FileCheck -check-prefix=OBJ %s
+// RUN: llvm-readobj -r | FileCheck -check-prefix=OBJ %s
bleq some_label
bl some_label
blx some_label
beq some_label
b some_label
-// OBJ: .rel.text
-// OBJ: 'r_offset', 0x00000000
-// OBJ-NEXT: 'r_sym', 0x000005
-// OBJ-NEXT: 'r_type', 0x1d
-
-// OBJ: 'r_offset', 0x00000004
-// OBJ-NEXT: 'r_sym', 0x000005
-// OBJ-NEXT: 'r_type', 0x1c
-
-// OBJ: 'r_offset', 0x00000008
-// OBJ-NEXT: 'r_sym', 0x000005
-// OBJ-NEXT: 'r_type', 0x1c
-
-// OBJ: 'r_offset', 0x0000000c
-// OBJ-NEXT: 'r_sym', 0x000005
-// OBJ-NEXT: 'r_type', 0x1d
-
-// OBJ: 'r_offset', 0x00000010
-// OBJ-NEXT: 'r_sym', 0x000005
-// OBJ-NEXT: 'r_type', 0x1d
-
-// OBJ: .symtab
-// OBJ: Symbol 5
-// OBJ-NEXT: some_label
+// OBJ: Relocations [
+// OBJ-NEXT: Section (1) .text {
+// OBJ-NEXT: 0x0 R_ARM_JUMP24 some_label 0x0
+// OBJ-NEXT: 0x4 R_ARM_CALL some_label 0x0
+// OBJ-NEXT: 0x8 R_ARM_CALL some_label 0x0
+// OBJ-NEXT: 0xC R_ARM_JUMP24 some_label 0x0
+// OBJ-NEXT: 0x10 R_ARM_JUMP24 some_label 0x0
+// OBJ-NEXT: }
+// OBJ-NEXT: ]
diff --git a/test/MC/ARM/elf-thumbfunc-reloc.ll b/test/MC/ARM/elf-thumbfunc-reloc.ll
index b2f253d..e7d2c34 100644
--- a/test/MC/ARM/elf-thumbfunc-reloc.ll
+++ b/test/MC/ARM/elf-thumbfunc-reloc.ll
@@ -1,5 +1,5 @@
; RUN: llc %s -mtriple=thumbv7-linux-gnueabi -relocation-model=pic \
-; RUN: -filetype=obj -o - | elf-dump --dump-section-data | \
+; RUN: -filetype=obj -o - | llvm-readobj -s -sd -r -t | \
; RUN: FileCheck %s
; FIXME: This file needs to be in .s form!
@@ -22,16 +22,20 @@ entry:
; make sure that bl 0 <foo> (fff7feff) is correctly encoded
-; CHECK: '_section_data', '704700bf 2de90048 fff7feff bde80088'
-
-; Offset Info Type Sym.Value Sym. Name
-; 00000008 0000070a R_ARM_THM_CALL 00000001 foo
-; CHECK: Relocation 0
-; CHECK-NEXT: 'r_offset', 0x00000008
-; CHECK-NEXT: 'r_sym', 0x000009
-; CHECK-NEXT: 'r_type', 0x0a
+; CHECK: Sections [
+; CHECK: SectionData (
+; CHECK: 0000: 704700BF 2DE90048 FFF7FEFF BDE80088
+; CHECK: )
+; CHECK: ]
+
+; CHECK: Relocations [
+; CHECK-NEXT: Section (1) .text {
+; CHECK-NEXT: 0x8 R_ARM_THM_CALL foo 0x0
+; CHECK-NEXT: }
+; CHECK-NEXT: ]
; make sure foo is thumb function: bit 0 = 1
-; CHECK: Symbol 9
-; CHECK-NEXT: 'foo'
-; CHECK-NEXT: 'st_value', 0x00000001
+; CHECK: Symbols [
+; CHECK: Symbol {
+; CHECK: Name: foo
+; CHECK-NEXT: Value: 0x1
diff --git a/test/MC/ARM/elf-thumbfunc-reloc.s b/test/MC/ARM/elf-thumbfunc-reloc.s
index 4a311dd..87a26d8 100644
--- a/test/MC/ARM/elf-thumbfunc-reloc.s
+++ b/test/MC/ARM/elf-thumbfunc-reloc.s
@@ -1,6 +1,6 @@
@@ test st_value bit 0 of thumb function
@ RUN: llvm-mc %s -triple=arm-freebsd-eabi -filetype=obj -o - | \
-@ RUN: elf-dump | FileCheck %s
+@ RUN: llvm-readobj -r | FileCheck %s
.syntax unified
@@ -17,7 +17,8 @@ f:
pop {r7, pc}
@@ make sure an R_ARM_THM_CALL relocation is generated for the call to g
-@CHECK: ('_relocations', [
-@CHECK: (('r_offset', 0x00000004)
-@CHECK-NEXT: ('r_sym', 0x{{[0-9a-fA-F]+}})
-@CHECK-NEXT: ('r_type', 0x0a)
+@CHECK: Relocations [
+@CHECK-NEXT: Section (1) .text {
+@CHECK-NEXT: 0x4 R_ARM_THM_CALL g 0x0
+@CHECK-NEXT: }
+@CHECK-NEXT: ]
diff --git a/test/MC/ARM/elf-thumbfunc.s b/test/MC/ARM/elf-thumbfunc.s
index 91b2eee..26f5f0b 100644
--- a/test/MC/ARM/elf-thumbfunc.s
+++ b/test/MC/ARM/elf-thumbfunc.s
@@ -1,6 +1,6 @@
@@ test st_value bit 0 of thumb function
@ RUN: llvm-mc %s -triple=thumbv7-linux-gnueabi -filetype=obj -o - | \
-@ RUN: elf-dump | FileCheck %s
+@ RUN: llvm-readobj -t | FileCheck %s
.syntax unified
.text
.globl foo
@@ -12,9 +12,9 @@ foo:
bx lr
@@ make sure foo is thumb function: bit 0 = 1 (st_value)
-@CHECK: Symbol 5
-@CHECK-NEXT: 'st_name', 0x00000001
-@CHECK-NEXT: 'st_value', 0x00000001
-@CHECK-NEXT: 'st_size', 0x00000000
-@CHECK-NEXT: 'st_bind', 0x1
-@CHECK-NEXT: 'st_type', 0x2
+@CHECK: Symbol {
+@CHECK: Name: foo
+@CHECK-NEXT: Value: 0x1
+@CHECK-NEXT: Size: 0
+@CHECK-NEXT: Binding: Global
+@CHECK-NEXT: Type: Function
diff --git a/test/MC/ARM/xscale-attributes.ll b/test/MC/ARM/xscale-attributes.ll
index 3ccf02b..d1e9931 100644
--- a/test/MC/ARM/xscale-attributes.ll
+++ b/test/MC/ARM/xscale-attributes.ll
@@ -2,7 +2,7 @@
; RUN: FileCheck -check-prefix=ASM %s
; RUN: llc %s -mtriple=thumbv5-linux-gnueabi -filetype=obj \
-; RUN: -mcpu=xscale -o - | elf-dump --dump-section-data | \
+; RUN: -mcpu=xscale -o - | llvm-readobj -s -sd | \
; RUN: FileCheck -check-prefix=OBJ %s
; FIXME: The OBJ test should be a .s to .o test and the ASM test should
@@ -17,15 +17,22 @@ entry:
; ASM-NEXT: .eabi_attribute 8, 1
; ASM-NEXT: .eabi_attribute 9, 1
-; OBJ: Section 4
-; OBJ-NEXT: 'sh_name', 0x0000000c
-; OBJ-NEXT: 'sh_type', 0x70000003
-; OBJ-NEXT: 'sh_flags', 0x00000000
-; OBJ-NEXT: 'sh_addr', 0x00000000
-; OBJ-NEXT: 'sh_offset', 0x00000038
-; OBJ-NEXT: 'sh_size', 0x00000020
-; OBJ-NEXT: 'sh_link', 0x00000000
-; OBJ-NEXT: 'sh_info', 0x00000000
-; OBJ-NEXT: 'sh_addralign', 0x00000001
-; OBJ-NEXT: 'sh_entsize', 0x00000000
-; OBJ-NEXT: '_section_data', '411f0000 00616561 62690001 15000000 06050801 09011401 15011703 18011901'
+; OBJ: Sections [
+; OBJ: Section {
+; OBJ: Index: 4
+; OBJ-NEXT: Name: .ARM.attributes (12)
+; OBJ-NEXT: Type: SHT_ARM_ATTRIBUTES
+; OBJ-NEXT: Flags [ (0x0)
+; OBJ-NEXT: ]
+; OBJ-NEXT: Address: 0x0
+; OBJ-NEXT: Offset: 0x38
+; OBJ-NEXT: Size: 32
+; OBJ-NEXT: Link: 0
+; OBJ-NEXT: Info: 0
+; OBJ-NEXT: AddressAlignment: 1
+; OBJ-NEXT: EntrySize: 0
+; OBJ-NEXT: SectionData (
+; OBJ-NEXT: 0000: 411F0000 00616561 62690001 15000000
+; OBJ-NEXT: 0010: 06050801 09011401 15011703 18011901
+; OBJ-NEXT: )
+; OBJ-NEXT: }