[PATCH][ARM][GAS] Fix internal error on badly shaped VMOV

Kyrylo Tkachov kyrylo.tkachov@arm.com
Wed Feb 13 11:51:00 GMT 2013


Hi all,
This patch fixes an internal error that gas throws when dealing with a
misformed VMOV instruction of the form:
vmov    q0, d0.
Internally, the function neon_select_shape recognises that the instruction
is misformed and sets the error message, but the caller (do_neon_mov)
takes the (NS_NULL) result, fails to recognise it and aborts (with an
internal error message). This patch catches the case where neon_select_shape
returns NS_NULL and doesn't fall-through to abort.

A new testcase is added to make sure that the proper error message is
emitted.
No regressions for check-gas.

Ok for trunk?

Thanks,
Kyrill

gas/ChangeLog

2013-02-13  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

        * config/tc-arm.c (do_neon_mov): Break on NS_NULL.



gas/testsuite/ChangeLog

2013-02-13  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

        * gas/arm/neon-vmov-bad.d: New file.
        * gas/arm/neon-vmov-bad.s: Likewise.
        * gas/arm/neon-vmov-bad.l: Likewise.
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: gas-vmov.txt
URL: <https://sourceware.org/pipermail/binutils/attachments/20130213/09a1a38a/attachment.txt>


More information about the Binutils mailing list