diff options
author | Andrew Cagney <cagney@redhat.com> | 1998-04-14 04:24:47 +0000 |
---|---|---|
committer | Andrew Cagney <cagney@redhat.com> | 1998-04-14 04:24:47 +0000 |
commit | 13eaae2fd07512516eec601d4a3ab78bf9af34ec (patch) | |
tree | 8f02808aa26af8b863a1a0307c294a0959ce595b /sim/igen/ld-insn.c | |
parent | 937ac38a3b7aaa0296b6a98defa3be75bed896ad (diff) | |
download | gdb-13eaae2fd07512516eec601d4a3ab78bf9af34ec.zip gdb-13eaae2fd07512516eec601d4a3ab78bf9af34ec.tar.gz gdb-13eaae2fd07512516eec601d4a3ab78bf9af34ec.tar.bz2 |
Broke parsing of !<val>!<val> when adding support for =<field>. Fix.
Add support for the -S<suffix> option.
Diffstat (limited to 'sim/igen/ld-insn.c')
-rw-r--r-- | sim/igen/ld-insn.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/sim/igen/ld-insn.c b/sim/igen/ld-insn.c index 2fc6cf3..7fc0e37 100644 --- a/sim/igen/ld-insn.c +++ b/sim/igen/ld-insn.c @@ -125,7 +125,6 @@ parse_insn_word (line_ref *line, char *end; int len; insn_field_cond *new_cond = ZALLOC (insn_field_cond); - insn_field_cond **last; /* determine the conditional test */ switch (*chp) @@ -144,7 +143,7 @@ parse_insn_word (line_ref *line, chp++; chp = skip_spaces (chp); start = chp; - chp = skip_to_separator (chp, "+,:"); + chp = skip_to_separator (chp, "+,:!="); end = back_spaces (start, chp); len = end - start; if (len == 0) @@ -174,10 +173,12 @@ parse_insn_word (line_ref *line, error (line, "Only single conditional when `=' allowed\n"); /* insert it */ - last = &new_field->conditions; - while (*last != NULL) - last = &(*last)->next; - *last = new_cond; + { + insn_field_cond **last = &new_field->conditions; + while (*last != NULL) + last = &(*last)->next; + *last = new_cond; + } } /* NOW verify that the field was finished */ |