re PR other/57195 (Mode attributes with specific mode iterator can not be used as mode iterators in *.md files)

2015-09-24  Michael Collison  <michael.collison@linaro.org>

	PR other/57195
	* read-md.c (read_name): Allow mode iterators inside angle
	brackets in rtl expressions.

From-SVN: r228102
This commit is contained in:
Michael Collison 2015-09-24 23:26:50 +00:00 committed by Michael Collison
parent 86f0bef373
commit 4fe017f67a
2 changed files with 21 additions and 4 deletions

View File

@ -1,3 +1,9 @@
2015-09-24 Michael Collison <michael.collison@linaro.org>
PR other/57195
* read-md.c (read_name): Allow mode iterators inside angle
brackets in rtl expressions.
2015-09-24 Vladimir Makarov <vmakarov@redhat.com>
PR target/61578

View File

@ -399,20 +399,31 @@ read_name (struct md_name *name)
{
int c;
size_t i;
int angle_bracket_depth;
c = read_skip_spaces ();
i = 0;
angle_bracket_depth = 0;
while (1)
{
if (c == '<')
angle_bracket_depth++;
if ((c == '>') && (angle_bracket_depth > 0))
angle_bracket_depth--;
if (c == ' ' || c == '\n' || c == '\t' || c == '\f' || c == '\r'
|| c == EOF)
break;
if (c == ':' || c == ')' || c == ']' || c == '"' || c == '/'
|| c == '(' || c == '[')
if (angle_bracket_depth == 0)
{
unread_char (c);
break;
if (c == ':' || c == ')' || c == ']'
|| c == '"' || c == '/' || c == '(' || c == '[')
{
unread_char (c);
break;
}
}
if (i == sizeof (name->buffer) - 1)