summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Anglin <dave.anglin@nrc.ca>2012-10-14 23:27:38 +0000
committerDave Anglin <dave.anglin@nrc.ca>2012-10-14 23:27:38 +0000
commit26cbfa82ad8efb59a6c5420ee5b25043f3c69cea (patch)
tree7e2634aa1eb416bcc0de5823abc0d5a2732fc124
parent767b2c671271b0035804530c46ccc37b8610fbe4 (diff)
downloadbinutils-gdb-26cbfa82ad8efb59a6c5420ee5b25043f3c69cea.tar.gz
* config/tc-hppa.c (pa_ip): Reject double floating point stores and
loads that reference the right half of a floating point register.
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/tc-hppa.c5
2 files changed, 9 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 0fb92862a85..376869e9d6b 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2012-10-14 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
+
+ * config/tc-hppa.c (pa_ip): Reject double floating point stores and
+ loads that reference the right half of a floating point register.
+
2012-10-13 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
* config/tc-hppa.c (pa_ip): Limit unit conditions for uxor to those
diff --git a/gas/config/tc-hppa.c b/gas/config/tc-hppa.c
index 6411e36cc39..16192d8969f 100644
--- a/gas/config/tc-hppa.c
+++ b/gas/config/tc-hppa.c
@@ -5482,7 +5482,10 @@ pa_ip (char *str)
case 't':
if (!pa_parse_number (&s, 3))
break;
- num = (pa_number & ~FP_REG_RSEL) - FP_REG_BASE;
+ /* RSEL should not be set. */
+ if (pa_number & FP_REG_RSEL)
+ break;
+ num = pa_number - FP_REG_BASE;
CHECK_FIELD (num, 31, 0, 0);
INSERT_FIELD_AND_CONTINUE (opcode, num, 0);