From c6cdff46c9d35e0c811e179fc6642ed71473bc66 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Mon, 18 Mar 2019 22:16:24 +1030 Subject: [PATCH] Fix MRI mode testsuite failures These fails were introduced by git commit 2469b3c584 with the inroduction of "input_from_string": m68k-linux FAIL: MRI structured for m68k-linux FAIL: MRI structured if m68k-linux FAIL: MRI structured repeat m68k-linux FAIL: MRI structured while Since the m68k parser called expression() without setting input_from_string, get_symbol_name rejected FAKE_LABEL_CHAR in names. * config/m68k-parse.y (yylex): Use temp_ilp and restore_ilp. --- gas/ChangeLog | 4 ++++ gas/config/m68k-parse.y | 11 ++++------- 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 0f0c5e5..dbfde1e 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,7 @@ +2019-03-18 Alan Modra + + * config/m68k-parse.y (yylex): Use temp_ilp and restore_ilp. + 2019-03-18 H.J. Lu * testsuite/gas/i386/att-regs.d: Pass -O0 to assembler. diff --git a/gas/config/m68k-parse.y b/gas/config/m68k-parse.y index f771f09..8bc96d1 100644 --- a/gas/config/m68k-parse.y +++ b/gas/config/m68k-parse.y @@ -754,7 +754,6 @@ yylex (void) int parens; int c = 0; int tail = 0; - char *hold; if (*str == ' ') ++str; @@ -913,11 +912,10 @@ yylex (void) ++s; - hold = input_line_pointer; - input_line_pointer = s; + temp_ilp (s); expression (&scale); s = input_line_pointer; - input_line_pointer = hold; + restore_ilp (); if (scale.X_op != O_constant) yyerror (_("scale specification must resolve to a number")); @@ -1071,11 +1069,10 @@ yylex (void) s[-tail] = 0; } - hold = input_line_pointer; - input_line_pointer = str; + temp_ilp (str); expression (&yylval.exp.exp); str = input_line_pointer; - input_line_pointer = hold; + restore_ilp (); if (tail != 0) { -- 2.7.4