gas: blackfin: support ABORT debug insn
authorMike Frysinger <vapier@gentoo.org>
Wed, 22 Sep 2010 20:21:32 +0000 (20:21 +0000)
committerMike Frysinger <vapier@gentoo.org>
Wed, 22 Sep 2010 20:21:32 +0000 (20:21 +0000)
There is a pseudo debug insn named ABORT that is commonly used in
simulation, so support it in the assembler too.  The disassembler
already supports it.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
gas/ChangeLog
gas/config/bfin-lex.l
gas/config/bfin-parse.y

index 0a6aec75a27332a0a76e0854a5b5ce6bc496ce05..551525b01cdaadfdb41b672235eee976177dc5a1 100644 (file)
@@ -1,3 +1,8 @@
+2010-09-22  Mike Frysinger  <vapier@gentoo.org>
+
+       * config/bfin-lex.l (abort): Accept case-insensitive abort insn.
+       * config/bfin-parse.y (ABORT): Handle the ABORT token.
+
 2010-09-22  Mike Frysinger  <vapier@gentoo.org>
 
        * config/tc-bfin.c (bfin_cpus[]): Add 0.2 for bf512/bf514/bf516/bf518.
index 1b80bf9f1f853bf4b05d05432fecea213322b032..aa0569221f3ee4e18778a58d326a9d61ff729602 100644 (file)
@@ -230,7 +230,7 @@ int yylex (void);
 [aA]1"."[hH]    return A_ONE_DOT_H;
 [aA]0"."[hH]    return A_ZERO_DOT_H;
 [aA][bB][sS]                            return ABS;
-abort                                   return ABORT;
+[aA][bB][oO][rR][tT]                    return ABORT;
 [aA]1"."[xX]    _REG.regno = REG_A1x; return REG;
 [aA]1"."[wW]    _REG.regno = REG_A1w; return REG;
 [aA]1           _REG.regno = REG_A1;  return REG_A_DOUBLE_ONE;
index 2d569e2cc4688646c2a44da8f2c7862e842016b6..747442cd8578f8101c9e9d4be0910875f9c94cde 100644 (file)
@@ -3558,6 +3558,12 @@ asm_1:
 
 /* pseudoDEBUG.  */
 
+       | ABORT
+       {
+         notethat ("psedoDEBUG: ABORT\n");
+         $$ = bfin_gen_pseudodbg (3, 3, 0);
+       }
+
        | DBG
        {
          notethat ("pseudoDEBUG: DBG\n");