aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ld/testsuite/ChangeLog8
-rw-r--r--ld/testsuite/ld-arm/arm-be8.d10
-rw-r--r--ld/testsuite/ld-arm/arm-elf.exp4
-rw-r--r--ld/testsuite/ld-arm/farcall-arm-arm-be8.d15
-rw-r--r--ld/testsuite/ld-arm/farcall-thumb-arm-be8.d19
-rw-r--r--opcodes/ChangeLog4
-rw-r--r--opcodes/arm-dis.c6
7 files changed, 24 insertions, 42 deletions
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index 540beb7..209ac99 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,3 +1,11 @@
+2009-04-01 Christophe Lyon <christophe.lyon@st.com>
+
+ * ld-arm/arm-elf.exp: BE8 tests expect the same output as the
+ default ones.
+ * ld-arm/arm-be8.d: Print opcodes in little endian.
+ * ld-arm/farcall-thumb-arm-be8.d: Removed useless expected result.
+ * ld-arm/farcall-arm-arm-be8.d: Likewise.
+
2009-03-25 Hans-Peter Nilsson <hp@axis.com>
* ld-cris/tls-e-dtpoffd3.d, ld-cris/tls-e-tpoffcomm1.d,
diff --git a/ld/testsuite/ld-arm/arm-be8.d b/ld/testsuite/ld-arm/arm-be8.d
index 68a4ea3..9a7207f 100644
--- a/ld/testsuite/ld-arm/arm-be8.d
+++ b/ld/testsuite/ld-arm/arm-be8.d
@@ -4,13 +4,13 @@
Disassembly of section .text:
00008000 <arm>:
- 8000: 0000a0e3 mov r0, #0 ; 0x0
- 8004: 1eff2fe1 bx lr
+ 8000: e3a00000 mov r0, #0 ; 0x0
+ 8004: e12fff1e bx lr
00008008 <thumb>:
- 8008: c046 nop \(mov r8, r8\)
- 800a: 7047 bx lr
- 800c: fff7 fcff bl 8008 <thumb>
+ 8008: 46c0 nop \(mov r8, r8\)
+ 800a: 4770 bx lr
+ 800c: f7ff fffc bl 8008 <thumb>
00008010 <data>:
8010: 12345678 .word 0x12345678
diff --git a/ld/testsuite/ld-arm/arm-elf.exp b/ld/testsuite/ld-arm/arm-elf.exp
index b9c7513..3625ddb 100644
--- a/ld/testsuite/ld-arm/arm-elf.exp
+++ b/ld/testsuite/ld-arm/arm-elf.exp
@@ -265,7 +265,7 @@ set armeabitests {
{{objdump -d farcall-arm-arm-pic-veneer.d}}
"farcall-arm-arm-pic-veneer"}
{"ARM-ARM farcall (BE8)" "-Ttext 0x1000 --section-start .foo=0x2001020 -EB --be8" "-EB" {farcall-arm-arm.s}
- {{objdump -d farcall-arm-arm-be8.d}}
+ {{objdump -d farcall-arm-arm.d}}
"farcall-arm-arm-be8"}
{"ARM-ARM farcall (BE)" "-Ttext 0x1000 --section-start .foo=0x2001020 -EB" "-EB" {farcall-arm-arm.s}
{{objdump -d farcall-arm-arm.d}}
@@ -307,7 +307,7 @@ set armeabitests {
{{objdump -d farcall-thumb-arm.d}}
"farcall-thumb-arm"}
{"Thumb-ARM farcall (BE8)" "-Ttext 0x1000 --section-start .foo=0x2001014 -EB --be8" "-W -EB" {farcall-thumb-arm.s}
- {{objdump -d farcall-thumb-arm-be8.d}}
+ {{objdump -d farcall-thumb-arm.d}}
"farcall-thumb-arm-be8"}
{"Thumb-ARM farcall (BE)" "-Ttext 0x1000 --section-start .foo=0x2001014 -EB" "-W -EB" {farcall-thumb-arm.s}
{{objdump -d farcall-thumb-arm.d}}
diff --git a/ld/testsuite/ld-arm/farcall-arm-arm-be8.d b/ld/testsuite/ld-arm/farcall-arm-arm-be8.d
deleted file mode 100644
index cf3aa07..0000000
--- a/ld/testsuite/ld-arm/farcall-arm-arm-be8.d
+++ /dev/null
@@ -1,15 +0,0 @@
-.*: file format .*
-
-Disassembly of section .text:
-
-00001000 <_start>:
- 1000: 000000eb bl 1008 <__bar_veneer>
- 1004: 00000000 andeq r0, r0, r0
-
-00001008 <__bar_veneer>:
- 1008: 04f01fe5 ldr pc, \[pc, #-4\] ; 100c <__bar_veneer\+0x4>
- 100c: 02001020 .word 0x02001020
-Disassembly of section .foo:
-
-02001020 <bar>:
- 2001020: 1eff2fe1 bx lr
diff --git a/ld/testsuite/ld-arm/farcall-thumb-arm-be8.d b/ld/testsuite/ld-arm/farcall-thumb-arm-be8.d
deleted file mode 100644
index c7d68e0..0000000
--- a/ld/testsuite/ld-arm/farcall-thumb-arm-be8.d
+++ /dev/null
@@ -1,19 +0,0 @@
-.*: file format .*
-
-Disassembly of section .text:
-
-00001000 <_start>:
- 1000: 00f0 02f8 bl 1008 <__bar_from_thumb>
- 1004: 0000 lsls r0, r0, #0
- \.\.\.
-
-00001008 <__bar_from_thumb>:
- 1008: 7847 bx pc
- 100a: c046 nop.*
- 100c: 04f01fe5 ldr pc, \[pc, #-4\] ; 1010 <__bar_from_thumb\+0x8>
- 1010: 02001014 .word 0x02001014
- 1014: 00000000 .word 0x00000000
-Disassembly of section .foo:
-
-02001014 <bar>:
- 2001014: 1eff2fe1 bx lr
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index a98f288..87c9fe5 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,7 @@
+2009-04-01 Christophe Lyon <christophe.lyon@st.com>
+
+ * arm-dis.c (print_insn): Print BE8 opcodes in little endianness.
+
2009-03-30 Joseph Myers <joseph@codesourcery.com>
* arm-dis.c (print_insn): Also check section matches in backwards
diff --git a/opcodes/arm-dis.c b/opcodes/arm-dis.c
index 3360b82..884b5ae 100644
--- a/opcodes/arm-dis.c
+++ b/opcodes/arm-dis.c
@@ -4113,7 +4113,11 @@ print_insn (bfd_vma pc, struct disassemble_info *info, bfd_boolean little)
if (force_thumb)
is_thumb = TRUE;
- info->display_endian = little ? BFD_ENDIAN_LITTLE : BFD_ENDIAN_BIG;
+ if (is_data)
+ info->display_endian = little ? BFD_ENDIAN_LITTLE : BFD_ENDIAN_BIG;
+ else
+ info->display_endian = little_code ? BFD_ENDIAN_LITTLE : BFD_ENDIAN_BIG;
+
info->bytes_per_line = 4;
if (is_data)