diff --git a/gas/config/tc-txvu.c b/gas/config/tc-txvu.c index de38477d0a..fdbaeb23df 100644 --- a/gas/config/tc-txvu.c +++ b/gas/config/tc-txvu.c @@ -414,7 +414,7 @@ assemble_one_insn (cpu, opcode, operand_table, str, insn_buf) /* Pick the suffix out and parse it. */ /* ??? Hmmm ... there may not be any need to nul-terminate the string, and it may in fact complicate things. */ - for (t = *s == '.' ? s + 1 : s; + for (t = (*s == '.' || *s == '/') ? s + 1 : s; *t && (isalnum (*t) || *t == '[' || *t == ']'); ++t) continue; diff --git a/opcodes/txvu-opc.c b/opcodes/txvu-opc.c index 0f6deee8ee..56267c9d99 100644 --- a/opcodes/txvu-opc.c +++ b/opcodes/txvu-opc.c @@ -227,7 +227,7 @@ const struct txvu_operand txvu_operands[] = #define LPCREL11 (LUIMM12UP6 + 1) { 11, 0, TXVU_OPERAND_SIGNED + TXVU_OPERAND_RELATIVE_BRANCH, 0, 0, 0, 0 }, - /* Destination indicator, single letter only, with leading '.'. */ + /* Destination indicator, single letter only, with leading '.' or '/'. */ #define LDOTDEST1 (LPCREL11 + 1) { 4, TXVU_SHIFT_DEST, TXVU_OPERAND_SUFFIX, /* Note that we borrow the insert/extract/print functions from the @@ -560,7 +560,7 @@ parse_dotdest (pstr, errmsg) { long dest; - if (**pstr != '.') + if (**pstr != '.' && **pstr != '/') { *errmsg = "missing `.'"; return 0; @@ -588,7 +588,7 @@ parse_dotdest1 (pstr, errmsg) char c; long dest; - if (**pstr != '.') + if (**pstr != '.' && **pstr != '/') { *errmsg = "missing `.'"; return 0;