diff options
author | Jeff Law <law@redhat.com> | 1999-09-23 14:30:31 +0000 |
---|---|---|
committer | Jeff Law <law@redhat.com> | 1999-09-23 14:30:31 +0000 |
commit | ce674324e1ff425199c721d2a9db8fcc669b54bc (patch) | |
tree | 88d93d6d4cbd54b1eed468d033e623087c529d91 /gas/config/tc-hppa.c | |
parent | 390f858d11e5bc4b4cfe322e08d1ea3ae1dc435b (diff) | |
download | gdb-ce674324e1ff425199c721d2a9db8fcc669b54bc.zip gdb-ce674324e1ff425199c721d2a9db8fcc669b54bc.tar.gz gdb-ce674324e1ff425199c721d2a9db8fcc669b54bc.tar.bz2 |
* config/tc-hppa.c (pa_ip): Replace 'B', 'M', 'l' and 'g' handling
with cleaner code using completer prefixes. Add 'Y'.
Diffstat (limited to 'gas/config/tc-hppa.c')
-rw-r--r-- | gas/config/tc-hppa.c | 67 |
1 files changed, 35 insertions, 32 deletions
diff --git a/gas/config/tc-hppa.c b/gas/config/tc-hppa.c index 96ff576..251ae37 100644 --- a/gas/config/tc-hppa.c +++ b/gas/config/tc-hppa.c @@ -1872,6 +1872,34 @@ pa_ip (str) INSERT_FIELD_AND_CONTINUE (opcode, a, 13); } + /* Handle a branch gate completer. */ + case 'g': + if (strncasecmp (s, ",gate", 5) != 0) + break; + s += 5; + continue; + + /* Handle a branch link and push completer. */ + case 'p': + if (strncasecmp (s, ",l,push", 7) != 0) + break; + s += 7; + continue; + + /* Handle a branch link completer. */ + case 'l': + if (strncasecmp (s, ",l", 2) != 0) + break; + s += 2; + continue; + + /* Handle a branch pop completer. */ + case 'P': + if (strncasecmp (s, ",pop", 4) != 0) + break; + s += 4; + continue; + /* Handle a local processor completer. */ case 'L': if (strncasecmp (s, ",l", 2) != 0) @@ -2720,38 +2748,6 @@ pa_ip (str) nullif = pa_parse_nullif (&s); INSERT_FIELD_AND_CONTINUE (opcode, nullif, 5); - /* Handle ,gate completer for new syntax branches. */ - case 'g': - if (*s == ',' && strncasecmp (s + 1, "gate", 4) == 0) - s += 5; - else - break; - continue; - - /* Handle ,l completer for new syntax branches. */ - case 'l': - if (*s == ',' && strncasecmp (s + 1, "l", 1) == 0) - s += 2; - else - break; - continue; - - /* Handle ,push completer for new syntax branches. */ - case 'M': - if (*s == ',' && strncasecmp (s + 1, "push", 4) == 0) - s += 5; - else - break; - continue; - - /* Handle ,pop completer for new syntax branches. */ - case 'B': - if (*s == ',' && strncasecmp (s + 1, "pop", 3) == 0) - s += 4; - else - break; - continue; - /* Handle ,%r2 completer for new syntax branches. */ case 'L': if (*s == ',' && strncasecmp (s + 1, "%r2", 3) == 0) @@ -3146,6 +3142,13 @@ pa_ip (str) else break; + /* Handle '%sr0,%r31' implicit operand of be,l instruction. */ + case 'Y': + if (strncasecmp (s, "%sr0,%r31", 9) != 0) + break; + s += 9; + continue; + /* Handle a 2 bit shift count at 25. */ case '.': num = pa_get_absolute_expression (&the_insn, &s); |