aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Brook <paul@codesourcery.com>2006-01-31 16:19:41 +0000
committerPaul Brook <paul@codesourcery.com>2006-01-31 16:19:41 +0000
commit791346475b25f49cd5ad332425ff39cce0c79e63 (patch)
tree4f60f48da962ef1759be321b1a3f34f611e39aa1
parente74cfd166e5a1a76025c0e34f858747610a3c74d (diff)
downloadfsf-binutils-gdb-791346475b25f49cd5ad332425ff39cce0c79e63.zip
fsf-binutils-gdb-791346475b25f49cd5ad332425ff39cce0c79e63.tar.gz
fsf-binutils-gdb-791346475b25f49cd5ad332425ff39cce0c79e63.tar.bz2
2006-01-31 Paul Brook <paul@codesourcery.com>
gas/ * config/tc-arm.c (arm_reg_parse): Check if reg is non-NULL. gas/testsuite/ * gas/testsuite/gas/arm/iwmmxt-bad.s: Add check for bad register name. * gas/testsuite/gas/arm/iwmmxt-bad.l: Ditto.
-rw-r--r--gas/ChangeLog4
-rw-r--r--gas/config/tc-arm.c4
-rw-r--r--gas/testsuite/ChangeLog5
-rw-r--r--gas/testsuite/gas/arm/iwmmxt-bad.l1
-rw-r--r--gas/testsuite/gas/arm/iwmmxt-bad.s1
5 files changed, 13 insertions, 2 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 73da5bf..4da5073 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,4 +1,8 @@
2006-01-31 Paul Brook <paul@codesourcery.com>
+
+ * config/tc-arm.c (arm_reg_parse): Check if reg is non-NULL.
+
+2006-01-31 Paul Brook <paul@codesourcery.com>
Richard Earnshaw <rearnsha@arm.com>
* config/tc-arm.c: Use arm_feature_set.
diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c
index b010a0a..dc315c0 100644
--- a/gas/config/tc-arm.c
+++ b/gas/config/tc-arm.c
@@ -928,7 +928,7 @@ arm_reg_parse (char **ccp, enum arm_reg_type type)
case REG_TYPE_MVFX:
case REG_TYPE_MVDX:
/* Generic coprocessor register names are allowed for these. */
- if (reg->type == REG_TYPE_CN)
+ if (reg && reg->type == REG_TYPE_CN)
return reg->number;
break;
@@ -943,7 +943,7 @@ arm_reg_parse (char **ccp, enum arm_reg_type type)
case REG_TYPE_MMXWC:
/* WC includes WCG. ??? I'm not sure this is true for all
instructions that take WC registers. */
- if (reg->type == REG_TYPE_MMXWCG)
+ if (reg && reg->type == REG_TYPE_MMXWCG)
return reg->number;
break;
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index 7d10bfa..f2e907f 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2006-01-31 Paul Brook <paul@codesourcery.com>
+
+ * gas/testsuite/gas/arm/iwmmxt-bad.s: Add check for bad register name.
+ * gas/testsuite/gas/arm/iwmmxt-bad.l: Ditto.
+
2006-01-18 Arnold Metselaar <arnoldm@sourceware.org>
* gas/z80/z80.exp: Add offset.
diff --git a/gas/testsuite/gas/arm/iwmmxt-bad.l b/gas/testsuite/gas/arm/iwmmxt-bad.l
index 962bc46..6588938 100644
--- a/gas/testsuite/gas/arm/iwmmxt-bad.l
+++ b/gas/testsuite/gas/arm/iwmmxt-bad.l
@@ -7,3 +7,4 @@
[^:]*:6: Error: iWMMXt data register expected -- `wstrb wcgr0,\[r1\]'
[^:]*:7: Error: iWMMXt data register expected -- `wstrh wcgr0,\[r1\]'
[^:]*:8: Error: iWMMXt data register expected -- `wstrd wcgr0,\[r1\]'
+[^:]*:9: Error: iWMMXt control register expected -- `tmcr wibble,r1'
diff --git a/gas/testsuite/gas/arm/iwmmxt-bad.s b/gas/testsuite/gas/arm/iwmmxt-bad.s
index 0c30af1..47d8d71 100644
--- a/gas/testsuite/gas/arm/iwmmxt-bad.s
+++ b/gas/testsuite/gas/arm/iwmmxt-bad.s
@@ -6,3 +6,4 @@
wstrb wcgr0,[r1]
wstrh wcgr0,[r1]
wstrd wcgr0,[r1]
+ tmcr wibble,r1