From 1b182c3c15d4a867516000456037e9f3ec23e8e4 Mon Sep 17 00:00:00 2001 From: Mike Frysinger Date: Wed, 22 Sep 2010 20:21:32 +0000 Subject: [PATCH] gas: blackfin: support ABORT debug insn 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 --- gas/ChangeLog | 5 +++++ gas/config/bfin-lex.l | 2 +- gas/config/bfin-parse.y | 6 ++++++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 0a6aec7..551525b 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,5 +1,10 @@ 2010-09-22 Mike Frysinger + * config/bfin-lex.l (abort): Accept case-insensitive abort insn. + * config/bfin-parse.y (ABORT): Handle the ABORT token. + +2010-09-22 Mike Frysinger + * config/tc-bfin.c (bfin_cpus[]): Add 0.2 for bf512/bf514/bf516/bf518. 2010-09-22 Mike Frysinger diff --git a/gas/config/bfin-lex.l b/gas/config/bfin-lex.l index 1b80bf9..aa05692 100644 --- a/gas/config/bfin-lex.l +++ b/gas/config/bfin-lex.l @@ -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; diff --git a/gas/config/bfin-parse.y b/gas/config/bfin-parse.y index 2d569e2..747442c 100644 --- a/gas/config/bfin-parse.y +++ b/gas/config/bfin-parse.y @@ -3558,6 +3558,12 @@ asm_1: /* pseudoDEBUG. */ + | ABORT + { + notethat ("psedoDEBUG: ABORT\n"); + $$ = bfin_gen_pseudodbg (3, 3, 0); + } + | DBG { notethat ("pseudoDEBUG: DBG\n"); -- 2.7.4