aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2010-09-22 21:05:03 +0000
committerMike Frysinger <vapier@gentoo.org>2010-09-22 21:05:03 +0000
commit22215ae09b35cffb17d23cb159e603227caa9957 (patch)
tree91ff1a0e0840586a9d233b104cb2ba78b06f9235 /gas
parent73a63ccf2f0f856eebf7fee67309fe2a276c39d6 (diff)
downloadfsf-binutils-gdb-22215ae09b35cffb17d23cb159e603227caa9957.zip
fsf-binutils-gdb-22215ae09b35cffb17d23cb159e603227caa9957.tar.gz
fsf-binutils-gdb-22215ae09b35cffb17d23cb159e603227caa9957.tar.bz2
opcodes/gas: blackfin: handle more ASTAT flags
Support a few more ASTAT bits with the standard insns that operate on ASTAT bits directly. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/bfin-defs.h5
-rw-r--r--gas/config/bfin-lex.l3
3 files changed, 12 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 039c338..3269418 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2010-09-22 Robin Getz <robin.getz@analog.com>
+
+ * config/bfin-defs.h (statusflags): Add AC0_COPY, V_COPY, and RND_MOD.
+ * config/bfin-lex.l: Tokenize AC0_COPY, V_COPY, and RND_MOD.
+
2010-09-22 Mike Frysinger <vapier@gentoo.org>
* config/bfin-aux.h (bfin_gen_pseudochr): New prototype.
diff --git a/gas/config/bfin-defs.h b/gas/config/bfin-defs.h
index adcfda4..7dd9796 100644
--- a/gas/config/bfin-defs.h
+++ b/gas/config/bfin-defs.h
@@ -1,5 +1,5 @@
/* bfin-defs.h ADI Blackfin gas header file
- Copyright 2005, 2006, 2007, 2009
+ Copyright 2005, 2006, 2007, 2009, 2010
Free Software Foundation, Inc.
This file is part of GAS, the GNU Assembler.
@@ -120,7 +120,10 @@ enum statusflags
{
S_AZ = 0,
S_AN,
+ S_AC0_COPY,
+ S_V_COPY,
S_AQ = 6,
+ S_RND_MOD = 8,
S_AC0 = 12,
S_AC1,
S_AV0 = 16,
diff --git a/gas/config/bfin-lex.l b/gas/config/bfin-lex.l
index aa05692..bc7957a 100644
--- a/gas/config/bfin-lex.l
+++ b/gas/config/bfin-lex.l
@@ -208,6 +208,8 @@ int yylex (void);
[bB] return B;
[aA][zZ] _REG.regno = S_AZ; return STATUS_REG;
[aA][nN] _REG.regno = S_AN; return STATUS_REG;
+[aA][cC]0_[cC][oO][pP][yY] _REG.regno = S_AC0_COPY; return STATUS_REG;
+[vV]_[cC][oO][pP][yY] _REG.regno = S_V_COPY; return STATUS_REG;
[aA][qQ] _REG.regno = S_AQ; return STATUS_REG;
[aA][cC]0 _REG.regno = S_AC0; return STATUS_REG;
[aA][cC]1 _REG.regno = S_AC1; return STATUS_REG;
@@ -216,6 +218,7 @@ int yylex (void);
[aA][vV]1 _REG.regno = S_AV1; return STATUS_REG;
[aA][vV]1[sS] _REG.regno = S_AV1S; return STATUS_REG;
[vV][sS] _REG.regno = S_VS; return STATUS_REG;
+[rR][nN][dD]_[mM][oO][dD] _REG.regno = S_RND_MOD; return STATUS_REG;
[aA][sS][tT][aA][tT] _REG.regno = REG_ASTAT; return REG;