Add support for converting VLDR <reg>,=<constant> to a VMOV instruction when appropriate.
authorAlessandro Marzocchi <alessandro.marzocchi@gmail.com>
Wed, 17 Jun 2015 11:56:17 +0000 (12:56 +0100)
committerNick Clifton <nickc@redhat.com>
Wed, 17 Jun 2015 11:56:17 +0000 (12:56 +0100)
commitba592044bc04610d6fa14d0a95931bac303ace37
treee27d11dea0199e1971007a285fdae37e35289f33
parentfc2484855563d0cd3e43b9f2d937481b5f5e4a7b
Add support for converting VLDR <reg>,=<constant> to a VMOV instruction when appropriate.

PR gas/18500
gas * config/tc-arm.c (is_double_a_single): New function.
(double_to_single): New function.
(move_or_literal_pool): Add support for converting VLDR to VMOV.

tests * gas/arm/vfpv2-ldr_immediate.s: New test case.
* gas/arm/vfpv2-ldr_immediate.d: Expected disassembly.
* gas/arm/vfpv3-ldr_immediate.s: New test case.
* gas/arm/vfpv3-ldr_immediate.d: Expected disassembly.
* gas/arm/vfpv3xd-ldr_immediate.s: New test case.
* gas/arm/vfpv3xd-ldr_immediate.d: Expected disassembly.
gas/ChangeLog
gas/config/tc-arm.c
gas/testsuite/ChangeLog
gas/testsuite/gas/arm/vfpv2-ldr_immediate.d [new file with mode: 0644]
gas/testsuite/gas/arm/vfpv2-ldr_immediate.s [new file with mode: 0644]
gas/testsuite/gas/arm/vfpv3-ldr_immediate.d [new file with mode: 0644]
gas/testsuite/gas/arm/vfpv3-ldr_immediate.s [new file with mode: 0644]
gas/testsuite/gas/arm/vfpv3xd-ldr_immediate.d [new file with mode: 0644]
gas/testsuite/gas/arm/vfpv3xd-ldr_immediate.s [new file with mode: 0644]
gas/write.c