summaryrefslogtreecommitdiffstats
path: root/binutils-2.25/gas/testsuite/gas/arm
diff options
context:
space:
mode:
Diffstat (limited to 'binutils-2.25/gas/testsuite/gas/arm')
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/arch7a-mp.d2
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/arch7r-mp.d2
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/arm.exp3
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/armv8-a+crypto.d1
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/armv8-a+fp.d9
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/armv8-a+simd.d1
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/armv8-a-barrier-thumb.d1
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/armv8-a-it-bad.l4
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/armv8-a-it-bad.s14
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/attr-march-armv7ve.d17
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/backslash-at.d2
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/bl-local-2.d1
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/bl-local-v4t.d2
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/blx-bl-convert.d21
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/blx-bl-convert.l4
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/blx-bl-convert.s20
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/blx-local.d2
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/branch-reloc.d4
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/ccs.d25
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/ccs.s33
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/got_prel.d8
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/inst-po.d4
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/ldconst.d15
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/ldconst.s11
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/ldgesb-bad.d1
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/ldgesh-bad.d1
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/mapmisc.d10
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/mapmisc.s6
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/maverick.c2
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/thumb2_pool.d15
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/thumb2_pool.s11
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/thumb2_vpool.d169
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/thumb2_vpool.s95
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/thumb2_vpool_be.d176
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/ual-vcmp.d24
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/ual-vcmp.s21
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/unwind.d2
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/vcmp-zero-bad.d4
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/vcmp-zero-bad.l8
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/vcmp-zero-bad.s12
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/vldconst.d280
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/vldconst.s146
-rw-r--r--binutils-2.25/gas/testsuite/gas/arm/vldconst_be.d285
43 files changed, 1453 insertions, 21 deletions
diff --git a/binutils-2.25/gas/testsuite/gas/arm/arch7a-mp.d b/binutils-2.25/gas/testsuite/gas/arm/arch7a-mp.d
index bf6c6da6..85a1a014 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/arch7a-mp.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/arch7a-mp.d
@@ -11,7 +11,7 @@ Disassembly of section .text:
0[0-9a-f]+ <[^>]+> f59ef000 pldw \[lr\]
0[0-9a-f]+ <[^>]+> f591f000 pldw \[r1\]
0[0-9a-f]+ <[^>]+> f590ffff pldw \[r0, #4095\] ; 0xfff
-0[0-9a-f]+ <[^>]+> f510ffff pldw \[r0, #-4095\] ; 0xfff
+0[0-9a-f]+ <[^>]+> f510ffff pldw \[r0, #-4095\] ; 0xfffff001
0[0-9a-f]+ <[^>]+> f790f000 pldw \[r0, r0\]
0[0-9a-f]+ <[^>]+> f791f000 pldw \[r1, r0\]
0[0-9a-f]+ <[^>]+> f79ef000 pldw \[lr, r0\]
diff --git a/binutils-2.25/gas/testsuite/gas/arm/arch7r-mp.d b/binutils-2.25/gas/testsuite/gas/arm/arch7r-mp.d
index 8908c98c..b6efd6a9 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/arch7r-mp.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/arch7r-mp.d
@@ -10,7 +10,7 @@ Disassembly of section .text:
0[0-9a-f]+ <[^>]+> f59ef000 pldw \[lr\]
0[0-9a-f]+ <[^>]+> f591f000 pldw \[r1\]
0[0-9a-f]+ <[^>]+> f590ffff pldw \[r0, #4095\] ; 0xfff
-0[0-9a-f]+ <[^>]+> f510ffff pldw \[r0, #-4095\] ; 0xfff
+0[0-9a-f]+ <[^>]+> f510ffff pldw \[r0, #-4095\] ; 0xfffff001
0[0-9a-f]+ <[^>]+> f790f000 pldw \[r0, r0\]
0[0-9a-f]+ <[^>]+> f791f000 pldw \[r1, r0\]
0[0-9a-f]+ <[^>]+> f79ef000 pldw \[lr, r0\]
diff --git a/binutils-2.25/gas/testsuite/gas/arm/arm.exp b/binutils-2.25/gas/testsuite/gas/arm/arm.exp
index 2d6610b6..cf5009d4 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/arm.exp
+++ b/binutils-2.25/gas/testsuite/gas/arm/arm.exp
@@ -1,5 +1,4 @@
-# Copyright 2012
-# Free Software Foundation, Inc.
+# Copyright (C) 2012-2014 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/binutils-2.25/gas/testsuite/gas/arm/armv8-a+crypto.d b/binutils-2.25/gas/testsuite/gas/arm/armv8-a+crypto.d
index d5b2b4b3..453db31e 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/armv8-a+crypto.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/armv8-a+crypto.d
@@ -1,5 +1,6 @@
#name: Valid v8-a+cryptov1
#objdump: -dr --prefix-addresses --show-raw-insn
+#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd
.*: +file format .*arm.*
diff --git a/binutils-2.25/gas/testsuite/gas/arm/armv8-a+fp.d b/binutils-2.25/gas/testsuite/gas/arm/armv8-a+fp.d
index d50a73bd..f77e742a 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/armv8-a+fp.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/armv8-a+fp.d
@@ -1,5 +1,6 @@
#name: Valid v8-a+fp
#objdump: -dr --prefix-addresses --show-raw-insn
+#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd
.*: +file format .*arm.*
@@ -32,8 +33,8 @@ Disassembly of section .text:
0[0-9a-f]+ <[^>]+> fefd0ae0 vcvtn.s32.f32 s1, s1
0[0-9a-f]+ <[^>]+> febefa4f vcvtp.u32.f32 s30, s30
0[0-9a-f]+ <[^>]+> fefffa6f vcvtm.u32.f32 s31, s31
-0[0-9a-f]+ <[^>]+> febc0b40 vcvta.u32.f64 s0, d0
-0[0-9a-f]+ <[^>]+> fefd0b60 vcvtn.u32.f64 s1, d16
+0[0-9a-f]+ <[^>]+> febc0bc0 vcvta.s32.f64 s0, d0
+0[0-9a-f]+ <[^>]+> fefd0be0 vcvtn.s32.f64 s1, d16
0[0-9a-f]+ <[^>]+> febefb4f vcvtp.u32.f64 s30, d15
0[0-9a-f]+ <[^>]+> fefffb6f vcvtm.u32.f64 s31, d31
0[0-9a-f]+ <[^>]+> eeb60ac0 vrintz.f32 s0, s0
@@ -86,8 +87,8 @@ Disassembly of section .text:
0[0-9a-f]+ <[^>]+> fefd 0ae0 vcvtn.s32.f32 s1, s1
0[0-9a-f]+ <[^>]+> febe fa4f vcvtp.u32.f32 s30, s30
0[0-9a-f]+ <[^>]+> feff fa6f vcvtm.u32.f32 s31, s31
-0[0-9a-f]+ <[^>]+> febc 0b40 vcvta.u32.f64 s0, d0
-0[0-9a-f]+ <[^>]+> fefd 0b60 vcvtn.u32.f64 s1, d16
+0[0-9a-f]+ <[^>]+> febc 0bc0 vcvta.s32.f64 s0, d0
+0[0-9a-f]+ <[^>]+> fefd 0be0 vcvtn.s32.f64 s1, d16
0[0-9a-f]+ <[^>]+> febe fb4f vcvtp.u32.f64 s30, d15
0[0-9a-f]+ <[^>]+> feff fb6f vcvtm.u32.f64 s31, d31
0[0-9a-f]+ <[^>]+> eeb6 0ac0 vrintz.f32 s0, s0
diff --git a/binutils-2.25/gas/testsuite/gas/arm/armv8-a+simd.d b/binutils-2.25/gas/testsuite/gas/arm/armv8-a+simd.d
index 49ef5b6a..9d05566c 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/armv8-a+simd.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/armv8-a+simd.d
@@ -1,5 +1,6 @@
#name: Valid v8-a+simdv3
#objdump: -dr --prefix-addresses --show-raw-insn
+#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd
.*: +file format .*arm.*
diff --git a/binutils-2.25/gas/testsuite/gas/arm/armv8-a-barrier-thumb.d b/binutils-2.25/gas/testsuite/gas/arm/armv8-a-barrier-thumb.d
index 42dae156..17c2e93d 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/armv8-a-barrier-thumb.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/armv8-a-barrier-thumb.d
@@ -2,6 +2,7 @@
#as: -march=armv8-a -mthumb
#source: armv8-a-barrier.s
#objdump: -dr --prefix-addresses --show-raw-insn
+#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd
.*: +file format .*arm.*
diff --git a/binutils-2.25/gas/testsuite/gas/arm/armv8-a-it-bad.l b/binutils-2.25/gas/testsuite/gas/arm/armv8-a-it-bad.l
index e3a5971f..282216e4 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/armv8-a-it-bad.l
+++ b/binutils-2.25/gas/testsuite/gas/arm/armv8-a-it-bad.l
@@ -12,3 +12,7 @@
.*:55: Error: r15 not allowed here -- `addeq r0,pc,pc'
.*:58: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: Short branches, Undefined, SVC, LDM/STM
.*:58: Error: r15 not allowed here -- `addeq pc,r0,r0'
+.*:61: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: ADD/SUB sp, sp #imm
+.*:65: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: ADD/SUB sp, sp #imm
+.*:68: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: ADD/SUB sp, sp #imm
+.*:72: Warning: IT blocks containing 16-bit Thumb instructions of the following class are deprecated in ARMv8: ADD/SUB sp, sp #imm
diff --git a/binutils-2.25/gas/testsuite/gas/arm/armv8-a-it-bad.s b/binutils-2.25/gas/testsuite/gas/arm/armv8-a-it-bad.s
index 42f2b86b..d1bc07a3 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/armv8-a-it-bad.s
+++ b/binutils-2.25/gas/testsuite/gas/arm/armv8-a-it-bad.s
@@ -56,3 +56,17 @@ addeq r0, pc, pc
it eq
addeq pc, r0, r0
+
+it eq
+addeq sp, sp, #12
+
+@ Misaligned immediate.
+it eq
+addeq sp, sp, #3
+
+it eq
+subeq sp, sp, #12
+
+@ Misaligned immediate.
+it eq
+subeq sp, sp, #3
diff --git a/binutils-2.25/gas/testsuite/gas/arm/attr-march-armv7ve.d b/binutils-2.25/gas/testsuite/gas/arm/attr-march-armv7ve.d
new file mode 100644
index 00000000..604183f2
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/attr-march-armv7ve.d
@@ -0,0 +1,17 @@
+# name: attributes for -march=armv7ve
+# source: blank.s
+# as: -march=armv7ve
+# readelf: -A
+# This test is only valid on EABI based ports.
+# target: *-*-*eabi* *-*-nacl*
+
+Attribute Section: aeabi
+File Attributes
+ Tag_CPU_name: "7VE"
+ Tag_CPU_arch: v7
+ Tag_CPU_arch_profile: Application
+ Tag_ARM_ISA_use: Yes
+ Tag_THUMB_ISA_use: Thumb-2
+ Tag_MPextension_use: Allowed
+ Tag_DIV_use: Allowed in v7-A with integer division extension
+ Tag_Virtualization_use: TrustZone and Virtualization Extensions
diff --git a/binutils-2.25/gas/testsuite/gas/arm/backslash-at.d b/binutils-2.25/gas/testsuite/gas/arm/backslash-at.d
index c87965f4..3397573b 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/backslash-at.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/backslash-at.d
@@ -4,7 +4,7 @@
.*: file format .*arm.*
Disassembly of section .text:
-0+000 <.*>.*615c.*
+0+000 <.*>.*(615c|5c61).*
0+002 <foo> e3a00000 mov r0, #0
0+006 <foo\+0x4> e3a00000 mov r0, #0
0+00a <foo\+0x8> e3a00000 mov r0, #0
diff --git a/binutils-2.25/gas/testsuite/gas/arm/bl-local-2.d b/binutils-2.25/gas/testsuite/gas/arm/bl-local-2.d
index da7a49b6..6b55f5ab 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/bl-local-2.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/bl-local-2.d
@@ -1,5 +1,6 @@
#name: bl local conversion to blx
#objdump: -drw --prefix-addresses --show-raw-insn
+#target: *-*-*eabi* *-*-nacl*
#as:
diff --git a/binutils-2.25/gas/testsuite/gas/arm/bl-local-v4t.d b/binutils-2.25/gas/testsuite/gas/arm/bl-local-v4t.d
index 959f6b2b..0262b7ef 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/bl-local-v4t.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/bl-local-v4t.d
@@ -1,6 +1,6 @@
#name: bl local instructions for v4t.
#objdump: -drw --prefix-addresses --show-raw-insn
-#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* *-*-elf
+#target: *-*-*eabi* *-*-nacl*
#as:
# stderr: blx-local-thumb.l
diff --git a/binutils-2.25/gas/testsuite/gas/arm/blx-bl-convert.d b/binutils-2.25/gas/testsuite/gas/arm/blx-bl-convert.d
new file mode 100644
index 00000000..a30b5a22
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/blx-bl-convert.d
@@ -0,0 +1,21 @@
+#name: blx->bl convert under no -march/cpu
+#error-output: blx-bl-convert.l
+#objdump: -d
+
+.*: file format .*
+
+Disassembly of section \.text:
+
+00000000 <entry>:
+ 0: f000 f800 bl 4 <label>
+
+00000004 <label>:
+ 4: 4770 bx lr
+ \.\.\.
+
+00000008 <label2>:
+ 8: ebffffff bl c <label3>
+
+0000000c <label3>:
+ c: e12fff1e bx lr
+
diff --git a/binutils-2.25/gas/testsuite/gas/arm/blx-bl-convert.l b/binutils-2.25/gas/testsuite/gas/arm/blx-bl-convert.l
new file mode 100644
index 00000000..c039755a
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/blx-bl-convert.l
@@ -0,0 +1,4 @@
+[^:]*: Assembler messages:
+[^:]*:7: Warning: blx to Thumb func 'label' from Thumb ISA state changed to bl
+[^:]*:16: Warning: blx to 'label3' an ARM ISA state function changed to bl
+
diff --git a/binutils-2.25/gas/testsuite/gas/arm/blx-bl-convert.s b/binutils-2.25/gas/testsuite/gas/arm/blx-bl-convert.s
new file mode 100644
index 00000000..d9612333
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/blx-bl-convert.s
@@ -0,0 +1,20 @@
+.syntax unified
+
+.thumb
+.type entry, %function
+.global entry
+entry:
+ blx label
+
+.type label, %function
+label:
+ bx lr
+
+.arm
+.type label2, %function
+label2:
+ blx label3
+
+.type label3, %function
+label3:
+ bx lr
diff --git a/binutils-2.25/gas/testsuite/gas/arm/blx-local.d b/binutils-2.25/gas/testsuite/gas/arm/blx-local.d
index 2f9a90df..d8ba40f4 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/blx-local.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/blx-local.d
@@ -1,6 +1,6 @@
#name: Local BLX instructions
#objdump: -drw --prefix-addresses --show-raw-insn
-#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix* *-*-elf
+#target: *-*-*eabi* *-*-nacl*
#as:
# stderr: blx-local.l
# Test assembler resolution of blx and bl instructions in ARM mode.
diff --git a/binutils-2.25/gas/testsuite/gas/arm/branch-reloc.d b/binutils-2.25/gas/testsuite/gas/arm/branch-reloc.d
index 6ba322e5..8ef21106 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/branch-reloc.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/branch-reloc.d
@@ -1,6 +1,6 @@
#name: Inter-section branch relocations
-#This test is only valid on ELF based ports.
-#not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
+#This test is only valid on EABI based ports.
+#target: *-*-*eabi* *-*-nacl*
#as: -march=armv5t
#objdump: -rd
#stderr: branch-reloc.l
diff --git a/binutils-2.25/gas/testsuite/gas/arm/ccs.d b/binutils-2.25/gas/testsuite/gas/arm/ccs.d
new file mode 100644
index 00000000..742993ba
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/ccs.d
@@ -0,0 +1,25 @@
+#objdump: -dr
+# as: -mccs -mcpu=cortex-r4 -mthumb
+
+.*: file format .*arm.*
+
+
+Disassembly of section \.text:
+
+00000000 <_test_func>:
+ 0: e92d5fff push {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
+ 4: e59fc018 ldr ip, \[pc, #24\] ; 24 <sym1>
+ 8: e59c0000 ldr r0, \[ip\]
+ c: e3100008 tst r0, #8
+ 10: 1a000000 bne 18 <aLabel>
+ 14: e59c0000 ldr r0, \[ip\]
+
+00000018 <aLabel>:
+ 18: eb...... bl . <ext_sy.*>
+ 18: .* ext_sy.*
+ 1c: e8bd5fff pop {r0, r1, r2, r3, r4, r5, r6, r7, r8, r9, sl, fp, ip, lr}
+ 20: e25ef008 subs pc, lr, #8
+
+00000024 <sym1>:
+ 24: fffff520 .*
+#...
diff --git a/binutils-2.25/gas/testsuite/gas/arm/ccs.s b/binutils-2.25/gas/testsuite/gas/arm/ccs.s
new file mode 100644
index 00000000..3a7568a1
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/ccs.s
@@ -0,0 +1,33 @@
+;-------------------------------------------------------------------------------
+; Comments here
+
+ .text
+ .arm
+
+;-------------------------------------------------------------------------------
+
+ .ref ext_sym
+ .def _test_func
+ .asmfunc
+
+_test_func
+ stmfd r13!, {r0 - r12, lr}; push registers and link register on to stack
+
+ ldr r12, sym1 ; another comment
+ ldr r0, [r12]
+ tst r0, #0x8
+ bne aLabel
+ ldr r0, [r12]
+
+aLabel
+ bl ext_sym ; custom data abort handler required
+
+ ldmfd r13!, {r0 - r12, lr}; pop registers and link register from stack
+ subs pc, lr, #8
+
+sym1 .word 0xFFFFF520
+
+
+ .endasmfunc
+
+
diff --git a/binutils-2.25/gas/testsuite/gas/arm/got_prel.d b/binutils-2.25/gas/testsuite/gas/arm/got_prel.d
index 8360fb96..880a6dba 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/got_prel.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/got_prel.d
@@ -4,16 +4,16 @@
# readelf: -x 4 -r
# target: *-*-*eabi* *-*-symbianelf *-*-linux-* *-*-elf *-*-nacl*
-Relocation section '.rel.text.foo' at offset 0x3f0 contains 1 entries:
+Relocation section '.rel.text.foo' at offset .* contains 1 entries:
Offset Info Type Sym.Value Sym. Name
00000010 00000c60 R_ARM_GOT_PREL 00000000 i
-Relocation section '.rel.ARM.exidx.text.foo' at offset 0x3f8 contains 2 entries:
+Relocation section '.rel.ARM.exidx.text.foo' at offset .* contains 2 entries:
Offset Info Type Sym.Value Sym. Name
00000000 0000042a R_ARM_PREL31 00000000 .text.foo
00000000 00000d00 R_ARM_NONE 00000000 __aeabi_unwind_cpp_pr0
Hex dump of section '.text.foo':
NOTE: This section has relocations against it, but these have NOT been applied to this dump.
- 0x00000000 034b7b44 1b681a68 1860101c 7047c046 .K{D.h.h.`..pG.F
- 0x00000010 0a000000 ....
+ 0x00000000 (034b7b44|4b03447b) (1b681a68|681b681a) (1860101c|60181c10) (7047c046|477046c0) .*
+ 0x00000010 (0a000000|0000000a) ....
diff --git a/binutils-2.25/gas/testsuite/gas/arm/inst-po.d b/binutils-2.25/gas/testsuite/gas/arm/inst-po.d
index be912c87..af411399 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/inst-po.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/inst-po.d
@@ -9,8 +9,8 @@ Disassembly of section .text:
00000004 <.text\+0x4> bf0c ite eq
00000006 <.text\+0x6> 4649 moveq r1, r9
00000008 <.text\+0x8> 4649 movne r1, r9
-0000000a <.text\+0xa> 1234 .short 0x1234
-0000000c <.text\+0xc> 0000 .short 0x0000
+0000000a <.text\+0xa> (1234|0000) .short (0x1234|0x0000)
+0000000c <.text\+0xc> (0000|1234) .short (0x0000|0x1234)
0000000e <.text\+0xe> bf0c ite eq
00000010 <.text\+0x10> 4649 moveq r1, r9
00000012 <.text\+0x12> 4649 movne r1, r9
diff --git a/binutils-2.25/gas/testsuite/gas/arm/ldconst.d b/binutils-2.25/gas/testsuite/gas/arm/ldconst.d
index 3d063785..f8c273db 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/ldconst.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/ldconst.d
@@ -1,6 +1,7 @@
#objdump: -dr --prefix-addresses --show-raw-insn
#name: ARM ldr with immediate constant
#as: -mcpu=arm7m -EL
+# skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd
.*: +file format .*arm.*
@@ -25,3 +26,17 @@ Disassembly of section .text:
0+44 <[^>]*> 43e0b0ff ? mvnmi fp, #255 ; 0xff
0+48 <[^>]*> 451fb004 ? ldrmi fp, \[pc, #-4\] ; 0+4c <[^>]*>
0+4c <[^>]*> 0000fff0 ? .*
+0+50 <[^>]*> e59f0020 ? ldr r0, \[pc, #32\] ; 0+78 <[^>]*>
+0+54 <[^>]*> e59f301c ? ldr r3, \[pc, #28\] ; 0+78 <[^>]*>
+0+58 <[^>]*> e59f8018 ? ldr r8, \[pc, #24\] ; 0+78 <[^>]*>
+0+5c <[^>]*> e59fb014 ? ldr fp, \[pc, #20\] ; 0+78 <[^>]*>
+0+60 <[^>]*> e59fe010 ? ldr lr, \[pc, #16\] ; 0+78 <[^>]*>
+0+64 <[^>]*> e59f0010 ? ldr r0, \[pc, #16\] ; 0+7c <[^>]*>
+0+68 <[^>]*> e59f300c ? ldr r3, \[pc, #12\] ; 0+7c <[^>]*>
+0+6c <[^>]*> e59f8008 ? ldr r8, \[pc, #8\] ; 0+7c <[^>]*>
+0+70 <[^>]*> e59fb004 ? ldr fp, \[pc, #4\] ; 0+7c <[^>]*>
+0+74 <[^>]*> e51fe000 ? ldr lr, \[pc, #-0\] ; 0+7c <[^>]*>
+0+78 <[^>]*> 00000000 .word 0x00000000
+ 78: R_ARM_ABS32 ext_symbol
+0+7c <[^>]*> 00001000 .word 0x00001000
+ 7c: R_ARM_ABS32 ext_symbol
diff --git a/binutils-2.25/gas/testsuite/gas/arm/ldconst.s b/binutils-2.25/gas/testsuite/gas/arm/ldconst.s
index 1b6aca90..d0b54966 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/ldconst.s
+++ b/binutils-2.25/gas/testsuite/gas/arm/ldconst.s
@@ -26,3 +26,14 @@ foo:
ldrmi r11, =0xffffff00
ldrmi r11, =0x0000fff0
.pool
+
+ # test symbol literal support.
+ .macro ldrs const
+ .irp regindex, 0, 3, 8, 11, 14
+ ldr r\regindex, \const
+ .endr
+ .endm
+
+ ldrs "=ext_symbol"
+ ldrs "=ext_symbol + 0x1000"
+ .pool
diff --git a/binutils-2.25/gas/testsuite/gas/arm/ldgesb-bad.d b/binutils-2.25/gas/testsuite/gas/arm/ldgesb-bad.d
index f11df796..46a37269 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/ldgesb-bad.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/ldgesb-bad.d
@@ -1,3 +1,4 @@
# name: Reject ld<cc>sb instructions
# as: -march=armv7-a
# error-output: ldgesb-bad.l
+# skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd
diff --git a/binutils-2.25/gas/testsuite/gas/arm/ldgesh-bad.d b/binutils-2.25/gas/testsuite/gas/arm/ldgesh-bad.d
index e7c93c31..3dced89a 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/ldgesh-bad.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/ldgesh-bad.d
@@ -1,3 +1,4 @@
# name: Reject ld<cc>sh instructions
# as: -march=armv7-a
# error-output: ldgesh-bad.l
+# skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd
diff --git a/binutils-2.25/gas/testsuite/gas/arm/mapmisc.d b/binutils-2.25/gas/testsuite/gas/arm/mapmisc.d
index f5b70390..0e1d0468 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/mapmisc.d
+++ b/binutils-2.25/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/binutils-2.25/gas/testsuite/gas/arm/mapmisc.s b/binutils-2.25/gas/testsuite/gas/arm/mapmisc.s
index 1625515f..c203e74b 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/mapmisc.s
+++ b/binutils-2.25/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
diff --git a/binutils-2.25/gas/testsuite/gas/arm/maverick.c b/binutils-2.25/gas/testsuite/gas/arm/maverick.c
index 09ad8cbb..8d615a93 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/maverick.c
+++ b/binutils-2.25/gas/testsuite/gas/arm/maverick.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2000, 2003, 2004, 2005, 2007 Free Software Foundation
+/* Copyright (C) 2000-2014 Free Software Foundation, Inc.
Contributed by Alexandre Oliva <aoliva@cygnus.com>
This file is free software; you can redistribute it and/or modify it
diff --git a/binutils-2.25/gas/testsuite/gas/arm/thumb2_pool.d b/binutils-2.25/gas/testsuite/gas/arm/thumb2_pool.d
index 4d6ce445..8f8d8818 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/thumb2_pool.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/thumb2_pool.d
@@ -14,3 +14,18 @@ Disassembly of section .text:
0+00e <[^>]+> f8df 5004 ldr\.w r5, \[pc, #4\] ; 00+14 <[^>]+>
0+012 <[^>]+> 4900 ldr r1, \[pc, #0\] ; \(00+14 <[^>]+>\)
0+014 <[^>]+> 12345678 ? .word 0x12345678
+0+018 <[^>]+> 4907 ldr r1, \[pc, #28\] ; \(00000038 <[^>]+>\)
+0+01a <[^>]+> 4c07 ldr r4, \[pc, #28\] ; \(00000038 <[^>]+>\)
+0+01c <[^>]+> f8df 9018 ldr.w r9, \[pc, #24\] ; 00000038 <[^>]+>
+0+020 <[^>]+> f8df c014 ldr.w ip, \[pc, #20\] ; 00000038 <[^>]+>
+0+024 <[^>]+> f8df d010 ldr.w sp, \[pc, #16\] ; 00000038 <[^>]+>
+0+028 <[^>]+> 4904 ldr r1, \[pc, #16\] ; \(0000003c <[^>]+>\)
+0+02a <[^>]+> 4c04 ldr r4, \[pc, #16\] ; \(0000003c <[^>]+>\)
+0+02c <[^>]+> f8df 900c ldr.w r9, \[pc, #12\] ; 0000003c <[^>]+>
+0+030 <[^>]+> f8df c008 ldr.w ip, \[pc, #8\] ; 0000003c <[^>]+>
+0+034 <[^>]+> f8df d004 ldr.w sp, \[pc, #4\] ; 0000003c <[^>]+>
+0+038 <[^>]+> 00000000 .word 0x00000000
+ 38: R_ARM_ABS32 ext_symbol
+0+03c <[^>]+> 00001000 .word 0x00001000
+ 3c: R_ARM_ABS32 ext_symbol
+
diff --git a/binutils-2.25/gas/testsuite/gas/arm/thumb2_pool.s b/binutils-2.25/gas/testsuite/gas/arm/thumb2_pool.s
index 844e77ec..92c0fe9c 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/thumb2_pool.s
+++ b/binutils-2.25/gas/testsuite/gas/arm/thumb2_pool.s
@@ -11,3 +11,14 @@ thumb2_ldr:
ldr.w r5, =0x12345678
ldr r1, =0x12345678
.pool
+
+ # test symbol literal support.
+ .macro ldrs const
+ .irp regindex, 1, 4, 9, 12, 13
+ ldr r\regindex, \const
+ .endr
+ .endm
+
+ ldrs "=ext_symbol"
+ ldrs "=ext_symbol + 0x1000"
+ .pool
diff --git a/binutils-2.25/gas/testsuite/gas/arm/thumb2_vpool.d b/binutils-2.25/gas/testsuite/gas/arm/thumb2_vpool.d
new file mode 100644
index 00000000..5a8cb6f9
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/thumb2_vpool.d
@@ -0,0 +1,169 @@
+# as: -march=armv6t2 -EL
+# objdump: -dr --prefix-addresses --show-raw-insn
+# This test is only valid on ELF based ports.
+#not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
+#name: Thumb2 vldr with immediate constant
+
+.*: +file format .*arm.*
+
+Disassembly of section .text:
+00000000 <thumb2_ldr> ed9f 0a0f vldr s0, \[pc, #60\] ; 00000040 <thumb2_ldr\+0x40>
+00000004 <thumb2_ldr\+0x4> ed9f 7a0e vldr s14, \[pc, #56\] ; 00000040 <thumb2_ldr\+0x40>
+00000008 <thumb2_ldr\+0x8> ed9f ea0d vldr s28, \[pc, #52\] ; 00000040 <thumb2_ldr\+0x40>
+0000000c <thumb2_ldr\+0xc> eddf fa0c vldr s31, \[pc, #48\] ; 00000040 <thumb2_ldr\+0x40>
+00000010 <thumb2_ldr\+0x10> ed9f 0a0c vldr s0, \[pc, #48\] ; 00000044 <thumb2_ldr\+0x44>
+00000014 <thumb2_ldr\+0x14> ed9f 7a0b vldr s14, \[pc, #44\] ; 00000044 <thumb2_ldr\+0x44>
+00000018 <thumb2_ldr\+0x18> ed9f ea0a vldr s28, \[pc, #40\] ; 00000044 <thumb2_ldr\+0x44>
+0000001c <thumb2_ldr\+0x1c> eddf fa09 vldr s31, \[pc, #36\] ; 00000044 <thumb2_ldr\+0x44>
+00000020 <thumb2_ldr\+0x20> ed9f 0a09 vldr s0, \[pc, #36\] ; 00000048 <thumb2_ldr\+0x48>
+00000024 <thumb2_ldr\+0x24> ed9f 7a08 vldr s14, \[pc, #32\] ; 00000048 <thumb2_ldr\+0x48>
+00000028 <thumb2_ldr\+0x28> ed9f ea07 vldr s28, \[pc, #28\] ; 00000048 <thumb2_ldr\+0x48>
+0000002c <thumb2_ldr\+0x2c> eddf fa06 vldr s31, \[pc, #24\] ; 00000048 <thumb2_ldr\+0x48>
+00000030 <thumb2_ldr\+0x30> ed9f 0a06 vldr s0, \[pc, #24\] ; 0000004c <thumb2_ldr\+0x4c>
+00000034 <thumb2_ldr\+0x34> ed9f 7a05 vldr s14, \[pc, #20\] ; 0000004c <thumb2_ldr\+0x4c>
+00000038 <thumb2_ldr\+0x38> ed9f ea04 vldr s28, \[pc, #16\] ; 0000004c <thumb2_ldr\+0x4c>
+0000003c <thumb2_ldr\+0x3c> eddf fa03 vldr s31, \[pc, #12\] ; 0000004c <thumb2_ldr\+0x4c>
+00000040 <thumb2_ldr\+0x40> 00000000 .word 0x00000000
+00000044 <thumb2_ldr\+0x44> ff000000 .word 0xff000000
+00000048 <thumb2_ldr\+0x48> ffffffff .word 0xffffffff
+0000004c <thumb2_ldr\+0x4c> 0fff0000 .word 0x0fff0000
+00000050 <thumb2_ldr\+0x50> ed9f 0a0f vldr s0, \[pc, #60\] ; 00000090 <thumb2_ldr\+0x90>
+00000054 <thumb2_ldr\+0x54> ed9f 7a0e vldr s14, \[pc, #56\] ; 00000090 <thumb2_ldr\+0x90>
+00000058 <thumb2_ldr\+0x58> ed9f ea0d vldr s28, \[pc, #52\] ; 00000090 <thumb2_ldr\+0x90>
+0000005c <thumb2_ldr\+0x5c> eddf fa0c vldr s31, \[pc, #48\] ; 00000090 <thumb2_ldr\+0x90>
+00000060 <thumb2_ldr\+0x60> ed9f 0a0c vldr s0, \[pc, #48\] ; 00000094 <thumb2_ldr\+0x94>
+00000064 <thumb2_ldr\+0x64> ed9f 7a0b vldr s14, \[pc, #44\] ; 00000094 <thumb2_ldr\+0x94>
+00000068 <thumb2_ldr\+0x68> ed9f ea0a vldr s28, \[pc, #40\] ; 00000094 <thumb2_ldr\+0x94>
+0000006c <thumb2_ldr\+0x6c> eddf fa09 vldr s31, \[pc, #36\] ; 00000094 <thumb2_ldr\+0x94>
+00000070 <thumb2_ldr\+0x70> ed9f 0a09 vldr s0, \[pc, #36\] ; 00000098 <thumb2_ldr\+0x98>
+00000074 <thumb2_ldr\+0x74> ed9f 7a08 vldr s14, \[pc, #32\] ; 00000098 <thumb2_ldr\+0x98>
+00000078 <thumb2_ldr\+0x78> ed9f ea07 vldr s28, \[pc, #28\] ; 00000098 <thumb2_ldr\+0x98>
+0000007c <thumb2_ldr\+0x7c> eddf fa06 vldr s31, \[pc, #24\] ; 00000098 <thumb2_ldr\+0x98>
+00000080 <thumb2_ldr\+0x80> ed9f 0a06 vldr s0, \[pc, #24\] ; 0000009c <thumb2_ldr\+0x9c>
+00000084 <thumb2_ldr\+0x84> ed9f 7a05 vldr s14, \[pc, #20\] ; 0000009c <thumb2_ldr\+0x9c>
+00000088 <thumb2_ldr\+0x88> ed9f ea04 vldr s28, \[pc, #16\] ; 0000009c <thumb2_ldr\+0x9c>
+0000008c <thumb2_ldr\+0x8c> eddf fa03 vldr s31, \[pc, #12\] ; 0000009c <thumb2_ldr\+0x9c>
+00000090 <thumb2_ldr\+0x90> 00000000 .word 0x00000000
+00000094 <thumb2_ldr\+0x94> 00ff0000 .word 0x00ff0000
+00000098 <thumb2_ldr\+0x98> ff00ffff .word 0xff00ffff
+0000009c <thumb2_ldr\+0x9c> 00fff000 .word 0x00fff000
+000000a0 <thumb2_ldr\+0xa0> ef80 0e30 vmov.i64 d0, #0x0000000000000000
+000000a4 <thumb2_ldr\+0xa4> ef80 ee30 vmov.i64 d14, #0x0000000000000000
+000000a8 <thumb2_ldr\+0xa8> efc0 ce30 vmov.i64 d28, #0x0000000000000000
+000000ac <thumb2_ldr\+0xac> efc0 fe30 vmov.i64 d31, #0x0000000000000000
+000000b0 <thumb2_ldr\+0xb0> ed9f 0b0b vldr d0, \[pc, #44\] ; 000000e0 <thumb2_ldr\+0xe0>
+000000b4 <thumb2_ldr\+0xb4> ed9f eb0a vldr d14, \[pc, #40\] ; 000000e0 <thumb2_ldr\+0xe0>
+000000b8 <thumb2_ldr\+0xb8> eddf cb09 vldr d28, \[pc, #36\] ; 000000e0 <thumb2_ldr\+0xe0>
+000000bc <thumb2_ldr\+0xbc> eddf fb08 vldr d31, \[pc, #32\] ; 000000e0 <thumb2_ldr\+0xe0>
+000000c0 <thumb2_ldr\+0xc0> ff87 0e3f vmov.i64 d0, #0xffffffffffffffff
+000000c4 <thumb2_ldr\+0xc4> ff87 ee3f vmov.i64 d14, #0xffffffffffffffff
+000000c8 <thumb2_ldr\+0xc8> ffc7 ce3f vmov.i64 d28, #0xffffffffffffffff
+000000cc <thumb2_ldr\+0xcc> ffc7 fe3f vmov.i64 d31, #0xffffffffffffffff
+000000d0 <thumb2_ldr\+0xd0> ed9f 0b05 vldr d0, \[pc, #20\] ; 000000e8 <thumb2_ldr\+0xe8>
+000000d4 <thumb2_ldr\+0xd4> ed9f eb04 vldr d14, \[pc, #16\] ; 000000e8 <thumb2_ldr\+0xe8>
+000000d8 <thumb2_ldr\+0xd8> eddf cb03 vldr d28, \[pc, #12\] ; 000000e8 <thumb2_ldr\+0xe8>
+000000dc <thumb2_ldr\+0xdc> eddf fb02 vldr d31, \[pc, #8\] ; 000000e8 <thumb2_ldr\+0xe8>
+000000e0 <thumb2_ldr\+0xe0> ca000000 .word 0xca000000
+000000e4 <thumb2_ldr\+0xe4> 00000000 .word 0x00000000
+000000e8 <thumb2_ldr\+0xe8> 0fff0000 .word 0x0fff0000
+000000ec <thumb2_ldr\+0xec> 00000000 .word 0x00000000
+000000f0 <thumb2_ldr\+0xf0> ef80 0e30 vmov.i64 d0, #0x0000000000000000
+000000f4 <thumb2_ldr\+0xf4> ef80 ee30 vmov.i64 d14, #0x0000000000000000
+000000f8 <thumb2_ldr\+0xf8> efc0 ce30 vmov.i64 d28, #0x0000000000000000
+000000fc <thumb2_ldr\+0xfc> efc0 fe30 vmov.i64 d31, #0x0000000000000000
+00000100 <thumb2_ldr\+0x100> ef80 0e34 vmov.i64 d0, #0x0000000000ff0000
+00000104 <thumb2_ldr\+0x104> ef80 ee34 vmov.i64 d14, #0x0000000000ff0000
+00000108 <thumb2_ldr\+0x108> efc0 ce34 vmov.i64 d28, #0x0000000000ff0000
+0000010c <thumb2_ldr\+0x10c> efc0 fe34 vmov.i64 d31, #0x0000000000ff0000
+00000110 <thumb2_ldr\+0x110> ef80 0e39 vmov.i64 d0, #0x00000000ff0000ff
+00000114 <thumb2_ldr\+0x114> ef80 ee39 vmov.i64 d14, #0x00000000ff0000ff
+00000118 <thumb2_ldr\+0x118> efc0 ce39 vmov.i64 d28, #0x00000000ff0000ff
+0000011c <thumb2_ldr\+0x11c> efc0 fe39 vmov.i64 d31, #0x00000000ff0000ff
+00000120 <thumb2_ldr\+0x120> ed9f 0b03 vldr d0, \[pc, #12\] ; 00000130 <thumb2_ldr\+0x130>
+00000124 <thumb2_ldr\+0x124> ed9f eb02 vldr d14, \[pc, #8\] ; 00000130 <thumb2_ldr\+0x130>
+00000128 <thumb2_ldr\+0x128> eddf cb01 vldr d28, \[pc, #4\] ; 00000130 <thumb2_ldr\+0x130>
+0000012c <thumb2_ldr\+0x12c> eddf fb00 vldr d31, \[pc\] ; 00000130 <thumb2_ldr\+0x130>
+00000130 <thumb2_ldr\+0x130> 00fff000 .word 0x00fff000
+00000134 <thumb2_ldr\+0x134> 00000000 .word 0x00000000
+00000138 <thumb2_ldr\+0x138> ef80 0e30 vmov.i64 d0, #0x0000000000000000
+0000013c <thumb2_ldr\+0x13c> ef80 ee30 vmov.i64 d14, #0x0000000000000000
+00000140 <thumb2_ldr\+0x140> efc0 ce30 vmov.i64 d28, #0x0000000000000000
+00000144 <thumb2_ldr\+0x144> efc0 fe30 vmov.i64 d31, #0x0000000000000000
+00000148 <thumb2_ldr\+0x148> ff80 0e30 vmov.i64 d0, #0xff00000000000000
+0000014c <thumb2_ldr\+0x14c> ff80 ee30 vmov.i64 d14, #0xff00000000000000
+00000150 <thumb2_ldr\+0x150> ffc0 ce30 vmov.i64 d28, #0xff00000000000000
+00000154 <thumb2_ldr\+0x154> ffc0 fe30 vmov.i64 d31, #0xff00000000000000
+00000158 <thumb2_ldr\+0x158> ff87 0e3f vmov.i64 d0, #0xffffffffffffffff
+0000015c <thumb2_ldr\+0x15c> ff87 ee3f vmov.i64 d14, #0xffffffffffffffff
+00000160 <thumb2_ldr\+0x160> ffc7 ce3f vmov.i64 d28, #0xffffffffffffffff
+00000164 <thumb2_ldr\+0x164> ffc7 fe3f vmov.i64 d31, #0xffffffffffffffff
+00000168 <thumb2_ldr\+0x168> ed9f 0b03 vldr d0, \[pc, #12\] ; 00000178 <thumb2_ldr\+0x178>
+0000016c <thumb2_ldr\+0x16c> ed9f eb02 vldr d14, \[pc, #8\] ; 00000178 <thumb2_ldr\+0x178>
+00000170 <thumb2_ldr\+0x170> eddf cb01 vldr d28, \[pc, #4\] ; 00000178 <thumb2_ldr\+0x178>
+00000174 <thumb2_ldr\+0x174> eddf fb00 vldr d31, \[pc\] ; 00000178 <thumb2_ldr\+0x178>
+00000178 <thumb2_ldr\+0x178> 00000000 .word 0x00000000
+0000017c <thumb2_ldr\+0x17c> 0fff0000 .word 0x0fff0000
+00000180 <thumb2_ldr\+0x180> ef80 0e30 vmov.i64 d0, #0x0000000000000000
+00000184 <thumb2_ldr\+0x184> ef80 ee30 vmov.i64 d14, #0x0000000000000000
+00000188 <thumb2_ldr\+0x188> efc0 ce30 vmov.i64 d28, #0x0000000000000000
+0000018c <thumb2_ldr\+0x18c> efc0 fe30 vmov.i64 d31, #0x0000000000000000
+00000190 <thumb2_ldr\+0x190> ed9f 0b0b vldr d0, \[pc, #44\] ; 000001c0 <thumb2_ldr\+0x1c0>
+00000194 <thumb2_ldr\+0x194> ed9f eb0a vldr d14, \[pc, #40\] ; 000001c0 <thumb2_ldr\+0x1c0>
+00000198 <thumb2_ldr\+0x198> eddf cb09 vldr d28, \[pc, #36\] ; 000001c0 <thumb2_ldr\+0x1c0>
+0000019c <thumb2_ldr\+0x19c> eddf fb08 vldr d31, \[pc, #32\] ; 000001c0 <thumb2_ldr\+0x1c0>
+000001a0 <thumb2_ldr\+0x1a0> ed9f 0b09 vldr d0, \[pc, #36\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001a4 <thumb2_ldr\+0x1a4> ed9f eb08 vldr d14, \[pc, #32\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001a8 <thumb2_ldr\+0x1a8> eddf cb07 vldr d28, \[pc, #28\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001ac <thumb2_ldr\+0x1ac> eddf fb06 vldr d31, \[pc, #24\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001b0 <thumb2_ldr\+0x1b0> ed9f 0b05 vldr d0, \[pc, #20\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001b4 <thumb2_ldr\+0x1b4> ed9f eb04 vldr d14, \[pc, #16\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001b8 <thumb2_ldr\+0x1b8> eddf cb03 vldr d28, \[pc, #12\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001bc <thumb2_ldr\+0x1bc> eddf fb02 vldr d31, \[pc, #8\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001c0 <thumb2_ldr\+0x1c0> 00000000 .word 0x00000000
+000001c4 <thumb2_ldr\+0x1c4> 000ff000 .word 0x000ff000
+000001c8 <thumb2_ldr\+0x1c8> f0000000 .word 0xf0000000
+000001cc <thumb2_ldr\+0x1cc> 0ff00fff .word 0x0ff00fff
+000001d0 <thumb2_ldr\+0x1d0> ed9f 1b01 vldr d1, \[pc, #4\] ; 000001d8 <thumb2_ldr\+0x1d8>
+ \.\.\.
+000001dc <thumb2_ldr\+0x1dc> 0000fff0 .word 0x0000fff0
+000001e0 <thumb2_ldr\+0x1e0> f101 0000 add.w r0, r1, #0
+000001e4 <thumb2_ldr\+0x1e4> ed9f 1b00 vldr d1, \[pc\] ; 000001e8 <thumb2_ldr\+0x1e8>
+000001e8 <thumb2_ldr\+0x1e8> 00000000 .word 0x00000000
+000001ec <thumb2_ldr\+0x1ec> 0000fff0 .word 0x0000fff0
+000001f0 <thumb2_ldr\+0x1f0> ed9f 1b11 vldr d1, \[pc, #68\] ; 00000238 <thumb2_ldr\+0x238>
+000001f4 <thumb2_ldr\+0x1f4> ed9f 1a12 vldr s2, \[pc, #72\] ; 00000240 <thumb2_ldr\+0x240>
+000001f8 <thumb2_ldr\+0x1f8> ed9f 3b13 vldr d3, \[pc, #76\] ; 00000248 <thumb2_ldr\+0x248>
+000001fc <thumb2_ldr\+0x1fc> ed9f 2a11 vldr s4, \[pc, #68\] ; 00000244 <thumb2_ldr\+0x244>
+00000200 <thumb2_ldr\+0x200> ed9f 5b11 vldr d5, \[pc, #68\] ; 00000248 <thumb2_ldr\+0x248>
+00000204 <thumb2_ldr\+0x204> ed9f 6b12 vldr d6, \[pc, #72\] ; 00000250 <thumb2_ldr\+0x250>
+00000208 <thumb2_ldr\+0x208> ed9f 7b13 vldr d7, \[pc, #76\] ; 00000258 <thumb2_ldr\+0x258>
+0000020c <thumb2_ldr\+0x20c> ed9f 4a14 vldr s8, \[pc, #80\] ; 00000260 <thumb2_ldr\+0x260>
+00000210 <thumb2_ldr\+0x210> ed9f 9b15 vldr d9, \[pc, #84\] ; 00000268 <thumb2_ldr\+0x268>
+00000214 <thumb2_ldr\+0x214> ed9f 5a13 vldr s10, \[pc, #76\] ; 00000264 <thumb2_ldr\+0x264>
+00000218 <thumb2_ldr\+0x218> ed9f bb15 vldr d11, \[pc, #84\] ; 00000270 <thumb2_ldr\+0x270>
+0000021c <thumb2_ldr\+0x21c> ed9f 6a16 vldr s12, \[pc, #88\] ; 00000278 <thumb2_ldr\+0x278>
+00000220 <thumb2_ldr\+0x220> eddf 6a16 vldr s13, \[pc, #88\] ; 0000027c <thumb2_ldr\+0x27c>
+00000224 <thumb2_ldr\+0x224> ed9f 7a07 vldr s14, \[pc, #28\] ; 00000244 <thumb2_ldr\+0x244>
+00000228 <thumb2_ldr\+0x228> eddf 7a04 vldr s15, \[pc, #16\] ; 0000023c <thumb2_ldr\+0x23c>
+0000022c <thumb2_ldr\+0x22c> eddf 0b12 vldr d16, \[pc, #72\] ; 00000278 <thumb2_ldr\+0x278>
+00000230 <thumb2_ldr\+0x230> eddf 1b13 vldr d17, \[pc, #76\] ; 00000280 <thumb2_ldr\+0x280>
+ \.\.\.
+0000023c <thumb2_ldr\+0x23c> 0000fff0 .word 0x0000fff0
+00000240 <thumb2_ldr\+0x240> ff000000 .word 0xff000000
+00000244 <thumb2_ldr\+0x244> ff000001 .word 0xff000001
+00000248 <thumb2_ldr\+0x248> 00000001 .word 0x00000001
+0000024c <thumb2_ldr\+0x24c> 0000fff0 .word 0x0000fff0
+00000250 <thumb2_ldr\+0x250> 00000002 .word 0x00000002
+00000254 <thumb2_ldr\+0x254> 0000fff0 .word 0x0000fff0
+00000258 <thumb2_ldr\+0x258> 00000003 .word 0x00000003
+0000025c <thumb2_ldr\+0x25c> 0000fff0 .word 0x0000fff0
+00000260 <thumb2_ldr\+0x260> ff000002 .word 0xff000002
+00000264 <thumb2_ldr\+0x264> ff000003 .word 0xff000003
+00000268 <thumb2_ldr\+0x268> 00000004 .word 0x00000004
+0000026c <thumb2_ldr\+0x26c> 0000fff0 .word 0x0000fff0
+00000270 <thumb2_ldr\+0x270> 00000005 .word 0x00000005
+00000274 <thumb2_ldr\+0x274> 0000fff0 .word 0x0000fff0
+00000278 <thumb2_ldr\+0x278> ff000004 .word 0xff000004
+0000027c <thumb2_ldr\+0x27c> ff000005 .word 0xff000005
+00000280 <thumb2_ldr\+0x280> 0000fff0 .word 0x0000fff0
+00000284 <thumb2_ldr\+0x284> ff000004 .word 0xff000004
diff --git a/binutils-2.25/gas/testsuite/gas/arm/thumb2_vpool.s b/binutils-2.25/gas/testsuite/gas/arm/thumb2_vpool.s
new file mode 100644
index 00000000..efbbc77e
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/thumb2_vpool.s
@@ -0,0 +1,95 @@
+ .text
+ .fpu neon
+ .thumb
+ .syntax unified
+ .thumb_func
+thumb2_ldr:
+ .macro vlxr regtype const
+ .irp regindex, 0, 14, 28, 31
+ vldr \regtype\regindex, \const
+ .endr
+ .endm
+ # Thumb-2 support vldr literal pool also.
+ vlxr s "=0"
+ vlxr s "=0xff000000"
+ vlxr s "=-1"
+ vlxr s "=0x0fff0000"
+ .pool
+
+ vlxr s "=0"
+ vlxr s "=0x00ff0000"
+ vlxr s "=0xff00ffff"
+ vlxr s "=0x00fff000"
+ .pool
+
+ vlxr d "=0"
+ vlxr d "=0xca000000"
+ vlxr d "=-1"
+ vlxr d "=0x0fff0000"
+ .pool
+
+ vlxr d "=0"
+ vlxr d "=0x00ff0000"
+ vlxr d "=0xff0000ff"
+ vlxr d "=0x00fff000"
+ .pool
+
+ vlxr d "=0"
+ vlxr d "=0xff00000000000000"
+ vlxr d "=-1"
+ vlxr d "=0x0fff000000000000"
+ .pool
+
+ vlxr d "=0"
+ vlxr d "=0x00ff00000000000"
+ vlxr d "=0xff00ffff0000000"
+ vlxr d "=0xff00ffff0000000"
+ .pool
+
+ # pool should be aligned to 8-byte.
+ .p2align 3
+ vldr d1, =0x0000fff000000000
+ .pool
+
+ # no error when code is align already.
+ .p2align 3
+ add r0, r1, #0
+ vldr d1, =0x0000fff000000000
+ .pool
+
+ .p2align 3
+ vldr d1, =0x0000fff000000000
+ vldr s2, =0xff000000
+ # padding A
+ vldr d3, =0x0000fff000000001
+ # reuse padding slot A
+ vldr s4, =0xff000001
+ # reuse d3
+ vldr d5, =0x0000fff000000001
+ # new 8-byte entry
+ vldr d6, =0x0000fff000000002
+ # new 8-byte entry
+ vldr d7, =0x0000fff000000003
+ # new 4-byte entry
+ vldr s8, =0xff000002
+ # padding B
+ vldr d9, =0x0000fff000000004
+ # reuse padding slot B
+ vldr s10, =0xff000003
+ # new 8-byte entry
+ vldr d11, =0x0000fff000000005
+ # new 4 entry
+ vldr s12, =0xff000004
+ # new 4 entry
+ vldr s13, =0xff000005
+ # reuse value of s4 in pool
+ vldr s14, =0xff000001
+ # reuse high part of d1 in pool
+ vldr s15, =0x0000fff0
+ # 8-byte entry reuse two 4-byte entries.
+ # d16 reuse s12, s13
+ vldr d16, =0xff000005ff000004
+ # d17 should not reuse high part of d11 and s12.
+ # because the it's align 8-byte aligned.
+ vldr d17, =0xff0000040000fff0
+ .pool
diff --git a/binutils-2.25/gas/testsuite/gas/arm/thumb2_vpool_be.d b/binutils-2.25/gas/testsuite/gas/arm/thumb2_vpool_be.d
new file mode 100644
index 00000000..816cddca
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/thumb2_vpool_be.d
@@ -0,0 +1,176 @@
+# as: -march=armv6t2 -mbig-endian
+# objdump: -dr --prefix-addresses --show-raw-insn
+# This test is only valid on ELF based ports.
+#not-target: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd *-*-riscix*
+#name: Thumb2 vldr with immediate constant
+#source: thumb2_vpool.s
+
+.*: +file format .*arm.*
+
+Disassembly of section .text:
+00000000 <thumb2_ldr> ed9f 0a0f vldr s0, \[pc, #60\] ; 00000040 <thumb2_ldr\+0x40>
+00000004 <thumb2_ldr\+0x4> ed9f 7a0e vldr s14, \[pc, #56\] ; 00000040 <thumb2_ldr\+0x40>
+00000008 <thumb2_ldr\+0x8> ed9f ea0d vldr s28, \[pc, #52\] ; 00000040 <thumb2_ldr\+0x40>
+0000000c <thumb2_ldr\+0xc> eddf fa0c vldr s31, \[pc, #48\] ; 00000040 <thumb2_ldr\+0x40>
+00000010 <thumb2_ldr\+0x10> ed9f 0a0c vldr s0, \[pc, #48\] ; 00000044 <thumb2_ldr\+0x44>
+00000014 <thumb2_ldr\+0x14> ed9f 7a0b vldr s14, \[pc, #44\] ; 00000044 <thumb2_ldr\+0x44>
+00000018 <thumb2_ldr\+0x18> ed9f ea0a vldr s28, \[pc, #40\] ; 00000044 <thumb2_ldr\+0x44>
+0000001c <thumb2_ldr\+0x1c> eddf fa09 vldr s31, \[pc, #36\] ; 00000044 <thumb2_ldr\+0x44>
+00000020 <thumb2_ldr\+0x20> ed9f 0a09 vldr s0, \[pc, #36\] ; 00000048 <thumb2_ldr\+0x48>
+00000024 <thumb2_ldr\+0x24> ed9f 7a08 vldr s14, \[pc, #32\] ; 00000048 <thumb2_ldr\+0x48>
+00000028 <thumb2_ldr\+0x28> ed9f ea07 vldr s28, \[pc, #28\] ; 00000048 <thumb2_ldr\+0x48>
+0000002c <thumb2_ldr\+0x2c> eddf fa06 vldr s31, \[pc, #24\] ; 00000048 <thumb2_ldr\+0x48>
+00000030 <thumb2_ldr\+0x30> ed9f 0a06 vldr s0, \[pc, #24\] ; 0000004c <thumb2_ldr\+0x4c>
+00000034 <thumb2_ldr\+0x34> ed9f 7a05 vldr s14, \[pc, #20\] ; 0000004c <thumb2_ldr\+0x4c>
+00000038 <thumb2_ldr\+0x38> ed9f ea04 vldr s28, \[pc, #16\] ; 0000004c <thumb2_ldr\+0x4c>
+0000003c <thumb2_ldr\+0x3c> eddf fa03 vldr s31, \[pc, #12\] ; 0000004c <thumb2_ldr\+0x4c>
+00000040 <thumb2_ldr\+0x40> 00000000 .word 0x00000000
+00000044 <thumb2_ldr\+0x44> ff000000 .word 0xff000000
+00000048 <thumb2_ldr\+0x48> ffffffff .word 0xffffffff
+0000004c <thumb2_ldr\+0x4c> 0fff0000 .word 0x0fff0000
+00000050 <thumb2_ldr\+0x50> ed9f 0a0f vldr s0, \[pc, #60\] ; 00000090 <thumb2_ldr\+0x90>
+00000054 <thumb2_ldr\+0x54> ed9f 7a0e vldr s14, \[pc, #56\] ; 00000090 <thumb2_ldr\+0x90>
+00000058 <thumb2_ldr\+0x58> ed9f ea0d vldr s28, \[pc, #52\] ; 00000090 <thumb2_ldr\+0x90>
+0000005c <thumb2_ldr\+0x5c> eddf fa0c vldr s31, \[pc, #48\] ; 00000090 <thumb2_ldr\+0x90>
+00000060 <thumb2_ldr\+0x60> ed9f 0a0c vldr s0, \[pc, #48\] ; 00000094 <thumb2_ldr\+0x94>
+00000064 <thumb2_ldr\+0x64> ed9f 7a0b vldr s14, \[pc, #44\] ; 00000094 <thumb2_ldr\+0x94>
+00000068 <thumb2_ldr\+0x68> ed9f ea0a vldr s28, \[pc, #40\] ; 00000094 <thumb2_ldr\+0x94>
+0000006c <thumb2_ldr\+0x6c> eddf fa09 vldr s31, \[pc, #36\] ; 00000094 <thumb2_ldr\+0x94>
+00000070 <thumb2_ldr\+0x70> ed9f 0a09 vldr s0, \[pc, #36\] ; 00000098 <thumb2_ldr\+0x98>
+00000074 <thumb2_ldr\+0x74> ed9f 7a08 vldr s14, \[pc, #32\] ; 00000098 <thumb2_ldr\+0x98>
+00000078 <thumb2_ldr\+0x78> ed9f ea07 vldr s28, \[pc, #28\] ; 00000098 <thumb2_ldr\+0x98>
+0000007c <thumb2_ldr\+0x7c> eddf fa06 vldr s31, \[pc, #24\] ; 00000098 <thumb2_ldr\+0x98>
+00000080 <thumb2_ldr\+0x80> ed9f 0a06 vldr s0, \[pc, #24\] ; 0000009c <thumb2_ldr\+0x9c>
+00000084 <thumb2_ldr\+0x84> ed9f 7a05 vldr s14, \[pc, #20\] ; 0000009c <thumb2_ldr\+0x9c>
+00000088 <thumb2_ldr\+0x88> ed9f ea04 vldr s28, \[pc, #16\] ; 0000009c <thumb2_ldr\+0x9c>
+0000008c <thumb2_ldr\+0x8c> eddf fa03 vldr s31, \[pc, #12\] ; 0000009c <thumb2_ldr\+0x9c>
+00000090 <thumb2_ldr\+0x90> 00000000 .word 0x00000000
+00000094 <thumb2_ldr\+0x94> 00ff0000 .word 0x00ff0000
+00000098 <thumb2_ldr\+0x98> ff00ffff .word 0xff00ffff
+0000009c <thumb2_ldr\+0x9c> 00fff000 .word 0x00fff000
+000000a0 <thumb2_ldr\+0xa0> ef80 0e30 vmov.i64 d0, #0x0000000000000000
+000000a4 <thumb2_ldr\+0xa4> ef80 ee30 vmov.i64 d14, #0x0000000000000000
+000000a8 <thumb2_ldr\+0xa8> efc0 ce30 vmov.i64 d28, #0x0000000000000000
+000000ac <thumb2_ldr\+0xac> efc0 fe30 vmov.i64 d31, #0x0000000000000000
+000000b0 <thumb2_ldr\+0xb0> ed9f 0b0b vldr d0, \[pc, #44\] ; 000000e0 <thumb2_ldr\+0xe0>
+000000b4 <thumb2_ldr\+0xb4> ed9f eb0a vldr d14, \[pc, #40\] ; 000000e0 <thumb2_ldr\+0xe0>
+000000b8 <thumb2_ldr\+0xb8> eddf cb09 vldr d28, \[pc, #36\] ; 000000e0 <thumb2_ldr\+0xe0>
+000000bc <thumb2_ldr\+0xbc> eddf fb08 vldr d31, \[pc, #32\] ; 000000e0 <thumb2_ldr\+0xe0>
+000000c0 <thumb2_ldr\+0xc0> ff87 0e3f vmov.i64 d0, #0xffffffffffffffff
+000000c4 <thumb2_ldr\+0xc4> ff87 ee3f vmov.i64 d14, #0xffffffffffffffff
+000000c8 <thumb2_ldr\+0xc8> ffc7 ce3f vmov.i64 d28, #0xffffffffffffffff
+000000cc <thumb2_ldr\+0xcc> ffc7 fe3f vmov.i64 d31, #0xffffffffffffffff
+000000d0 <thumb2_ldr\+0xd0> ed9f 0b05 vldr d0, \[pc, #20\] ; 000000e8 <thumb2_ldr\+0xe8>
+000000d4 <thumb2_ldr\+0xd4> ed9f eb04 vldr d14, \[pc, #16\] ; 000000e8 <thumb2_ldr\+0xe8>
+000000d8 <thumb2_ldr\+0xd8> eddf cb03 vldr d28, \[pc, #12\] ; 000000e8 <thumb2_ldr\+0xe8>
+000000dc <thumb2_ldr\+0xdc> eddf fb02 vldr d31, \[pc, #8\] ; 000000e8 <thumb2_ldr\+0xe8>
+000000e0 <thumb2_ldr\+0xe0> 00000000 .word 0x00000000
+000000e4 <thumb2_ldr\+0xe4> ca000000 .word 0xca000000
+000000e8 <thumb2_ldr\+0xe8> 00000000 .word 0x00000000
+000000ec <thumb2_ldr\+0xec> 0fff0000 .word 0x0fff0000
+000000f0 <thumb2_ldr\+0xf0> ef80 0e30 vmov.i64 d0, #0x0000000000000000
+000000f4 <thumb2_ldr\+0xf4> ef80 ee30 vmov.i64 d14, #0x0000000000000000
+000000f8 <thumb2_ldr\+0xf8> efc0 ce30 vmov.i64 d28, #0x0000000000000000
+000000fc <thumb2_ldr\+0xfc> efc0 fe30 vmov.i64 d31, #0x0000000000000000
+00000100 <thumb2_ldr\+0x100> ef80 0e34 vmov.i64 d0, #0x0000000000ff0000
+00000104 <thumb2_ldr\+0x104> ef80 ee34 vmov.i64 d14, #0x0000000000ff0000
+00000108 <thumb2_ldr\+0x108> efc0 ce34 vmov.i64 d28, #0x0000000000ff0000
+0000010c <thumb2_ldr\+0x10c> efc0 fe34 vmov.i64 d31, #0x0000000000ff0000
+00000110 <thumb2_ldr\+0x110> ef80 0e39 vmov.i64 d0, #0x00000000ff0000ff
+00000114 <thumb2_ldr\+0x114> ef80 ee39 vmov.i64 d14, #0x00000000ff0000ff
+00000118 <thumb2_ldr\+0x118> efc0 ce39 vmov.i64 d28, #0x00000000ff0000ff
+0000011c <thumb2_ldr\+0x11c> efc0 fe39 vmov.i64 d31, #0x00000000ff0000ff
+00000120 <thumb2_ldr\+0x120> ed9f 0b03 vldr d0, \[pc, #12\] ; 00000130 <thumb2_ldr\+0x130>
+00000124 <thumb2_ldr\+0x124> ed9f eb02 vldr d14, \[pc, #8\] ; 00000130 <thumb2_ldr\+0x130>
+00000128 <thumb2_ldr\+0x128> eddf cb01 vldr d28, \[pc, #4\] ; 00000130 <thumb2_ldr\+0x130>
+0000012c <thumb2_ldr\+0x12c> eddf fb00 vldr d31, \[pc\] ; 00000130 <thumb2_ldr\+0x130>
+00000130 <thumb2_ldr\+0x130> 00000000 .word 0x00000000
+00000134 <thumb2_ldr\+0x134> 00fff000 .word 0x00fff000
+00000138 <thumb2_ldr\+0x138> ef80 0e30 vmov.i64 d0, #0x0000000000000000
+0000013c <thumb2_ldr\+0x13c> ef80 ee30 vmov.i64 d14, #0x0000000000000000
+00000140 <thumb2_ldr\+0x140> efc0 ce30 vmov.i64 d28, #0x0000000000000000
+00000144 <thumb2_ldr\+0x144> efc0 fe30 vmov.i64 d31, #0x0000000000000000
+00000148 <thumb2_ldr\+0x148> ff80 0e30 vmov.i64 d0, #0xff00000000000000
+0000014c <thumb2_ldr\+0x14c> ff80 ee30 vmov.i64 d14, #0xff00000000000000
+00000150 <thumb2_ldr\+0x150> ffc0 ce30 vmov.i64 d28, #0xff00000000000000
+00000154 <thumb2_ldr\+0x154> ffc0 fe30 vmov.i64 d31, #0xff00000000000000
+00000158 <thumb2_ldr\+0x158> ff87 0e3f vmov.i64 d0, #0xffffffffffffffff
+0000015c <thumb2_ldr\+0x15c> ff87 ee3f vmov.i64 d14, #0xffffffffffffffff
+00000160 <thumb2_ldr\+0x160> ffc7 ce3f vmov.i64 d28, #0xffffffffffffffff
+00000164 <thumb2_ldr\+0x164> ffc7 fe3f vmov.i64 d31, #0xffffffffffffffff
+00000168 <thumb2_ldr\+0x168> ed9f 0b03 vldr d0, \[pc, #12\] ; 00000178 <thumb2_ldr\+0x178>
+0000016c <thumb2_ldr\+0x16c> ed9f eb02 vldr d14, \[pc, #8\] ; 00000178 <thumb2_ldr\+0x178>
+00000170 <thumb2_ldr\+0x170> eddf cb01 vldr d28, \[pc, #4\] ; 00000178 <thumb2_ldr\+0x178>
+00000174 <thumb2_ldr\+0x174> eddf fb00 vldr d31, \[pc\] ; 00000178 <thumb2_ldr\+0x178>
+00000178 <thumb2_ldr\+0x178> 0fff0000 .word 0x0fff0000
+0000017c <thumb2_ldr\+0x17c> 00000000 .word 0x00000000
+00000180 <thumb2_ldr\+0x180> ef80 0e30 vmov.i64 d0, #0x0000000000000000
+00000184 <thumb2_ldr\+0x184> ef80 ee30 vmov.i64 d14, #0x0000000000000000
+00000188 <thumb2_ldr\+0x188> efc0 ce30 vmov.i64 d28, #0x0000000000000000
+0000018c <thumb2_ldr\+0x18c> efc0 fe30 vmov.i64 d31, #0x0000000000000000
+00000190 <thumb2_ldr\+0x190> ed9f 0b0b vldr d0, \[pc, #44\] ; 000001c0 <thumb2_ldr\+0x1c0>
+00000194 <thumb2_ldr\+0x194> ed9f eb0a vldr d14, \[pc, #40\] ; 000001c0 <thumb2_ldr\+0x1c0>
+00000198 <thumb2_ldr\+0x198> eddf cb09 vldr d28, \[pc, #36\] ; 000001c0 <thumb2_ldr\+0x1c0>
+0000019c <thumb2_ldr\+0x19c> eddf fb08 vldr d31, \[pc, #32\] ; 000001c0 <thumb2_ldr\+0x1c0>
+000001a0 <thumb2_ldr\+0x1a0> ed9f 0b09 vldr d0, \[pc, #36\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001a4 <thumb2_ldr\+0x1a4> ed9f eb08 vldr d14, \[pc, #32\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001a8 <thumb2_ldr\+0x1a8> eddf cb07 vldr d28, \[pc, #28\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001ac <thumb2_ldr\+0x1ac> eddf fb06 vldr d31, \[pc, #24\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001b0 <thumb2_ldr\+0x1b0> ed9f 0b05 vldr d0, \[pc, #20\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001b4 <thumb2_ldr\+0x1b4> ed9f eb04 vldr d14, \[pc, #16\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001b8 <thumb2_ldr\+0x1b8> eddf cb03 vldr d28, \[pc, #12\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001bc <thumb2_ldr\+0x1bc> eddf fb02 vldr d31, \[pc, #8\] ; 000001c8 <thumb2_ldr\+0x1c8>
+000001c0 <thumb2_ldr\+0x1c0> 000ff000 .word 0x000ff000
+000001c4 <thumb2_ldr\+0x1c4> 00000000 .word 0x00000000
+000001c8 <thumb2_ldr\+0x1c8> 0ff00fff .word 0x0ff00fff
+000001cc <thumb2_ldr\+0x1cc> f0000000 .word 0xf0000000
+000001d0 <thumb2_ldr\+0x1d0> ed9f 1b01 vldr d1, \[pc, #4\] ; 000001d8 <thumb2_ldr\+0x1d8>
+000001d4 <thumb2_ldr\+0x1d4> 0000 movs r0, r0
+000001d6 <thumb2_ldr\+0x1d6> 0000 movs r0, r0
+000001d8 <thumb2_ldr\+0x1d8> 0000fff0 .word 0x0000fff0
+000001dc <thumb2_ldr\+0x1dc> 00000000 .word 0x00000000
+000001e0 <thumb2_ldr\+0x1e0> f101 0000 add.w r0, r1, #0
+000001e4 <thumb2_ldr\+0x1e4> ed9f 1b00 vldr d1, \[pc\] ; 000001e8 <thumb2_ldr\+0x1e8>
+000001e8 <thumb2_ldr\+0x1e8> 0000fff0 .word 0x0000fff0
+000001ec <thumb2_ldr\+0x1ec> 00000000 .word 0x00000000
+000001f0 <thumb2_ldr\+0x1f0> ed9f 1b11 vldr d1, \[pc, #68\] ; 00000238 <thumb2_ldr\+0x238>
+000001f4 <thumb2_ldr\+0x1f4> ed9f 1a12 vldr s2, \[pc, #72\] ; 00000240 <thumb2_ldr\+0x240>
+000001f8 <thumb2_ldr\+0x1f8> ed9f 3b13 vldr d3, \[pc, #76\] ; 00000248 <thumb2_ldr\+0x248>
+000001fc <thumb2_ldr\+0x1fc> ed9f 2a11 vldr s4, \[pc, #68\] ; 00000244 <thumb2_ldr\+0x244>
+00000200 <thumb2_ldr\+0x200> ed9f 5b11 vldr d5, \[pc, #68\] ; 00000248 <thumb2_ldr\+0x248>
+00000204 <thumb2_ldr\+0x204> ed9f 6b12 vldr d6, \[pc, #72\] ; 00000250 <thumb2_ldr\+0x250>
+00000208 <thumb2_ldr\+0x208> ed9f 7b13 vldr d7, \[pc, #76\] ; 00000258 <thumb2_ldr\+0x258>
+0000020c <thumb2_ldr\+0x20c> ed9f 4a14 vldr s8, \[pc, #80\] ; 00000260 <thumb2_ldr\+0x260>
+00000210 <thumb2_ldr\+0x210> ed9f 9b15 vldr d9, \[pc, #84\] ; 00000268 <thumb2_ldr\+0x268>
+00000214 <thumb2_ldr\+0x214> ed9f 5a13 vldr s10, \[pc, #76\] ; 00000264 <thumb2_ldr\+0x264>
+00000218 <thumb2_ldr\+0x218> ed9f bb15 vldr d11, \[pc, #84\] ; 00000270 <thumb2_ldr\+0x270>
+0000021c <thumb2_ldr\+0x21c> ed9f 6a16 vldr s12, \[pc, #88\] ; 00000278 <thumb2_ldr\+0x278>
+00000220 <thumb2_ldr\+0x220> eddf 6a16 vldr s13, \[pc, #88\] ; 0000027c <thumb2_ldr\+0x27c>
+00000224 <thumb2_ldr\+0x224> ed9f 7a07 vldr s14, \[pc, #28\] ; 00000244 <thumb2_ldr\+0x244>
+00000228 <thumb2_ldr\+0x228> eddf 7a03 vldr s15, \[pc, #12\] ; 00000238 <thumb2_ldr\+0x238>
+0000022c <thumb2_ldr\+0x22c> eddf 0b14 vldr d16, \[pc, #80\] ; 00000280 <thumb2_ldr\+0x280>
+00000230 <thumb2_ldr\+0x230> eddf 1b15 vldr d17, \[pc, #84\] ; 00000288 <thumb2_ldr\+0x288>
+00000234 <thumb2_ldr\+0x234> 0000 movs r0, r0
+00000236 <thumb2_ldr\+0x236> 0000 movs r0, r0
+00000238 <thumb2_ldr\+0x238> 0000fff0 .word 0x0000fff0
+0000023c <thumb2_ldr\+0x23c> 00000000 .word 0x00000000
+00000240 <thumb2_ldr\+0x240> ff000000 .word 0xff000000
+00000244 <thumb2_ldr\+0x244> ff000001 .word 0xff000001
+00000248 <thumb2_ldr\+0x248> 0000fff0 .word 0x0000fff0
+0000024c <thumb2_ldr\+0x24c> 00000001 .word 0x00000001
+00000250 <thumb2_ldr\+0x250> 0000fff0 .word 0x0000fff0
+00000254 <thumb2_ldr\+0x254> 00000002 .word 0x00000002
+00000258 <thumb2_ldr\+0x258> 0000fff0 .word 0x0000fff0
+0000025c <thumb2_ldr\+0x25c> 00000003 .word 0x00000003
+00000260 <thumb2_ldr\+0x260> ff000002 .word 0xff000002
+00000264 <thumb2_ldr\+0x264> ff000003 .word 0xff000003
+00000268 <thumb2_ldr\+0x268> 0000fff0 .word 0x0000fff0
+0000026c <thumb2_ldr\+0x26c> 00000004 .word 0x00000004
+00000270 <thumb2_ldr\+0x270> 0000fff0 .word 0x0000fff0
+00000274 <thumb2_ldr\+0x274> 00000005 .word 0x00000005
+00000278 <thumb2_ldr\+0x278> ff000004 .word 0xff000004
+0000027c <thumb2_ldr\+0x27c> ff000005 .word 0xff000005
+00000280 <thumb2_ldr\+0x280> ff000005 .word 0xff000005
+00000284 <thumb2_ldr\+0x284> ff000004 .word 0xff000004
+00000288 <thumb2_ldr\+0x288> ff000004 .word 0xff000004
+0000028c <thumb2_ldr\+0x28c> 0000fff0 .word 0x0000fff0
diff --git a/binutils-2.25/gas/testsuite/gas/arm/ual-vcmp.d b/binutils-2.25/gas/testsuite/gas/arm/ual-vcmp.d
new file mode 100644
index 00000000..2e9fb3d5
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/ual-vcmp.d
@@ -0,0 +1,24 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: UAL vcmp with 0
+#as: -mfpu=vfpv3
+
+.*: +file format .*arm.*
+
+
+Disassembly of section .text:
+0+000 <[^>]*> eeb50a40 vcmp.f32 s0, #0.0
+0+004 <[^>]*> eef50a40 vcmp.f32 s1, #0.0
+0+008 <[^>]*> eef51ac0 vcmpe.f32 s3, #0.0
+0+00c <[^>]*> eeb52ac0 vcmpe.f32 s4, #0.0
+0+010 <[^>]*> eef52a40 vcmp.f32 s5, #0.0
+0+014 <[^>]*> eeb53a40 vcmp.f32 s6, #0.0
+0+018 <[^>]*> eef53ac0 vcmpe.f32 s7, #0.0
+0+01c <[^>]*> eeb54ac0 vcmpe.f32 s8, #0.0
+0+020 <[^>]*> eeb50b40 vcmp.f64 d0, #0.0
+0+024 <[^>]*> eeb51b40 vcmp.f64 d1, #0.0
+0+028 <[^>]*> eeb52bc0 vcmpe.f64 d2, #0.0
+0+02c <[^>]*> eeb53bc0 vcmpe.f64 d3, #0.0
+0+030 <[^>]*> eeb54b40 vcmp.f64 d4, #0.0
+0+034 <[^>]*> eeb55b40 vcmp.f64 d5, #0.0
+0+038 <[^>]*> eeb56bc0 vcmpe.f64 d6, #0.0
+0+03c <[^>]*> eeb57bc0 vcmpe.f64 d7, #0.0 \ No newline at end of file
diff --git a/binutils-2.25/gas/testsuite/gas/arm/ual-vcmp.s b/binutils-2.25/gas/testsuite/gas/arm/ual-vcmp.s
new file mode 100644
index 00000000..79efa4e7
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/ual-vcmp.s
@@ -0,0 +1,21 @@
+.text
+.arm
+.syntax unified
+
+vcmp.f32 s0, #0.0
+vcmp.f32 s1, #0
+vcmpe.f32 s3, #0.0
+vcmpe.f32 s4, #0
+vcmp.f32 s5, #0.0e2
+vcmp.f32 s6, #0e-3
+vcmpe.f32 s7, #0.0000
+vcmpe.f32 s8, #.0
+
+vcmp.f64 d0, #0.0
+vcmp.f64 d1, #0
+vcmpe.f64 d2, #0.0
+vcmpe.f64 d3, #0
+vcmp.f64 d4, #0.0e5
+vcmp.f64 d5, #0e-2
+vcmpe.f64 d6, #0.00
+vcmpe.f64 d7, #.0
diff --git a/binutils-2.25/gas/testsuite/gas/arm/unwind.d b/binutils-2.25/gas/testsuite/gas/arm/unwind.d
index 060f7ba5..557c3e47 100644
--- a/binutils-2.25/gas/testsuite/gas/arm/unwind.d
+++ b/binutils-2.25/gas/testsuite/gas/arm/unwind.d
@@ -31,7 +31,7 @@ OFFSET TYPE VALUE
Contents of section .text:
0000 (0000a0e3 0100a0e3 0200a0e3 0300a0e3|e3a00000 e3a00001 e3a00002 e3a00003) .*
- 0010 (04200520 0600a0e3|20052004 e3a00006) .*
+ 0010 (04200520 0600a0e3|20042005 e3a00006) .*
Contents of section .ARM.extab:
0000 (449b0181 b0b08086|81019b44 8680b0b0) 00000000 00000000 .*
0010 (8402b101 b0b0b005 2a000000 00c60281|01b10284 05b0b0b0 0000002a 8102c600) .*
diff --git a/binutils-2.25/gas/testsuite/gas/arm/vcmp-zero-bad.d b/binutils-2.25/gas/testsuite/gas/arm/vcmp-zero-bad.d
new file mode 100644
index 00000000..806cf00f
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/vcmp-zero-bad.d
@@ -0,0 +1,4 @@
+# name: UAL vcmp with #0.0 bad instructions.
+# as: -mfpu=vfpv3
+# source: vcmp-zero-bad.s
+# error-output: vcmp-zero-bad.l
diff --git a/binutils-2.25/gas/testsuite/gas/arm/vcmp-zero-bad.l b/binutils-2.25/gas/testsuite/gas/arm/vcmp-zero-bad.l
new file mode 100644
index 00000000..975d02b8
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/vcmp-zero-bad.l
@@ -0,0 +1,8 @@
+[^:]*: Assembler messages:
+[^:]*:5: Error: only floating point zero is allowed as immediate value -- `vcmp.f32 s0,#0.01'
+[^:]*:6: Error: only floating point zero is allowed as immediate value -- `vcmp.f32 s1,#2'
+[^:]*:7: Error: only floating point zero is allowed as immediate value -- `vcmpe.f32 s3,5'
+[^:]*:8: Error: only floating point zero is allowed as immediate value -- `vcmpe.f32 s4,#-0.0'
+[^:]*:10: Error: only floating point zero is allowed as immediate value -- `vcmp.f64 d0,#-1'
+[^:]*:11: Error: garbage following instruction -- `vcmpe.f64 d3,#0x35'
+[^:]*:12: Error: only floating point zero is allowed as immediate value -- `vcmpe.f64 d4,0xf'
diff --git a/binutils-2.25/gas/testsuite/gas/arm/vcmp-zero-bad.s b/binutils-2.25/gas/testsuite/gas/arm/vcmp-zero-bad.s
new file mode 100644
index 00000000..3be79cba
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/vcmp-zero-bad.s
@@ -0,0 +1,12 @@
+.text
+.arm
+.syntax unified
+
+vcmp.f32 s0, #0.01
+vcmp.f32 s1, #2
+vcmpe.f32 s3, 5
+vcmpe.f32 s4, #-0.0
+
+vcmp.f64 d0, #-1
+vcmpe.f64 d3, #0x35
+vcmpe.f64 d4, 0xf
diff --git a/binutils-2.25/gas/testsuite/gas/arm/vldconst.d b/binutils-2.25/gas/testsuite/gas/arm/vldconst.d
new file mode 100644
index 00000000..221f3e38
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/vldconst.d
@@ -0,0 +1,280 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: ARM vldr with immediate constant
+#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd
+#as: -mcpu=arm7m -EL
+
+.*: +file format .*arm.*
+
+Disassembly of section .text:
+00000000 <foo> ed9f0a0e vldr s0, \[pc, #56\] ; 00000040 <foo\+0x40>
+00000004 <foo\+0x4> ed9f7a0d vldr s14, \[pc, #52\] ; 00000040 <foo\+0x40>
+00000008 <foo\+0x8> ed9fea0c vldr s28, \[pc, #48\] ; 00000040 <foo\+0x40>
+0000000c <foo\+0xc> eddffa0b vldr s31, \[pc, #44\] ; 00000040 <foo\+0x40>
+00000010 <foo\+0x10> ed9f0a0b vldr s0, \[pc, #44\] ; 00000044 <foo\+0x44>
+00000014 <foo\+0x14> ed9f7a0a vldr s14, \[pc, #40\] ; 00000044 <foo\+0x44>
+00000018 <foo\+0x18> ed9fea09 vldr s28, \[pc, #36\] ; 00000044 <foo\+0x44>
+0000001c <foo\+0x1c> eddffa08 vldr s31, \[pc, #32\] ; 00000044 <foo\+0x44>
+00000020 <foo\+0x20> ed9f0a08 vldr s0, \[pc, #32\] ; 00000048 <foo\+0x48>
+00000024 <foo\+0x24> ed9f7a07 vldr s14, \[pc, #28\] ; 00000048 <foo\+0x48>
+00000028 <foo\+0x28> ed9fea06 vldr s28, \[pc, #24\] ; 00000048 <foo\+0x48>
+0000002c <foo\+0x2c> eddffa05 vldr s31, \[pc, #20\] ; 00000048 <foo\+0x48>
+00000030 <foo\+0x30> ed9f0a05 vldr s0, \[pc, #20\] ; 0000004c <foo\+0x4c>
+00000034 <foo\+0x34> ed9f7a04 vldr s14, \[pc, #16\] ; 0000004c <foo\+0x4c>
+00000038 <foo\+0x38> ed9fea03 vldr s28, \[pc, #12\] ; 0000004c <foo\+0x4c>
+0000003c <foo\+0x3c> eddffa02 vldr s31, \[pc, #8\] ; 0000004c <foo\+0x4c>
+00000040 <foo\+0x40> 00000000 .word 0x00000000
+00000044 <foo\+0x44> ff000000 .word 0xff000000
+00000048 <foo\+0x48> ffffffff .word 0xffffffff
+0000004c <foo\+0x4c> 0fff0000 .word 0x0fff0000
+00000050 <foo\+0x50> ed9f0a0e vldr s0, \[pc, #56\] ; 00000090 <foo\+0x90>
+00000054 <foo\+0x54> ed9f7a0d vldr s14, \[pc, #52\] ; 00000090 <foo\+0x90>
+00000058 <foo\+0x58> ed9fea0c vldr s28, \[pc, #48\] ; 00000090 <foo\+0x90>
+0000005c <foo\+0x5c> eddffa0b vldr s31, \[pc, #44\] ; 00000090 <foo\+0x90>
+00000060 <foo\+0x60> ed9f0a0b vldr s0, \[pc, #44\] ; 00000094 <foo\+0x94>
+00000064 <foo\+0x64> ed9f7a0a vldr s14, \[pc, #40\] ; 00000094 <foo\+0x94>
+00000068 <foo\+0x68> ed9fea09 vldr s28, \[pc, #36\] ; 00000094 <foo\+0x94>
+0000006c <foo\+0x6c> eddffa08 vldr s31, \[pc, #32\] ; 00000094 <foo\+0x94>
+00000070 <foo\+0x70> ed9f0a08 vldr s0, \[pc, #32\] ; 00000098 <foo\+0x98>
+00000074 <foo\+0x74> ed9f7a07 vldr s14, \[pc, #28\] ; 00000098 <foo\+0x98>
+00000078 <foo\+0x78> ed9fea06 vldr s28, \[pc, #24\] ; 00000098 <foo\+0x98>
+0000007c <foo\+0x7c> eddffa05 vldr s31, \[pc, #20\] ; 00000098 <foo\+0x98>
+00000080 <foo\+0x80> ed9f0a05 vldr s0, \[pc, #20\] ; 0000009c <foo\+0x9c>
+00000084 <foo\+0x84> ed9f7a04 vldr s14, \[pc, #16\] ; 0000009c <foo\+0x9c>
+00000088 <foo\+0x88> ed9fea03 vldr s28, \[pc, #12\] ; 0000009c <foo\+0x9c>
+0000008c <foo\+0x8c> eddffa02 vldr s31, \[pc, #8\] ; 0000009c <foo\+0x9c>
+00000090 <foo\+0x90> 00000000 .word 0x00000000
+00000094 <foo\+0x94> 00ff0000 .word 0x00ff0000
+00000098 <foo\+0x98> ff00ffff .word 0xff00ffff
+0000009c <foo\+0x9c> 00fff000 .word 0x00fff000
+000000a0 <foo\+0xa0> 0d9f0a0e vldreq s0, \[pc, #56\] ; 000000e0 <foo\+0xe0>
+000000a4 <foo\+0xa4> 0d9f7a0d vldreq s14, \[pc, #52\] ; 000000e0 <foo\+0xe0>
+000000a8 <foo\+0xa8> 0d9fea0c vldreq s28, \[pc, #48\] ; 000000e0 <foo\+0xe0>
+000000ac <foo\+0xac> 0ddffa0b vldreq s31, \[pc, #44\] ; 000000e0 <foo\+0xe0>
+000000b0 <foo\+0xb0> 0d9f0a0b vldreq s0, \[pc, #44\] ; 000000e4 <foo\+0xe4>
+000000b4 <foo\+0xb4> 0d9f7a0a vldreq s14, \[pc, #40\] ; 000000e4 <foo\+0xe4>
+000000b8 <foo\+0xb8> 0d9fea09 vldreq s28, \[pc, #36\] ; 000000e4 <foo\+0xe4>
+000000bc <foo\+0xbc> 0ddffa08 vldreq s31, \[pc, #32\] ; 000000e4 <foo\+0xe4>
+000000c0 <foo\+0xc0> 0d9f0a08 vldreq s0, \[pc, #32\] ; 000000e8 <foo\+0xe8>
+000000c4 <foo\+0xc4> 0d9f7a07 vldreq s14, \[pc, #28\] ; 000000e8 <foo\+0xe8>
+000000c8 <foo\+0xc8> 0d9fea06 vldreq s28, \[pc, #24\] ; 000000e8 <foo\+0xe8>
+000000cc <foo\+0xcc> 0ddffa05 vldreq s31, \[pc, #20\] ; 000000e8 <foo\+0xe8>
+000000d0 <foo\+0xd0> 0d9f0a05 vldreq s0, \[pc, #20\] ; 000000ec <foo\+0xec>
+000000d4 <foo\+0xd4> 0d9f7a04 vldreq s14, \[pc, #16\] ; 000000ec <foo\+0xec>
+000000d8 <foo\+0xd8> 0d9fea03 vldreq s28, \[pc, #12\] ; 000000ec <foo\+0xec>
+000000dc <foo\+0xdc> 0ddffa02 vldreq s31, \[pc, #8\] ; 000000ec <foo\+0xec>
+000000e0 <foo\+0xe0> 00000000 .word 0x00000000
+000000e4 <foo\+0xe4> 0000ff00 .word 0x0000ff00
+000000e8 <foo\+0xe8> ffff00ff .word 0xffff00ff
+000000ec <foo\+0xec> 000fff00 .word 0x000fff00
+000000f0 <foo\+0xf0> 4d9f0a0e vldrmi s0, \[pc, #56\] ; 00000130 <foo\+0x130>
+000000f4 <foo\+0xf4> 4d9f7a0d vldrmi s14, \[pc, #52\] ; 00000130 <foo\+0x130>
+000000f8 <foo\+0xf8> 4d9fea0c vldrmi s28, \[pc, #48\] ; 00000130 <foo\+0x130>
+000000fc <foo\+0xfc> 4ddffa0b vldrmi s31, \[pc, #44\] ; 00000130 <foo\+0x130>
+00000100 <foo\+0x100> 4d9f0a0b vldrmi s0, \[pc, #44\] ; 00000134 <foo\+0x134>
+00000104 <foo\+0x104> 4d9f7a0a vldrmi s14, \[pc, #40\] ; 00000134 <foo\+0x134>
+00000108 <foo\+0x108> 4d9fea09 vldrmi s28, \[pc, #36\] ; 00000134 <foo\+0x134>
+0000010c <foo\+0x10c> 4ddffa08 vldrmi s31, \[pc, #32\] ; 00000134 <foo\+0x134>
+00000110 <foo\+0x110> 4d9f0a08 vldrmi s0, \[pc, #32\] ; 00000138 <foo\+0x138>
+00000114 <foo\+0x114> 4d9f7a07 vldrmi s14, \[pc, #28\] ; 00000138 <foo\+0x138>
+00000118 <foo\+0x118> 4d9fea06 vldrmi s28, \[pc, #24\] ; 00000138 <foo\+0x138>
+0000011c <foo\+0x11c> 4ddffa05 vldrmi s31, \[pc, #20\] ; 00000138 <foo\+0x138>
+00000120 <foo\+0x120> 4d9f0a05 vldrmi s0, \[pc, #20\] ; 0000013c <foo\+0x13c>
+00000124 <foo\+0x124> 4d9f7a04 vldrmi s14, \[pc, #16\] ; 0000013c <foo\+0x13c>
+00000128 <foo\+0x128> 4d9fea03 vldrmi s28, \[pc, #12\] ; 0000013c <foo\+0x13c>
+0000012c <foo\+0x12c> 4ddffa02 vldrmi s31, \[pc, #8\] ; 0000013c <foo\+0x13c>
+00000130 <foo\+0x130> 00000000 .word 0x00000000
+00000134 <foo\+0x134> 000000ff .word 0x000000ff
+00000138 <foo\+0x138> ffffff00 .word 0xffffff00
+0000013c <foo\+0x13c> 0000fff0 .word 0x0000fff0
+00000140 <foo\+0x140> f2800e30 vmov.i64 d0, #0x0000000000000000
+00000144 <foo\+0x144> f280ee30 vmov.i64 d14, #0x0000000000000000
+00000148 <foo\+0x148> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+0000014c <foo\+0x14c> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+00000150 <foo\+0x150> ed9f0b0a vldr d0, \[pc, #40\] ; 00000180 <foo\+0x180>
+00000154 <foo\+0x154> ed9feb09 vldr d14, \[pc, #36\] ; 00000180 <foo\+0x180>
+00000158 <foo\+0x158> eddfcb08 vldr d28, \[pc, #32\] ; 00000180 <foo\+0x180>
+0000015c <foo\+0x15c> eddffb07 vldr d31, \[pc, #28\] ; 00000180 <foo\+0x180>
+00000160 <foo\+0x160> f3870e3f vmov.i64 d0, #0xffffffffffffffff
+00000164 <foo\+0x164> f387ee3f vmov.i64 d14, #0xffffffffffffffff
+00000168 <foo\+0x168> f3c7ce3f vmov.i64 d28, #0xffffffffffffffff
+0000016c <foo\+0x16c> f3c7fe3f vmov.i64 d31, #0xffffffffffffffff
+00000170 <foo\+0x170> ed9f0b04 vldr d0, \[pc, #16\] ; 00000188 <foo\+0x188>
+00000174 <foo\+0x174> ed9feb03 vldr d14, \[pc, #12\] ; 00000188 <foo\+0x188>
+00000178 <foo\+0x178> eddfcb02 vldr d28, \[pc, #8\] ; 00000188 <foo\+0x188>
+0000017c <foo\+0x17c> eddffb01 vldr d31, \[pc, #4\] ; 00000188 <foo\+0x188>
+00000180 <foo\+0x180> ca000000 .word 0xca000000
+00000184 <foo\+0x184> 00000000 .word 0x00000000
+00000188 <foo\+0x188> 0fff0000 .word 0x0fff0000
+0000018c <foo\+0x18c> 00000000 .word 0x00000000
+00000190 <foo\+0x190> f2800e30 vmov.i64 d0, #0x0000000000000000
+00000194 <foo\+0x194> f280ee30 vmov.i64 d14, #0x0000000000000000
+00000198 <foo\+0x198> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+0000019c <foo\+0x19c> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+000001a0 <foo\+0x1a0> f2800e34 vmov.i64 d0, #0x0000000000ff0000
+000001a4 <foo\+0x1a4> f280ee34 vmov.i64 d14, #0x0000000000ff0000
+000001a8 <foo\+0x1a8> f2c0ce34 vmov.i64 d28, #0x0000000000ff0000
+000001ac <foo\+0x1ac> f2c0fe34 vmov.i64 d31, #0x0000000000ff0000
+000001b0 <foo\+0x1b0> f2800e39 vmov.i64 d0, #0x00000000ff0000ff
+000001b4 <foo\+0x1b4> f280ee39 vmov.i64 d14, #0x00000000ff0000ff
+000001b8 <foo\+0x1b8> f2c0ce39 vmov.i64 d28, #0x00000000ff0000ff
+000001bc <foo\+0x1bc> f2c0fe39 vmov.i64 d31, #0x00000000ff0000ff
+000001c0 <foo\+0x1c0> ed9f0b02 vldr d0, \[pc, #8\] ; 000001d0 <foo\+0x1d0>
+000001c4 <foo\+0x1c4> ed9feb01 vldr d14, \[pc, #4\] ; 000001d0 <foo\+0x1d0>
+000001c8 <foo\+0x1c8> eddfcb00 vldr d28, \[pc\] ; 000001d0 <foo\+0x1d0>
+000001cc <foo\+0x1cc> ed5ffb01 vldr d31, \[pc, #-4\] ; 000001d0 <foo\+0x1d0>
+000001d0 <foo\+0x1d0> 00fff000 .word 0x00fff000
+000001d4 <foo\+0x1d4> 00000000 .word 0x00000000
+000001d8 <foo\+0x1d8> f2800e30 vmov.i64 d0, #0x0000000000000000
+000001dc <foo\+0x1dc> f280ee30 vmov.i64 d14, #0x0000000000000000
+000001e0 <foo\+0x1e0> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+000001e4 <foo\+0x1e4> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+000001e8 <foo\+0x1e8> f2800e32 vmov.i64 d0, #0x000000000000ff00
+000001ec <foo\+0x1ec> f280ee32 vmov.i64 d14, #0x000000000000ff00
+000001f0 <foo\+0x1f0> f2c0ce32 vmov.i64 d28, #0x000000000000ff00
+000001f4 <foo\+0x1f4> f2c0fe32 vmov.i64 d31, #0x000000000000ff00
+000001f8 <foo\+0x1f8> f2800e3d vmov.i64 d0, #0x00000000ffff00ff
+000001fc <foo\+0x1fc> f280ee3d vmov.i64 d14, #0x00000000ffff00ff
+00000200 <foo\+0x200> f2c0ce3d vmov.i64 d28, #0x00000000ffff00ff
+00000204 <foo\+0x204> f2c0fe3d vmov.i64 d31, #0x00000000ffff00ff
+00000208 <foo\+0x208> 0d9f0b02 vldreq d0, \[pc, #8\] ; 00000218 <foo\+0x218>
+0000020c <foo\+0x20c> 0d9feb01 vldreq d14, \[pc, #4\] ; 00000218 <foo\+0x218>
+00000210 <foo\+0x210> 0ddfcb00 vldreq d28, \[pc\] ; 00000218 <foo\+0x218>
+00000214 <foo\+0x214> 0d5ffb01 vldreq d31, \[pc, #-4\] ; 00000218 <foo\+0x218>
+00000218 <foo\+0x218> 000fff00 .word 0x000fff00
+0000021c <foo\+0x21c> 00000000 .word 0x00000000
+00000220 <foo\+0x220> f2800e30 vmov.i64 d0, #0x0000000000000000
+00000224 <foo\+0x224> f280ee30 vmov.i64 d14, #0x0000000000000000
+00000228 <foo\+0x228> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+0000022c <foo\+0x22c> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+00000230 <foo\+0x230> f2800e31 vmov.i64 d0, #0x00000000000000ff
+00000234 <foo\+0x234> f280ee31 vmov.i64 d14, #0x00000000000000ff
+00000238 <foo\+0x238> f2c0ce31 vmov.i64 d28, #0x00000000000000ff
+0000023c <foo\+0x23c> f2c0fe31 vmov.i64 d31, #0x00000000000000ff
+00000240 <foo\+0x240> f2800e3e vmov.i64 d0, #0x00000000ffffff00
+00000244 <foo\+0x244> f280ee3e vmov.i64 d14, #0x00000000ffffff00
+00000248 <foo\+0x248> f2c0ce3e vmov.i64 d28, #0x00000000ffffff00
+0000024c <foo\+0x24c> f2c0fe3e vmov.i64 d31, #0x00000000ffffff00
+00000250 <foo\+0x250> f2800e33 vmov.i64 d0, #0x000000000000ffff
+00000254 <foo\+0x254> f280ee33 vmov.i64 d14, #0x000000000000ffff
+00000258 <foo\+0x258> f2c0ce33 vmov.i64 d28, #0x000000000000ffff
+0000025c <foo\+0x25c> f2c0fe33 vmov.i64 d31, #0x000000000000ffff
+00000260 <foo\+0x260> f2800e30 vmov.i64 d0, #0x0000000000000000
+00000264 <foo\+0x264> f280ee30 vmov.i64 d14, #0x0000000000000000
+00000268 <foo\+0x268> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+0000026c <foo\+0x26c> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+00000270 <foo\+0x270> f3800e30 vmov.i64 d0, #0xff00000000000000
+00000274 <foo\+0x274> f380ee30 vmov.i64 d14, #0xff00000000000000
+00000278 <foo\+0x278> f3c0ce30 vmov.i64 d28, #0xff00000000000000
+0000027c <foo\+0x27c> f3c0fe30 vmov.i64 d31, #0xff00000000000000
+00000280 <foo\+0x280> f3870e3f vmov.i64 d0, #0xffffffffffffffff
+00000284 <foo\+0x284> f387ee3f vmov.i64 d14, #0xffffffffffffffff
+00000288 <foo\+0x288> f3c7ce3f vmov.i64 d28, #0xffffffffffffffff
+0000028c <foo\+0x28c> f3c7fe3f vmov.i64 d31, #0xffffffffffffffff
+00000290 <foo\+0x290> ed9f0b02 vldr d0, \[pc, #8\] ; 000002a0 <foo\+0x2a0>
+00000294 <foo\+0x294> ed9feb01 vldr d14, \[pc, #4\] ; 000002a0 <foo\+0x2a0>
+00000298 <foo\+0x298> eddfcb00 vldr d28, \[pc\] ; 000002a0 <foo\+0x2a0>
+0000029c <foo\+0x29c> ed5ffb01 vldr d31, \[pc, #-4\] ; 000002a0 <foo\+0x2a0>
+000002a0 <foo\+0x2a0> 00000000 .word 0x00000000
+000002a4 <foo\+0x2a4> 0fff0000 .word 0x0fff0000
+000002a8 <foo\+0x2a8> f2800e30 vmov.i64 d0, #0x0000000000000000
+000002ac <foo\+0x2ac> f280ee30 vmov.i64 d14, #0x0000000000000000
+000002b0 <foo\+0x2b0> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+000002b4 <foo\+0x2b4> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+000002b8 <foo\+0x2b8> ed9f0b0a vldr d0, \[pc, #40\] ; 000002e8 <foo\+0x2e8>
+000002bc <foo\+0x2bc> ed9feb09 vldr d14, \[pc, #36\] ; 000002e8 <foo\+0x2e8>
+000002c0 <foo\+0x2c0> eddfcb08 vldr d28, \[pc, #32\] ; 000002e8 <foo\+0x2e8>
+000002c4 <foo\+0x2c4> eddffb07 vldr d31, \[pc, #28\] ; 000002e8 <foo\+0x2e8>
+000002c8 <foo\+0x2c8> ed9f0b08 vldr d0, \[pc, #32\] ; 000002f0 <foo\+0x2f0>
+000002cc <foo\+0x2cc> ed9feb07 vldr d14, \[pc, #28\] ; 000002f0 <foo\+0x2f0>
+000002d0 <foo\+0x2d0> eddfcb06 vldr d28, \[pc, #24\] ; 000002f0 <foo\+0x2f0>
+000002d4 <foo\+0x2d4> eddffb05 vldr d31, \[pc, #20\] ; 000002f0 <foo\+0x2f0>
+000002d8 <foo\+0x2d8> ed9f0b06 vldr d0, \[pc, #24\] ; 000002f8 <foo\+0x2f8>
+000002dc <foo\+0x2dc> ed9feb05 vldr d14, \[pc, #20\] ; 000002f8 <foo\+0x2f8>
+000002e0 <foo\+0x2e0> eddfcb04 vldr d28, \[pc, #16\] ; 000002f8 <foo\+0x2f8>
+000002e4 <foo\+0x2e4> eddffb03 vldr d31, \[pc, #12\] ; 000002f8 <foo\+0x2f8>
+000002e8 <foo\+0x2e8> 00000000 .word 0x00000000
+000002ec <foo\+0x2ec> 000ff000 .word 0x000ff000
+000002f0 <foo\+0x2f0> f0000000 .word 0xf0000000
+000002f4 <foo\+0x2f4> 0ff00fff .word 0x0ff00fff
+000002f8 <foo\+0x2f8> 00000000 .word 0x00000000
+000002fc <foo\+0x2fc> 000fff00 .word 0x000fff00
+00000300 <foo\+0x300> f2800e30 vmov.i64 d0, #0x0000000000000000
+00000304 <foo\+0x304> f280ee30 vmov.i64 d14, #0x0000000000000000
+00000308 <foo\+0x308> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+0000030c <foo\+0x30c> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+00000310 <foo\+0x310> f2820e30 vmov.i64 d0, #0x0000ff0000000000
+00000314 <foo\+0x314> f282ee30 vmov.i64 d14, #0x0000ff0000000000
+00000318 <foo\+0x318> f2c2ce30 vmov.i64 d28, #0x0000ff0000000000
+0000031c <foo\+0x31c> f2c2fe30 vmov.i64 d31, #0x0000ff0000000000
+00000320 <foo\+0x320> f3850e30 vmov.i64 d0, #0xffff00ff00000000
+00000324 <foo\+0x324> f385ee30 vmov.i64 d14, #0xffff00ff00000000
+00000328 <foo\+0x328> f3c5ce30 vmov.i64 d28, #0xffff00ff00000000
+0000032c <foo\+0x32c> f3c5fe30 vmov.i64 d31, #0xffff00ff00000000
+00000330 <foo\+0x330> 0d9f0b02 vldreq d0, \[pc, #8\] ; 00000340 <foo\+0x340>
+00000334 <foo\+0x334> 0d9feb01 vldreq d14, \[pc, #4\] ; 00000340 <foo\+0x340>
+00000338 <foo\+0x338> 0ddfcb00 vldreq d28, \[pc\] ; 00000340 <foo\+0x340>
+0000033c <foo\+0x33c> 0d5ffb01 vldreq d31, \[pc, #-4\] ; 00000340 <foo\+0x340>
+00000340 <foo\+0x340> 00000000 .word 0x00000000
+00000344 <foo\+0x344> 000fff00 .word 0x000fff00
+00000348 <foo\+0x348> f2800e30 vmov.i64 d0, #0x0000000000000000
+0000034c <foo\+0x34c> f280ee30 vmov.i64 d14, #0x0000000000000000
+00000350 <foo\+0x350> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+00000354 <foo\+0x354> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+00000358 <foo\+0x358> f2810e30 vmov.i64 d0, #0x000000ff00000000
+0000035c <foo\+0x35c> f281ee30 vmov.i64 d14, #0x000000ff00000000
+00000360 <foo\+0x360> f2c1ce30 vmov.i64 d28, #0x000000ff00000000
+00000364 <foo\+0x364> f2c1fe30 vmov.i64 d31, #0x000000ff00000000
+00000368 <foo\+0x368> f3860e30 vmov.i64 d0, #0xffffff0000000000
+0000036c <foo\+0x36c> f386ee30 vmov.i64 d14, #0xffffff0000000000
+00000370 <foo\+0x370> f3c6ce30 vmov.i64 d28, #0xffffff0000000000
+00000374 <foo\+0x374> f3c6fe30 vmov.i64 d31, #0xffffff0000000000
+00000378 <foo\+0x378> 4d9f0b02 vldrmi d0, \[pc, #8\] ; 00000388 <foo\+0x388>
+0000037c <foo\+0x37c> 4d9feb01 vldrmi d14, \[pc, #4\] ; 00000388 <foo\+0x388>
+00000380 <foo\+0x380> 4ddfcb00 vldrmi d28, \[pc\] ; 00000388 <foo\+0x388>
+00000384 <foo\+0x384> 4d5ffb01 vldrmi d31, \[pc, #-4\] ; 00000388 <foo\+0x388>
+00000388 <foo\+0x388> 00000000 .word 0x00000000
+0000038c <foo\+0x38c> 0000fff0 .word 0x0000fff0
+00000390 <foo\+0x390> ed9f1b00 vldr d1, \[pc\] ; 00000398 <foo\+0x398>
+ \.\.\.
+0000039c <foo\+0x39c> 0000fff0 .word 0x0000fff0
+000003a0 <foo\+0x3a0> e2810000 add r0, r1, #0
+000003a4 <foo\+0x3a4> ed1f1b01 vldr d1, \[pc, #-4\] ; 000003a8 <foo\+0x3a8>
+000003a8 <foo\+0x3a8> 00000000 .word 0x00000000
+000003ac <foo\+0x3ac> 0000fff0 .word 0x0000fff0
+000003b0 <foo\+0x3b0> ed9f1b10 vldr d1, \[pc, #64\] ; 000003f8 <foo\+0x3f8>
+000003b4 <foo\+0x3b4> ed9f1a11 vldr s2, \[pc, #68\] ; 00000400 <foo\+0x400>
+000003b8 <foo\+0x3b8> ed9f3b12 vldr d3, \[pc, #72\] ; 00000408 <foo\+0x408>
+000003bc <foo\+0x3bc> ed9f2a10 vldr s4, \[pc, #64\] ; 00000404 <foo\+0x404>
+000003c0 <foo\+0x3c0> ed9f5b10 vldr d5, \[pc, #64\] ; 00000408 <foo\+0x408>
+000003c4 <foo\+0x3c4> ed9f6b11 vldr d6, \[pc, #68\] ; 00000410 <foo\+0x410>
+000003c8 <foo\+0x3c8> ed9f7b12 vldr d7, \[pc, #72\] ; 00000418 <foo\+0x418>
+000003cc <foo\+0x3cc> ed9f4a13 vldr s8, \[pc, #76\] ; 00000420 <foo\+0x420>
+000003d0 <foo\+0x3d0> ed9f9b14 vldr d9, \[pc, #80\] ; 00000428 <foo\+0x428>
+000003d4 <foo\+0x3d4> ed9f5a12 vldr s10, \[pc, #72\] ; 00000424 <foo\+0x424>
+000003d8 <foo\+0x3d8> ed9fbb14 vldr d11, \[pc, #80\] ; 00000430 <foo\+0x430>
+000003dc <foo\+0x3dc> ed9f6a15 vldr s12, \[pc, #84\] ; 00000438 <foo\+0x438>
+000003e0 <foo\+0x3e0> eddf6a15 vldr s13, \[pc, #84\] ; 0000043c <foo\+0x43c>
+000003e4 <foo\+0x3e4> ed9f7a06 vldr s14, \[pc, #24\] ; 00000404 <foo\+0x404>
+000003e8 <foo\+0x3e8> eddf7a03 vldr s15, \[pc, #12\] ; 000003fc <foo\+0x3fc>
+000003ec <foo\+0x3ec> eddf0b11 vldr d16, \[pc, #68\] ; 00000438 <foo\+0x438>
+000003f0 <foo\+0x3f0> eddf1b12 vldr d17, \[pc, #72\] ; 00000440 <foo\+0x440>
+ \.\.\.
+000003fc <foo\+0x3fc> 0000fff0 .word 0x0000fff0
+00000400 <foo\+0x400> ff000000 .word 0xff000000
+00000404 <foo\+0x404> ff000001 .word 0xff000001
+00000408 <foo\+0x408> 00000001 .word 0x00000001
+0000040c <foo\+0x40c> 0000fff0 .word 0x0000fff0
+00000410 <foo\+0x410> 00000002 .word 0x00000002
+00000414 <foo\+0x414> 0000fff0 .word 0x0000fff0
+00000418 <foo\+0x418> 00000003 .word 0x00000003
+0000041c <foo\+0x41c> 0000fff0 .word 0x0000fff0
+00000420 <foo\+0x420> ff000002 .word 0xff000002
+00000424 <foo\+0x424> ff000003 .word 0xff000003
+00000428 <foo\+0x428> 00000004 .word 0x00000004
+0000042c <foo\+0x42c> 0000fff0 .word 0x0000fff0
+00000430 <foo\+0x430> 00000005 .word 0x00000005
+00000434 <foo\+0x434> 0000fff0 .word 0x0000fff0
+00000438 <foo\+0x438> ff000004 .word 0xff000004
+0000043c <foo\+0x43c> ff000005 .word 0xff000005
+00000440 <foo\+0x440> 0000fff0 .word 0x0000fff0
+00000444 <foo\+0x444> ff000004 .word 0xff000004
diff --git a/binutils-2.25/gas/testsuite/gas/arm/vldconst.s b/binutils-2.25/gas/testsuite/gas/arm/vldconst.s
new file mode 100644
index 00000000..8bb6ee40
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/vldconst.s
@@ -0,0 +1,146 @@
+@ Test file for ARM/GAS -- vldr reg, =... expressions.
+.fpu neon
+.text
+.align
+foo:
+ # test both low and high index of the
+ # Advanced SIMD and Floating-point reg.
+ .macro vlxr regtype const
+ .irp regindex, 0, 14, 28, 31
+ vldr \regtype\regindex, \const
+ .endr
+ .endm
+
+ .macro vlxreq regtype const
+ .irp regindex, 0, 14, 28, 31
+ vldreq \regtype\regindex, \const
+ .endr
+ .endm
+
+ .macro vlxrmi regtype const
+ .irp regindex, 0, 14, 28, 31
+ vldrmi \regtype\regindex, \const
+ .endr
+ .endm
+
+ vlxr s "=0"
+ vlxr s "=0xff000000"
+ vlxr s "=-1"
+ vlxr s "=0x0fff0000"
+ .pool
+
+ vlxr s "=0"
+ vlxr s "=0x00ff0000"
+ vlxr s "=0xff00ffff"
+ vlxr s "=0x00fff000"
+ .pool
+
+ vlxreq s "=0"
+ vlxreq s "=0x0000ff00"
+ vlxreq s "=0xffff00ff"
+ vlxreq s "=0x000fff00"
+ .pool
+
+ vlxrmi s "=0"
+ vlxrmi s "=0x000000ff"
+ vlxrmi s "=0xffffff00"
+ vlxrmi s "=0x0000fff0"
+ .pool
+
+ vlxr d "=0"
+ vlxr d "=0xca000000"
+ vlxr d "=-1"
+ vlxr d "=0x0fff0000"
+ .pool
+
+ vlxr d "=0"
+ vlxr d "=0x00ff0000"
+ vlxr d "=0xff0000ff"
+ vlxr d "=0x00fff000"
+ .pool
+
+ vlxreq d "=0"
+ vlxreq d "=0x0000ff00"
+ vlxreq d "=0xffff00ff"
+ vlxreq d "=0x000fff00"
+ .pool
+
+ vlxrmi d "=0"
+ vlxrmi d "=0x000000ff"
+ vlxrmi d "=0xffffff00"
+ vlxrmi d "=0x0000ffff"
+ .pool
+
+ vlxr d "=0"
+ vlxr d "=0xff00000000000000"
+ vlxr d "=-1"
+ vlxr d "=0x0fff000000000000"
+ .pool
+
+ vlxr d "=0"
+ vlxr d "=0x00ff00000000000"
+ vlxr d "=0xff00ffff0000000"
+ vlxr d "=0x00fff0000000000"
+ .pool
+
+ vlxreq d "=0"
+ vlxreq d "=0x0000ff0000000000"
+ vlxreq d "=0xffff00ff00000000"
+ vlxreq d "=0x000fff0000000000"
+ .pool
+
+ vlxrmi d "=0"
+ vlxrmi d "=0x000000ff00000000"
+ vlxrmi d "=0xffffff0000000000"
+ vlxrmi d "=0x0000fff000000000"
+ .pool
+
+ # pool should be aligned to 8-byte.
+ .p2align 3
+ vldr d1, =0x0000fff000000000
+ .pool
+
+ # no error when code is align already.
+ .p2align 3
+ add r0, r1, #0
+ vldr d1, =0x0000fff000000000
+ .pool
+
+ .p2align 3
+ vldr d1, =0x0000fff000000000
+ vldr s2, =0xff000000
+ # padding A
+ vldr d3, =0x0000fff000000001
+ # reuse padding slot A
+ vldr s4, =0xff000001
+ # reuse d3
+ vldr d5, =0x0000fff000000001
+ # new 8-byte entry
+ vldr d6, =0x0000fff000000002
+ # new 8-byte entry
+ vldr d7, =0x0000fff000000003
+ # new 4-byte entry
+ vldr s8, =0xff000002
+ # padding B
+ vldr d9, =0x0000fff000000004
+ # reuse padding slot B
+ vldr s10, =0xff000003
+ # new 8-byte entry
+ vldr d11, =0x0000fff000000005
+ # new 4 entry
+ vldr s12, =0xff000004
+ # new 4 entry
+ vldr s13, =0xff000005
+ # reuse value of s4 in pool
+ vldr s14, =0xff000001
+ # reuse high part of d1 in pool
+ vldr s15, =0x0000fff0
+ # 8-byte entry reuse two 4-byte entries.
+ # this reuse should only happen for
+ # little-endian
+ # d16 reuse s12, s13
+ vldr d16, =0xff000005ff000004
+ # d17 should not reuse high part of d11 and s12.
+ # because the it's align 8-byte aligned.
+ vldr d17, =0xff0000040000fff0
+ .pool
diff --git a/binutils-2.25/gas/testsuite/gas/arm/vldconst_be.d b/binutils-2.25/gas/testsuite/gas/arm/vldconst_be.d
new file mode 100644
index 00000000..cf3dbf92
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/arm/vldconst_be.d
@@ -0,0 +1,285 @@
+#objdump: -dr --prefix-addresses --show-raw-insn
+#name: ARM vldr with immediate constant (Big Endian)
+#as: -mcpu=arm7m -mbig-endian
+#skip: *-*-*coff *-*-pe *-*-wince *-*-*aout* *-*-netbsd
+#source: vldconst.s
+
+.*: +file format .*arm.*
+
+Disassembly of section .text:
+00000000 <foo> ed9f0a0e vldr s0, \[pc, #56\] ; 00000040 <foo\+0x40>
+00000004 <foo\+0x4> ed9f7a0d vldr s14, \[pc, #52\] ; 00000040 <foo\+0x40>
+00000008 <foo\+0x8> ed9fea0c vldr s28, \[pc, #48\] ; 00000040 <foo\+0x40>
+0000000c <foo\+0xc> eddffa0b vldr s31, \[pc, #44\] ; 00000040 <foo\+0x40>
+00000010 <foo\+0x10> ed9f0a0b vldr s0, \[pc, #44\] ; 00000044 <foo\+0x44>
+00000014 <foo\+0x14> ed9f7a0a vldr s14, \[pc, #40\] ; 00000044 <foo\+0x44>
+00000018 <foo\+0x18> ed9fea09 vldr s28, \[pc, #36\] ; 00000044 <foo\+0x44>
+0000001c <foo\+0x1c> eddffa08 vldr s31, \[pc, #32\] ; 00000044 <foo\+0x44>
+00000020 <foo\+0x20> ed9f0a08 vldr s0, \[pc, #32\] ; 00000048 <foo\+0x48>
+00000024 <foo\+0x24> ed9f7a07 vldr s14, \[pc, #28\] ; 00000048 <foo\+0x48>
+00000028 <foo\+0x28> ed9fea06 vldr s28, \[pc, #24\] ; 00000048 <foo\+0x48>
+0000002c <foo\+0x2c> eddffa05 vldr s31, \[pc, #20\] ; 00000048 <foo\+0x48>
+00000030 <foo\+0x30> ed9f0a05 vldr s0, \[pc, #20\] ; 0000004c <foo\+0x4c>
+00000034 <foo\+0x34> ed9f7a04 vldr s14, \[pc, #16\] ; 0000004c <foo\+0x4c>
+00000038 <foo\+0x38> ed9fea03 vldr s28, \[pc, #12\] ; 0000004c <foo\+0x4c>
+0000003c <foo\+0x3c> eddffa02 vldr s31, \[pc, #8\] ; 0000004c <foo\+0x4c>
+00000040 <foo\+0x40> 00000000 .word 0x00000000
+00000044 <foo\+0x44> ff000000 .word 0xff000000
+00000048 <foo\+0x48> ffffffff .word 0xffffffff
+0000004c <foo\+0x4c> 0fff0000 .word 0x0fff0000
+00000050 <foo\+0x50> ed9f0a0e vldr s0, \[pc, #56\] ; 00000090 <foo\+0x90>
+00000054 <foo\+0x54> ed9f7a0d vldr s14, \[pc, #52\] ; 00000090 <foo\+0x90>
+00000058 <foo\+0x58> ed9fea0c vldr s28, \[pc, #48\] ; 00000090 <foo\+0x90>
+0000005c <foo\+0x5c> eddffa0b vldr s31, \[pc, #44\] ; 00000090 <foo\+0x90>
+00000060 <foo\+0x60> ed9f0a0b vldr s0, \[pc, #44\] ; 00000094 <foo\+0x94>
+00000064 <foo\+0x64> ed9f7a0a vldr s14, \[pc, #40\] ; 00000094 <foo\+0x94>
+00000068 <foo\+0x68> ed9fea09 vldr s28, \[pc, #36\] ; 00000094 <foo\+0x94>
+0000006c <foo\+0x6c> eddffa08 vldr s31, \[pc, #32\] ; 00000094 <foo\+0x94>
+00000070 <foo\+0x70> ed9f0a08 vldr s0, \[pc, #32\] ; 00000098 <foo\+0x98>
+00000074 <foo\+0x74> ed9f7a07 vldr s14, \[pc, #28\] ; 00000098 <foo\+0x98>
+00000078 <foo\+0x78> ed9fea06 vldr s28, \[pc, #24\] ; 00000098 <foo\+0x98>
+0000007c <foo\+0x7c> eddffa05 vldr s31, \[pc, #20\] ; 00000098 <foo\+0x98>
+00000080 <foo\+0x80> ed9f0a05 vldr s0, \[pc, #20\] ; 0000009c <foo\+0x9c>
+00000084 <foo\+0x84> ed9f7a04 vldr s14, \[pc, #16\] ; 0000009c <foo\+0x9c>
+00000088 <foo\+0x88> ed9fea03 vldr s28, \[pc, #12\] ; 0000009c <foo\+0x9c>
+0000008c <foo\+0x8c> eddffa02 vldr s31, \[pc, #8\] ; 0000009c <foo\+0x9c>
+00000090 <foo\+0x90> 00000000 .word 0x00000000
+00000094 <foo\+0x94> 00ff0000 .word 0x00ff0000
+00000098 <foo\+0x98> ff00ffff .word 0xff00ffff
+0000009c <foo\+0x9c> 00fff000 .word 0x00fff000
+000000a0 <foo\+0xa0> 0d9f0a0e vldreq s0, \[pc, #56\] ; 000000e0 <foo\+0xe0>
+000000a4 <foo\+0xa4> 0d9f7a0d vldreq s14, \[pc, #52\] ; 000000e0 <foo\+0xe0>
+000000a8 <foo\+0xa8> 0d9fea0c vldreq s28, \[pc, #48\] ; 000000e0 <foo\+0xe0>
+000000ac <foo\+0xac> 0ddffa0b vldreq s31, \[pc, #44\] ; 000000e0 <foo\+0xe0>
+000000b0 <foo\+0xb0> 0d9f0a0b vldreq s0, \[pc, #44\] ; 000000e4 <foo\+0xe4>
+000000b4 <foo\+0xb4> 0d9f7a0a vldreq s14, \[pc, #40\] ; 000000e4 <foo\+0xe4>
+000000b8 <foo\+0xb8> 0d9fea09 vldreq s28, \[pc, #36\] ; 000000e4 <foo\+0xe4>
+000000bc <foo\+0xbc> 0ddffa08 vldreq s31, \[pc, #32\] ; 000000e4 <foo\+0xe4>
+000000c0 <foo\+0xc0> 0d9f0a08 vldreq s0, \[pc, #32\] ; 000000e8 <foo\+0xe8>
+000000c4 <foo\+0xc4> 0d9f7a07 vldreq s14, \[pc, #28\] ; 000000e8 <foo\+0xe8>
+000000c8 <foo\+0xc8> 0d9fea06 vldreq s28, \[pc, #24\] ; 000000e8 <foo\+0xe8>
+000000cc <foo\+0xcc> 0ddffa05 vldreq s31, \[pc, #20\] ; 000000e8 <foo\+0xe8>
+000000d0 <foo\+0xd0> 0d9f0a05 vldreq s0, \[pc, #20\] ; 000000ec <foo\+0xec>
+000000d4 <foo\+0xd4> 0d9f7a04 vldreq s14, \[pc, #16\] ; 000000ec <foo\+0xec>
+000000d8 <foo\+0xd8> 0d9fea03 vldreq s28, \[pc, #12\] ; 000000ec <foo\+0xec>
+000000dc <foo\+0xdc> 0ddffa02 vldreq s31, \[pc, #8\] ; 000000ec <foo\+0xec>
+000000e0 <foo\+0xe0> 00000000 .word 0x00000000
+000000e4 <foo\+0xe4> 0000ff00 .word 0x0000ff00
+000000e8 <foo\+0xe8> ffff00ff .word 0xffff00ff
+000000ec <foo\+0xec> 000fff00 .word 0x000fff00
+000000f0 <foo\+0xf0> 4d9f0a0e vldrmi s0, \[pc, #56\] ; 00000130 <foo\+0x130>
+000000f4 <foo\+0xf4> 4d9f7a0d vldrmi s14, \[pc, #52\] ; 00000130 <foo\+0x130>
+000000f8 <foo\+0xf8> 4d9fea0c vldrmi s28, \[pc, #48\] ; 00000130 <foo\+0x130>
+000000fc <foo\+0xfc> 4ddffa0b vldrmi s31, \[pc, #44\] ; 00000130 <foo\+0x130>
+00000100 <foo\+0x100> 4d9f0a0b vldrmi s0, \[pc, #44\] ; 00000134 <foo\+0x134>
+00000104 <foo\+0x104> 4d9f7a0a vldrmi s14, \[pc, #40\] ; 00000134 <foo\+0x134>
+00000108 <foo\+0x108> 4d9fea09 vldrmi s28, \[pc, #36\] ; 00000134 <foo\+0x134>
+0000010c <foo\+0x10c> 4ddffa08 vldrmi s31, \[pc, #32\] ; 00000134 <foo\+0x134>
+00000110 <foo\+0x110> 4d9f0a08 vldrmi s0, \[pc, #32\] ; 00000138 <foo\+0x138>
+00000114 <foo\+0x114> 4d9f7a07 vldrmi s14, \[pc, #28\] ; 00000138 <foo\+0x138>
+00000118 <foo\+0x118> 4d9fea06 vldrmi s28, \[pc, #24\] ; 00000138 <foo\+0x138>
+0000011c <foo\+0x11c> 4ddffa05 vldrmi s31, \[pc, #20\] ; 00000138 <foo\+0x138>
+00000120 <foo\+0x120> 4d9f0a05 vldrmi s0, \[pc, #20\] ; 0000013c <foo\+0x13c>
+00000124 <foo\+0x124> 4d9f7a04 vldrmi s14, \[pc, #16\] ; 0000013c <foo\+0x13c>
+00000128 <foo\+0x128> 4d9fea03 vldrmi s28, \[pc, #12\] ; 0000013c <foo\+0x13c>
+0000012c <foo\+0x12c> 4ddffa02 vldrmi s31, \[pc, #8\] ; 0000013c <foo\+0x13c>
+00000130 <foo\+0x130> 00000000 .word 0x00000000
+00000134 <foo\+0x134> 000000ff .word 0x000000ff
+00000138 <foo\+0x138> ffffff00 .word 0xffffff00
+0000013c <foo\+0x13c> 0000fff0 .word 0x0000fff0
+00000140 <foo\+0x140> f2800e30 vmov.i64 d0, #0x0000000000000000
+00000144 <foo\+0x144> f280ee30 vmov.i64 d14, #0x0000000000000000
+00000148 <foo\+0x148> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+0000014c <foo\+0x14c> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+00000150 <foo\+0x150> ed9f0b0a vldr d0, \[pc, #40\] ; 00000180 <foo\+0x180>
+00000154 <foo\+0x154> ed9feb09 vldr d14, \[pc, #36\] ; 00000180 <foo\+0x180>
+00000158 <foo\+0x158> eddfcb08 vldr d28, \[pc, #32\] ; 00000180 <foo\+0x180>
+0000015c <foo\+0x15c> eddffb07 vldr d31, \[pc, #28\] ; 00000180 <foo\+0x180>
+00000160 <foo\+0x160> f3870e3f vmov.i64 d0, #0xffffffffffffffff
+00000164 <foo\+0x164> f387ee3f vmov.i64 d14, #0xffffffffffffffff
+00000168 <foo\+0x168> f3c7ce3f vmov.i64 d28, #0xffffffffffffffff
+0000016c <foo\+0x16c> f3c7fe3f vmov.i64 d31, #0xffffffffffffffff
+00000170 <foo\+0x170> ed9f0b04 vldr d0, \[pc, #16\] ; 00000188 <foo\+0x188>
+00000174 <foo\+0x174> ed9feb03 vldr d14, \[pc, #12\] ; 00000188 <foo\+0x188>
+00000178 <foo\+0x178> eddfcb02 vldr d28, \[pc, #8\] ; 00000188 <foo\+0x188>
+0000017c <foo\+0x17c> eddffb01 vldr d31, \[pc, #4\] ; 00000188 <foo\+0x188>
+00000180 <foo\+0x180> 00000000 .word 0x00000000
+00000184 <foo\+0x184> ca000000 .word 0xca000000
+00000188 <foo\+0x188> 00000000 .word 0x00000000
+0000018c <foo\+0x18c> 0fff0000 .word 0x0fff0000
+00000190 <foo\+0x190> f2800e30 vmov.i64 d0, #0x0000000000000000
+00000194 <foo\+0x194> f280ee30 vmov.i64 d14, #0x0000000000000000
+00000198 <foo\+0x198> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+0000019c <foo\+0x19c> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+000001a0 <foo\+0x1a0> f2800e34 vmov.i64 d0, #0x0000000000ff0000
+000001a4 <foo\+0x1a4> f280ee34 vmov.i64 d14, #0x0000000000ff0000
+000001a8 <foo\+0x1a8> f2c0ce34 vmov.i64 d28, #0x0000000000ff0000
+000001ac <foo\+0x1ac> f2c0fe34 vmov.i64 d31, #0x0000000000ff0000
+000001b0 <foo\+0x1b0> f2800e39 vmov.i64 d0, #0x00000000ff0000ff
+000001b4 <foo\+0x1b4> f280ee39 vmov.i64 d14, #0x00000000ff0000ff
+000001b8 <foo\+0x1b8> f2c0ce39 vmov.i64 d28, #0x00000000ff0000ff
+000001bc <foo\+0x1bc> f2c0fe39 vmov.i64 d31, #0x00000000ff0000ff
+000001c0 <foo\+0x1c0> ed9f0b02 vldr d0, \[pc, #8\] ; 000001d0 <foo\+0x1d0>
+000001c4 <foo\+0x1c4> ed9feb01 vldr d14, \[pc, #4\] ; 000001d0 <foo\+0x1d0>
+000001c8 <foo\+0x1c8> eddfcb00 vldr d28, \[pc\] ; 000001d0 <foo\+0x1d0>
+000001cc <foo\+0x1cc> ed5ffb01 vldr d31, \[pc, #-4\] ; 000001d0 <foo\+0x1d0>
+000001d0 <foo\+0x1d0> 00000000 .word 0x00000000
+000001d4 <foo\+0x1d4> 00fff000 .word 0x00fff000
+000001d8 <foo\+0x1d8> f2800e30 vmov.i64 d0, #0x0000000000000000
+000001dc <foo\+0x1dc> f280ee30 vmov.i64 d14, #0x0000000000000000
+000001e0 <foo\+0x1e0> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+000001e4 <foo\+0x1e4> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+000001e8 <foo\+0x1e8> f2800e32 vmov.i64 d0, #0x000000000000ff00
+000001ec <foo\+0x1ec> f280ee32 vmov.i64 d14, #0x000000000000ff00
+000001f0 <foo\+0x1f0> f2c0ce32 vmov.i64 d28, #0x000000000000ff00
+000001f4 <foo\+0x1f4> f2c0fe32 vmov.i64 d31, #0x000000000000ff00
+000001f8 <foo\+0x1f8> f2800e3d vmov.i64 d0, #0x00000000ffff00ff
+000001fc <foo\+0x1fc> f280ee3d vmov.i64 d14, #0x00000000ffff00ff
+00000200 <foo\+0x200> f2c0ce3d vmov.i64 d28, #0x00000000ffff00ff
+00000204 <foo\+0x204> f2c0fe3d vmov.i64 d31, #0x00000000ffff00ff
+00000208 <foo\+0x208> 0d9f0b02 vldreq d0, \[pc, #8\] ; 00000218 <foo\+0x218>
+0000020c <foo\+0x20c> 0d9feb01 vldreq d14, \[pc, #4\] ; 00000218 <foo\+0x218>
+00000210 <foo\+0x210> 0ddfcb00 vldreq d28, \[pc\] ; 00000218 <foo\+0x218>
+00000214 <foo\+0x214> 0d5ffb01 vldreq d31, \[pc, #-4\] ; 00000218 <foo\+0x218>
+00000218 <foo\+0x218> 00000000 .word 0x00000000
+0000021c <foo\+0x21c> 000fff00 .word 0x000fff00
+00000220 <foo\+0x220> f2800e30 vmov.i64 d0, #0x0000000000000000
+00000224 <foo\+0x224> f280ee30 vmov.i64 d14, #0x0000000000000000
+00000228 <foo\+0x228> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+0000022c <foo\+0x22c> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+00000230 <foo\+0x230> f2800e31 vmov.i64 d0, #0x00000000000000ff
+00000234 <foo\+0x234> f280ee31 vmov.i64 d14, #0x00000000000000ff
+00000238 <foo\+0x238> f2c0ce31 vmov.i64 d28, #0x00000000000000ff
+0000023c <foo\+0x23c> f2c0fe31 vmov.i64 d31, #0x00000000000000ff
+00000240 <foo\+0x240> f2800e3e vmov.i64 d0, #0x00000000ffffff00
+00000244 <foo\+0x244> f280ee3e vmov.i64 d14, #0x00000000ffffff00
+00000248 <foo\+0x248> f2c0ce3e vmov.i64 d28, #0x00000000ffffff00
+0000024c <foo\+0x24c> f2c0fe3e vmov.i64 d31, #0x00000000ffffff00
+00000250 <foo\+0x250> f2800e33 vmov.i64 d0, #0x000000000000ffff
+00000254 <foo\+0x254> f280ee33 vmov.i64 d14, #0x000000000000ffff
+00000258 <foo\+0x258> f2c0ce33 vmov.i64 d28, #0x000000000000ffff
+0000025c <foo\+0x25c> f2c0fe33 vmov.i64 d31, #0x000000000000ffff
+00000260 <foo\+0x260> f2800e30 vmov.i64 d0, #0x0000000000000000
+00000264 <foo\+0x264> f280ee30 vmov.i64 d14, #0x0000000000000000
+00000268 <foo\+0x268> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+0000026c <foo\+0x26c> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+00000270 <foo\+0x270> f3800e30 vmov.i64 d0, #0xff00000000000000
+00000274 <foo\+0x274> f380ee30 vmov.i64 d14, #0xff00000000000000
+00000278 <foo\+0x278> f3c0ce30 vmov.i64 d28, #0xff00000000000000
+0000027c <foo\+0x27c> f3c0fe30 vmov.i64 d31, #0xff00000000000000
+00000280 <foo\+0x280> f3870e3f vmov.i64 d0, #0xffffffffffffffff
+00000284 <foo\+0x284> f387ee3f vmov.i64 d14, #0xffffffffffffffff
+00000288 <foo\+0x288> f3c7ce3f vmov.i64 d28, #0xffffffffffffffff
+0000028c <foo\+0x28c> f3c7fe3f vmov.i64 d31, #0xffffffffffffffff
+00000290 <foo\+0x290> ed9f0b02 vldr d0, \[pc, #8\] ; 000002a0 <foo\+0x2a0>
+00000294 <foo\+0x294> ed9feb01 vldr d14, \[pc, #4\] ; 000002a0 <foo\+0x2a0>
+00000298 <foo\+0x298> eddfcb00 vldr d28, \[pc\] ; 000002a0 <foo\+0x2a0>
+0000029c <foo\+0x29c> ed5ffb01 vldr d31, \[pc, #-4\] ; 000002a0 <foo\+0x2a0>
+000002a0 <foo\+0x2a0> 0fff0000 .word 0x0fff0000
+000002a4 <foo\+0x2a4> 00000000 .word 0x00000000
+000002a8 <foo\+0x2a8> f2800e30 vmov.i64 d0, #0x0000000000000000
+000002ac <foo\+0x2ac> f280ee30 vmov.i64 d14, #0x0000000000000000
+000002b0 <foo\+0x2b0> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+000002b4 <foo\+0x2b4> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+000002b8 <foo\+0x2b8> ed9f0b0a vldr d0, \[pc, #40\] ; 000002e8 <foo\+0x2e8>
+000002bc <foo\+0x2bc> ed9feb09 vldr d14, \[pc, #36\] ; 000002e8 <foo\+0x2e8>
+000002c0 <foo\+0x2c0> eddfcb08 vldr d28, \[pc, #32\] ; 000002e8 <foo\+0x2e8>
+000002c4 <foo\+0x2c4> eddffb07 vldr d31, \[pc, #28\] ; 000002e8 <foo\+0x2e8>
+000002c8 <foo\+0x2c8> ed9f0b08 vldr d0, \[pc, #32\] ; 000002f0 <foo\+0x2f0>
+000002cc <foo\+0x2cc> ed9feb07 vldr d14, \[pc, #28\] ; 000002f0 <foo\+0x2f0>
+000002d0 <foo\+0x2d0> eddfcb06 vldr d28, \[pc, #24\] ; 000002f0 <foo\+0x2f0>
+000002d4 <foo\+0x2d4> eddffb05 vldr d31, \[pc, #20\] ; 000002f0 <foo\+0x2f0>
+000002d8 <foo\+0x2d8> ed9f0b06 vldr d0, \[pc, #24\] ; 000002f8 <foo\+0x2f8>
+000002dc <foo\+0x2dc> ed9feb05 vldr d14, \[pc, #20\] ; 000002f8 <foo\+0x2f8>
+000002e0 <foo\+0x2e0> eddfcb04 vldr d28, \[pc, #16\] ; 000002f8 <foo\+0x2f8>
+000002e4 <foo\+0x2e4> eddffb03 vldr d31, \[pc, #12\] ; 000002f8 <foo\+0x2f8>
+000002e8 <foo\+0x2e8> 000ff000 .word 0x000ff000
+000002ec <foo\+0x2ec> 00000000 .word 0x00000000
+000002f0 <foo\+0x2f0> 0ff00fff .word 0x0ff00fff
+000002f4 <foo\+0x2f4> f0000000 .word 0xf0000000
+000002f8 <foo\+0x2f8> 000fff00 .word 0x000fff00
+000002fc <foo\+0x2fc> 00000000 .word 0x00000000
+00000300 <foo\+0x300> f2800e30 vmov.i64 d0, #0x0000000000000000
+00000304 <foo\+0x304> f280ee30 vmov.i64 d14, #0x0000000000000000
+00000308 <foo\+0x308> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+0000030c <foo\+0x30c> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+00000310 <foo\+0x310> f2820e30 vmov.i64 d0, #0x0000ff0000000000
+00000314 <foo\+0x314> f282ee30 vmov.i64 d14, #0x0000ff0000000000
+00000318 <foo\+0x318> f2c2ce30 vmov.i64 d28, #0x0000ff0000000000
+0000031c <foo\+0x31c> f2c2fe30 vmov.i64 d31, #0x0000ff0000000000
+00000320 <foo\+0x320> f3850e30 vmov.i64 d0, #0xffff00ff00000000
+00000324 <foo\+0x324> f385ee30 vmov.i64 d14, #0xffff00ff00000000
+00000328 <foo\+0x328> f3c5ce30 vmov.i64 d28, #0xffff00ff00000000
+0000032c <foo\+0x32c> f3c5fe30 vmov.i64 d31, #0xffff00ff00000000
+00000330 <foo\+0x330> 0d9f0b02 vldreq d0, \[pc, #8\] ; 00000340 <foo\+0x340>
+00000334 <foo\+0x334> 0d9feb01 vldreq d14, \[pc, #4\] ; 00000340 <foo\+0x340>
+00000338 <foo\+0x338> 0ddfcb00 vldreq d28, \[pc\] ; 00000340 <foo\+0x340>
+0000033c <foo\+0x33c> 0d5ffb01 vldreq d31, \[pc, #-4\] ; 00000340 <foo\+0x340>
+00000340 <foo\+0x340> 000fff00 .word 0x000fff00
+00000344 <foo\+0x344> 00000000 .word 0x00000000
+00000348 <foo\+0x348> f2800e30 vmov.i64 d0, #0x0000000000000000
+0000034c <foo\+0x34c> f280ee30 vmov.i64 d14, #0x0000000000000000
+00000350 <foo\+0x350> f2c0ce30 vmov.i64 d28, #0x0000000000000000
+00000354 <foo\+0x354> f2c0fe30 vmov.i64 d31, #0x0000000000000000
+00000358 <foo\+0x358> f2810e30 vmov.i64 d0, #0x000000ff00000000
+0000035c <foo\+0x35c> f281ee30 vmov.i64 d14, #0x000000ff00000000
+00000360 <foo\+0x360> f2c1ce30 vmov.i64 d28, #0x000000ff00000000
+00000364 <foo\+0x364> f2c1fe30 vmov.i64 d31, #0x000000ff00000000
+00000368 <foo\+0x368> f3860e30 vmov.i64 d0, #0xffffff0000000000
+0000036c <foo\+0x36c> f386ee30 vmov.i64 d14, #0xffffff0000000000
+00000370 <foo\+0x370> f3c6ce30 vmov.i64 d28, #0xffffff0000000000
+00000374 <foo\+0x374> f3c6fe30 vmov.i64 d31, #0xffffff0000000000
+00000378 <foo\+0x378> 4d9f0b02 vldrmi d0, \[pc, #8\] ; 00000388 <foo\+0x388>
+0000037c <foo\+0x37c> 4d9feb01 vldrmi d14, \[pc, #4\] ; 00000388 <foo\+0x388>
+00000380 <foo\+0x380> 4ddfcb00 vldrmi d28, \[pc\] ; 00000388 <foo\+0x388>
+00000384 <foo\+0x384> 4d5ffb01 vldrmi d31, \[pc, #-4\] ; 00000388 <foo\+0x388>
+00000388 <foo\+0x388> 0000fff0 .word 0x0000fff0
+0000038c <foo\+0x38c> 00000000 .word 0x00000000
+00000390 <foo\+0x390> ed9f1b00 vldr d1, \[pc\] ; 00000398 <foo\+0x398>
+00000394 <foo\+0x394> 00000000 andeq r0, r0, r0
+00000398 <foo\+0x398> 0000fff0 .word 0x0000fff0
+0000039c <foo\+0x39c> 00000000 .word 0x00000000
+000003a0 <foo\+0x3a0> e2810000 add r0, r1, #0
+000003a4 <foo\+0x3a4> ed1f1b01 vldr d1, \[pc, #-4\] ; 000003a8 <foo\+0x3a8>
+000003a8 <foo\+0x3a8> 0000fff0 .word 0x0000fff0
+000003ac <foo\+0x3ac> 00000000 .word 0x00000000
+000003b0 <foo\+0x3b0> ed9f1b10 vldr d1, \[pc, #64\] ; 000003f8 <foo\+0x3f8>
+000003b4 <foo\+0x3b4> ed9f1a11 vldr s2, \[pc, #68\] ; 00000400 <foo\+0x400>
+000003b8 <foo\+0x3b8> ed9f3b12 vldr d3, \[pc, #72\] ; 00000408 <foo\+0x408>
+000003bc <foo\+0x3bc> ed9f2a10 vldr s4, \[pc, #64\] ; 00000404 <foo\+0x404>
+000003c0 <foo\+0x3c0> ed9f5b10 vldr d5, \[pc, #64\] ; 00000408 <foo\+0x408>
+000003c4 <foo\+0x3c4> ed9f6b11 vldr d6, \[pc, #68\] ; 00000410 <foo\+0x410>
+000003c8 <foo\+0x3c8> ed9f7b12 vldr d7, \[pc, #72\] ; 00000418 <foo\+0x418>
+000003cc <foo\+0x3cc> ed9f4a13 vldr s8, \[pc, #76\] ; 00000420 <foo\+0x420>
+000003d0 <foo\+0x3d0> ed9f9b14 vldr d9, \[pc, #80\] ; 00000428 <foo\+0x428>
+000003d4 <foo\+0x3d4> ed9f5a12 vldr s10, \[pc, #72\] ; 00000424 <foo\+0x424>
+000003d8 <foo\+0x3d8> ed9fbb14 vldr d11, \[pc, #80\] ; 00000430 <foo\+0x430>
+000003dc <foo\+0x3dc> ed9f6a15 vldr s12, \[pc, #84\] ; 00000438 <foo\+0x438>
+000003e0 <foo\+0x3e0> eddf6a15 vldr s13, \[pc, #84\] ; 0000043c <foo\+0x43c>
+000003e4 <foo\+0x3e4> ed9f7a06 vldr s14, \[pc, #24\] ; 00000404 <foo\+0x404>
+000003e8 <foo\+0x3e8> eddf7a02 vldr s15, \[pc, #8\] ; 000003f8 <foo\+0x3f8>
+000003ec <foo\+0x3ec> eddf0b13 vldr d16, \[pc, #76\] ; 00000440 <foo\+0x440>
+000003f0 <foo\+0x3f0> eddf1b14 vldr d17, \[pc, #80\] ; 00000448 <foo\+0x448>
+000003f4 <foo\+0x3f4> 00000000 andeq r0, r0, r0
+000003f8 <foo\+0x3f8> 0000fff0 .word 0x0000fff0
+000003fc <foo\+0x3fc> 00000000 .word 0x00000000
+00000400 <foo\+0x400> ff000000 .word 0xff000000
+00000404 <foo\+0x404> ff000001 .word 0xff000001
+00000408 <foo\+0x408> 0000fff0 .word 0x0000fff0
+0000040c <foo\+0x40c> 00000001 .word 0x00000001
+00000410 <foo\+0x410> 0000fff0 .word 0x0000fff0
+00000414 <foo\+0x414> 00000002 .word 0x00000002
+00000418 <foo\+0x418> 0000fff0 .word 0x0000fff0
+0000041c <foo\+0x41c> 00000003 .word 0x00000003
+00000420 <foo\+0x420> ff000002 .word 0xff000002
+00000424 <foo\+0x424> ff000003 .word 0xff000003
+00000428 <foo\+0x428> 0000fff0 .word 0x0000fff0
+0000042c <foo\+0x42c> 00000004 .word 0x00000004
+00000430 <foo\+0x430> 0000fff0 .word 0x0000fff0
+00000434 <foo\+0x434> 00000005 .word 0x00000005
+00000438 <foo\+0x438> ff000004 .word 0xff000004
+0000043c <foo\+0x43c> ff000005 .word 0xff000005
+00000440 <foo\+0x440> ff000005 .word 0xff000005
+00000444 <foo\+0x444> ff000004 .word 0xff000004
+00000448 <foo\+0x448> ff000004 .word 0xff000004
+0000044c <foo\+0x44c> 0000fff0 .word 0x0000fff0