aboutsummaryrefslogtreecommitdiff
path: root/gas/config
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2011-03-29 05:44:56 +0000
committerMike Frysinger <vapier@gentoo.org>2011-03-29 05:44:56 +0000
commit0be99d4ba6c89dca6bbee981c7b89d506f344a40 (patch)
tree4b130dba7e507d24f9a4b86e2c8c6ee14e83b1a4 /gas/config
parentc3a7b1206d72edcfeb965fdbd6cfd0c9d0100eba (diff)
downloadbinutils-0be99d4ba6c89dca6bbee981c7b89d506f344a40.zip
binutils-0be99d4ba6c89dca6bbee981c7b89d506f344a40.tar.gz
binutils-0be99d4ba6c89dca6bbee981c7b89d506f344a40.tar.bz2
gas: blackfin: gas: blackfin: reject invalid BYTEOP16P insns
The destination registers must be different with BYTEOP16P insns, otherwise the hardware throws up an exception. So reject them. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Diffstat (limited to 'gas/config')
-rw-r--r--gas/config/bfin-parse.y2
1 files changed, 2 insertions, 0 deletions
diff --git a/gas/config/bfin-parse.y b/gas/config/bfin-parse.y
index fa81a61..12e7525 100644
--- a/gas/config/bfin-parse.y
+++ b/gas/config/bfin-parse.y
@@ -831,6 +831,8 @@ asm_1:
{
if (!IS_DREG ($2) || !IS_DREG ($4))
return yyerror ("Dregs expected");
+ else if (REG_SAME ($2, $4))
+ return yyerror ("Illegal dest register combination");
else if (!valid_dreg_pair (&$9, $11))
return yyerror ("Bad dreg pair");
else if (!valid_dreg_pair (&$13, $15))