diff --git a/gas/ChangeLog b/gas/ChangeLog index 8d6ba9b6b9..d4886c02c0 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2016-04-03 Trevor Saunders + + * config/bfin-parse.y (current_inputline): Remove definition. + * config/tc-bfin.c (md_assemble): Simplify use of current_inputline. + 2016-04-03 Trevor Saunders * config/tc-avr.c (md_parse_option): Use strcasecmp () to compare diff --git a/gas/config/bfin-parse.y b/gas/config/bfin-parse.y index be532808a8..26070c1499 100644 --- a/gas/config/bfin-parse.y +++ b/gas/config/bfin-parse.y @@ -160,7 +160,6 @@ static Expr_Node *unary (Expr_Op_Type, Expr_Node *); static void notethat (const char *, ...); -char *current_inputline; extern char *yytext; int yyerror (const char *); diff --git a/gas/config/tc-bfin.c b/gas/config/tc-bfin.c index caa89c6d6a..4f9ad7ea69 100644 --- a/gas/config/tc-bfin.c +++ b/gas/config/tc-bfin.c @@ -485,20 +485,18 @@ void md_assemble (char *line) { char *toP = 0; - extern char *current_inputline; int size, insn_size; struct bfin_insn *tmp_insn; size_t len; static size_t buffer_len = 0; + static char *current_inputline; parse_state state; len = strlen (line); if (len + 2 > buffer_len) { - if (buffer_len > 0) - free (current_inputline); buffer_len = len + 40; - current_inputline = xmalloc (buffer_len); + current_inputline = XRESIZEVEC (char, current_inputline, buffer_len); } memcpy (current_inputline, line, len); current_inputline[len] = ';';