2015-04-29 Nick Clifton <nickc@redhat.com>
+ PR 18256
+ * config/tc-arm.c (encode_arm_cp_address): Issue an error message
+ if the operand is neither a register nor a vector.
+
+2015-04-29 Nick Clifton <nickc@redhat.com>
+
* doc/as.texinfo (Set): Note that a symbol cannot be set multiple
times if the expression is not constant and the target uses linker
relaxation.
{
if (!inst.operands[i].isreg)
{
- gas_assert (inst.operands[0].isvec);
+ /* PR 18256 */
+ if (! inst.operands[0].isvec)
+ {
+ inst.error = _("invalid co-processor operand");
+ return FAIL;
+ }
if (move_or_literal_pool (0, CONST_VEC, /*mode_3=*/FALSE))
return SUCCESS;
}
+2015-04-29 Nick Clifton <nickc@redhat.com>
+
+ PR gas/18265
+ * gas/arm/pr18256.s: New file: Test case.
+ * gas/arm/pr18256.l: New file: Expected assembler output.
+ * gas/arm/pr18256.d: New file: Test driver.
+
2015-04-28 Renlin Li <renlin.li@arm.com>
* gas/arm/thumb2_vpool_be.d: Adjust the desired output.
--- /dev/null
+# name: PR18256 - Bad code triggers internal error
+#as:
+#error-output: pr18256.l
+
+
+
+
+
+
--- /dev/null
+[^:]*: Assembler messages:
+[^:]*:1: Error: invalid co-processor operand -- `ldc p0,c0,=.'
--- /dev/null
+ LDC p0, c0, =.