PR gas/26001
* gas/config/tc-pdp11.c (parse_reg): Distinguish register names from
symbols that begin with a register name.
* gas/testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
* gas/testsuite/gas/pdp11/pr26001.s: Likewise.
* gas/testsuite/gas/pdp11/pr26001.d: Likewise.
+2020-05-27 Stephen Casner <casner@acm.org>
+
+ PR gas/26001
+ * config/tc-pdp11.c (parse_reg): Distinguish register names from
+ symbols that begin with a register name.
+ * testsuite/gas/pdp11/pdp11.exp: Add test of such symbols.
+ * testsuite/gas/pdp11/pr26001.s: Likewise.
+ * testsuite/gas/pdp11/pr26001.d: Likewise.
+
2020-05-27 Simon Cook <simon.cook@embecosm.com>
* config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
str += 2;
}
else
- operand->error = _("Bad register name");
+ {
+ operand->error = _("Bad register name");
+ return str;
+ }
+ if (ISALNUM (*str) || *str == '_' || *str == '.')
+ {
+ operand->error = _("Bad register name");
+ str -= 2;
+ }
+
return str;
}
run_dump_test "absreloc"
run_dump_test "pr14480"
run_dump_test "pr23481"
+ run_dump_test "pr26001"
}
--- /dev/null
+#name: PR 26001 - distinguish register names from symbols
+#objdump: -dw
+
+.*: +file format .*
+
+Disassembly of section .text:
+
+0+00 <start>:
+[ ]+0:[ ]+09f7 fffc[ ]+jsr[ ]+pc, 0 <start>
+[ ]+4:[ ]+1037 0004[ ]+mov[ ]+r0, \$c <space>
+[ ]+8:[ ]+1dc1 0002[ ]+mov[ ]+\$e <r00f>, r1
+#pass
--- /dev/null
+ .text
+ .globl sprintf
+start: jsr pc,sprintf
+ mov r0,space
+ mov r00f,r1
+ .data
+space: .word 0
+r00f: .word 0
+ .end