[PATCH] gas: arm: handle multiple .directives on a single line (PR29519)

Richard Earnshaw rearnsha@arm.com
Wed Aug 24 16:10:54 GMT 2022


There's been a long-standing bug in the arm backend where
target-specific directives did not correctly handle lines with
multiple statements.  This patch fixes the issue for all the cases
I've been able to find.

It does result in a slight change in behaviour when errors are
encountered: where, previously,

  .cpu arm6 bar

would result in the error "junk at end of line, first unrecognized
character is `b'", we now get "unknown cpu `arm6 bar'", which I think
is slightly more helpful anyway.  Similar errors are generated for
other directives.
---
 gas/config/tc-arm.c                | 64 ++++++++++++++++++++----------
 gas/testsuite/gas/arm/directives.d | 18 +++++++++
 gas/testsuite/gas/arm/directives.s | 11 +++++
 3 files changed, 73 insertions(+), 20 deletions(-)
 create mode 100644 gas/testsuite/gas/arm/directives.d
 create mode 100644 gas/testsuite/gas/arm/directives.s

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-gas-arm-handle-multiple-.directives-on-a-single-line.patch
Type: text/x-patch
Size: 6466 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20220824/efd4c299/attachment.bin>


More information about the Binutils mailing list