aboutsummaryrefslogtreecommitdiff
path: root/gas/testsuite
diff options
context:
space:
mode:
authorWill Newton <will.newton@linaro.org>2014-04-04 10:07:06 +0100
committerWill Newton <will.newton@linaro.org>2014-04-23 13:54:59 +0100
commit47fc6e36e3863545a6225034d97f64760fffae05 (patch)
treed1b2248945150582dcd7693a58e789e305eee366 /gas/testsuite
parent7d64c587c15f290d228ca550bb288d53f0eb2ac4 (diff)
downloadgdb-47fc6e36e3863545a6225034d97f64760fffae05.zip
gdb-47fc6e36e3863545a6225034d97f64760fffae05.tar.gz
gdb-47fc6e36e3863545a6225034d97f64760fffae05.tar.bz2
gas/arm: Force output of a data mapping symbol for literal pools
If there is a a trailing align statement in a code section we may output data padding with a data mapping followed by a code alignment with a code mapping. The literal pool may then be output with a code mapping symbol which will cause it to be endian swapped in a big-endian configuration. When outputting a literal pool make sure that a data mapping symbol is output in all cases. gas/ChangeLog: 2014-04-23 Will Newton <will.newton@linaro.org> * config/tc-arm.c (s_ltorg): Call make_mapping_symbol directly instead of mapping_state. gas/testsuite/ChangeLog: 2014-04-23 Will Newton <will.newton@linaro.org> * gas/arm/mapmisc.d: Check literal pool mapping with a trailing .align statement. * gas/arm/mapmisc.s: Likewise.
Diffstat (limited to 'gas/testsuite')
-rw-r--r--gas/testsuite/ChangeLog6
-rw-r--r--gas/testsuite/gas/arm/mapmisc.d10
-rw-r--r--gas/testsuite/gas/arm/mapmisc.s6
3 files changed, 22 insertions, 0 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index 492450b..8f53daa 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2014-04-23 Will Newton <will.newton@linaro.org>
+
+ * gas/arm/mapmisc.d: Check literal pool mapping with
+ a trailing .align statement.
+ * gas/arm/mapmisc.s: Likewise.
+
2014-04-23 Andrew Bennett <andrew.bennett@imgtec.com>
* gas/mips/mips.exp: Add xpa tests.
diff --git a/gas/testsuite/gas/arm/mapmisc.d b/gas/testsuite/gas/arm/mapmisc.d
index f5b7039..0e1d046 100644
--- a/gas/testsuite/gas/arm/mapmisc.d
+++ b/gas/testsuite/gas/arm/mapmisc.d
@@ -47,6 +47,10 @@ SYMBOL TABLE:
0+a0 l .text 00000000 \$d
0+a4 l .text 00000000 \$a
0+a8 l .text 00000000 \$a
+0+b0 l .text 00000000 string
+0+b0 l .text 00000000 \$d
+0+b4 l .text 00000000 \$d
+0+b3 l .text 00000000 \$d
0+00 l d .ARM.attributes 00000000 .ARM.attributes
@@ -95,3 +99,9 @@ Disassembly of section .text:
a0: 7778797a .word 0x7778797a
a4: e1a00000 nop ; \(mov r0, r0\)
a8: e1a00000 nop ; \(mov r0, r0\)
+ ac: e51f0000 ldr r0, \[pc, #-0\] ; b4 <string\+0x4>
+000000b0 <string>:
+ b0: 6261 .short 0x6261
+ b2: 63 .byte 0x63
+ b3: 00 .byte 0x00
+ b4: 000000b0 .word 0x000000b0
diff --git a/gas/testsuite/gas/arm/mapmisc.s b/gas/testsuite/gas/arm/mapmisc.s
index 1625515..c203e74 100644
--- a/gas/testsuite/gas/arm/mapmisc.s
+++ b/gas/testsuite/gas/arm/mapmisc.s
@@ -38,3 +38,9 @@ foo:
nop
.fill 0, 0, 0
nop
+# This test should always be at the end. Check that a trailing align does
+# not cause the literal pool to be emitted with a code mapping symbol.
+ ldr r0,=string
+string:
+ .ascii "abc"
+ .align 2