From 8ab8155f362b0826eb19b0e22e6c3be854d414ee Mon Sep 17 00:00:00 2001 From: Nick Clifton Date: Mon, 7 Jan 2013 12:49:12 +0000 Subject: PR gas/14887 * config/tc-arm.c (skip_past_char): Skip whitespace before the anticipated character. * config/tc-arm.c (parse_address_main): Delete skip of whitespace here as it is no longer needed. PR gas/14887 * gas/arm/neon-ldst-es.s: Add more whitespace. --- gas/ChangeLog | 8 ++++++++ gas/config/tc-arm.c | 11 +++++++---- gas/testsuite/ChangeLog | 5 +++++ gas/testsuite/gas/arm/neon-ldst-es.s | 4 ++-- 4 files changed, 22 insertions(+), 6 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 73d1b93..28c5095 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,11 @@ +2013-01-07 Nick Clifton + + PR gas/14887 + * config/tc-arm.c (skip_past_char): Skip whitespace before the + anticipated character. + * config/tc-arm.c (parse_address_main): Delete skip of whitespace + here as it is no longer needed. + 2013-01-06 Andreas Schwab * doc/c-mips.texi (MIPS Opts): Fix use of @itemx. diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index 33eacdb..8cf5a80 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -1,6 +1,6 @@ /* tc-arm.c -- Assemble for the ARM Copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, - 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 + 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 Free Software Foundation, Inc. Contributed by Richard Earnshaw (rwe@pegasus.esprit.ec.org) Modified by David Taylor (dtaylor@armltd.co.uk) @@ -885,6 +885,9 @@ const char FLT_CHARS[] = "rRsSfFdDxXeEpP"; static inline int skip_past_char (char ** str, char c) { + /* PR gas/14987: Allow for whitespace before the expected character. */ + skip_whitespace (*str); + if (**str == c) { (*str)++; @@ -5168,6 +5171,9 @@ parse_address_main (char **str, int i, int group_relocations, return PARSE_OPERAND_SUCCESS; } + /* PR gas/14887: Allow for whitespace after the opening bracket. */ + skip_whitespace (p); + if ((reg = arm_reg_parse (&p, REG_TYPE_RN)) == FAIL) { inst.error = _(reg_expected_msgs[REG_TYPE_RN]); @@ -5291,9 +5297,6 @@ parse_address_main (char **str, int i, int group_relocations, return result; } - /* PR gas/14987: Allow for whitespace before the closing bracket. */ - skip_whitespace (p); - if (skip_past_char (&p, ']') == FAIL) { inst.error = _("']' expected"); diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 0cb2856..c27a794 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2013-01-07 Nick Clifton + + PR gas/14887 + * gas/arm/neon-ldst-es.s: Add more whitespace. + 2013-01-04 Juergen Urban * gas/mips/r5900-full.s: New test. diff --git a/gas/testsuite/gas/arm/neon-ldst-es.s b/gas/testsuite/gas/arm/neon-ldst-es.s index ea7de07..79f4b0c 100644 --- a/gas/testsuite/gas/arm/neon-ldst-es.s +++ b/gas/testsuite/gas/arm/neon-ldst-es.s @@ -58,5 +58,5 @@ vld4.32 {q1-q2},[r7] vld4.32 {q14-q15},[r7] - @ PR 14987: Allow for whitespace before the closing bracket. - vld1.32 {d1[]}, [r2 ], r3 + @ PR 14987 and 14887: Allow for whitespace in the instruction. + vld1.32 { d1 [ ] } , [ r2 ] , r3 -- cgit v1.1