public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] Fix reduce/reduce conflicts in Blackfin gas
@ 2008-09-26  4:51 Jie Zhang
  0 siblings, 0 replies; only message in thread
From: Jie Zhang @ 2008-09-26  4:51 UTC (permalink / raw)
  To: binutils

[-- Attachment #1: Type: text/plain, Size: 386 bytes --]

I committed this patch to fix the following two reduce/reduce conflicts:

    92 asm_1: HALF_REG ASSIGN HALF_REG LESS_LESS expr .
    93      | HALF_REG ASSIGN HALF_REG LESS_LESS expr . smod

     DOUBLE_BAR  reduce using rule 92 (asm_1)
     DOUBLE_BAR  [reduce using rule 260 (smod)]
     SEMICOLON   reduce using rule 92 (asm_1)
     SEMICOLON   [reduce using rule 260 (smod)]


Jie

[-- Attachment #2: bfin-gas-fix-reduce-reduce-conflicts.diff --]
[-- Type: text/x-patch, Size: 1256 bytes --]


	* config/bfin-parse.y (asm_1): Fix reduce/reduce conflicts.

Index: config/bfin-parse.y
===================================================================
--- config/bfin-parse.y	(revision 2892)
+++ config/bfin-parse.y	(working copy)
@@ -1939,22 +1939,20 @@ asm_1:   
 	  else
 	    return yyerror ("Bad shift value or register");
 	}
-	| HALF_REG ASSIGN HALF_REG LESS_LESS expr
-	{
-	  if (IS_UIMM ($5, 4))
-	    {
-	      notethat ("dsp32shiftimm: dregs_half = dregs_half << uimm4\n");
-	      $$ = DSP32SHIFTIMM (0x0, &$1, imm5 ($5), &$3, 2, HL2 ($1, $3));
-	    }
-	  else
-	    return yyerror ("Bad shift value");
-	}
 	| HALF_REG ASSIGN HALF_REG LESS_LESS expr smod 
 	{
 	  if (IS_UIMM ($5, 4))
 	    {
-	      notethat ("dsp32shiftimm: dregs_half = dregs_half << uimm4\n");
-	      $$ = DSP32SHIFTIMM (0x0, &$1, imm5 ($5), &$3, $6.s0, HL2 ($1, $3));
+	      if ($6.s0)
+		{
+		  notethat ("dsp32shiftimm: dregs_half = dregs_half << uimm4 (S)\n");
+		  $$ = DSP32SHIFTIMM (0x0, &$1, imm5 ($5), &$3, $6.s0, HL2 ($1, $3));
+		}
+	      else
+		{
+		  notethat ("dsp32shiftimm: dregs_half = dregs_half << uimm4\n");
+		  $$ = DSP32SHIFTIMM (0x0, &$1, imm5 ($5), &$3, 2, HL2 ($1, $3));
+		}
 	    }
 	  else
 	    return yyerror ("Bad shift value");

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2008-09-26  4:51 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-09-26  4:51 [PATCH] Fix reduce/reduce conflicts in Blackfin gas Jie Zhang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).