aboutsummaryrefslogtreecommitdiff
path: root/gas/config/tc-s390.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2001-07-30 06:15:49 +0000
committerAlan Modra <amodra@gmail.com>2001-07-30 06:15:49 +0000
commit468cced8b997b43359f2610c43a223d907a9bea7 (patch)
treedb2276f7ee47ee5acfadd658dbc8086d7b59e142 /gas/config/tc-s390.c
parent5b2e4f117fa00ecf3846da58cf8756ec2e956052 (diff)
downloadgdb-468cced8b997b43359f2610c43a223d907a9bea7.zip
gdb-468cced8b997b43359f2610c43a223d907a9bea7.tar.gz
gdb-468cced8b997b43359f2610c43a223d907a9bea7.tar.bz2
* config/obj-elf.c (obj_elf_symver): Temporarily modify lex_type
to include '@' in symbol names when parsing versioned symbols rather than calling get_symbol_end multiple times. * config/tc-i370.c (register_name): Format fixes. Don't call get_symbol_end after parsing number. * config/tc-mn10200.c (data_register_name): Format fixes. Hoist code out of conditional. (address_register_name): Likewise. (other_register_name): Likewise. * config/tc-mn10300.c (r_register_name): Likewise. (xr_register_name): Likewise. (data_register_name): Likewise. (address_register_name): Likewise. (other_register_name): Likewise. * config/tc-ppc.c (register_name): Likewise. * config/tc-s390.c (register_name): Likewise.
Diffstat (limited to 'gas/config/tc-s390.c')
-rw-r--r--gas/config/tc-s390.c21
1 files changed, 10 insertions, 11 deletions
diff --git a/gas/config/tc-s390.c b/gas/config/tc-s390.c
index 21d4c0d..9966786 100644
--- a/gas/config/tc-s390.c
+++ b/gas/config/tc-s390.c
@@ -251,7 +251,7 @@ register_name (expressionP)
char *start;
char c;
- /* Find the spelling of the operand */
+ /* Find the spelling of the operand. */
start = name = input_line_pointer;
if (name[0] == '%' && isalpha (name[1]))
name = ++input_line_pointer;
@@ -261,25 +261,24 @@ register_name (expressionP)
c = get_symbol_end ();
reg_number = reg_name_search (pre_defined_registers, REG_NAME_CNT, name);
- /* look to see if it's in the register table */
+ /* Put back the delimiting char. */
+ *input_line_pointer = c;
+
+ /* Look to see if it's in the register table. */
if (reg_number >= 0)
{
expressionP->X_op = O_register;
expressionP->X_add_number = reg_number;
- /* make the rest nice */
+ /* Make the rest nice. */
expressionP->X_add_symbol = NULL;
expressionP->X_op_symbol = NULL;
- *input_line_pointer = c; /* put back the delimiting char */
return true;
}
- else
- {
- /* reset the line as if we had not done anything */
- *input_line_pointer = c; /* put back the delimiting char */
- input_line_pointer = start; /* reset input_line pointer */
- return false;
- }
+
+ /* Reset the line as if we had not done anything. */
+ input_line_pointer = start;
+ return false;
}
/* Local variables. */