This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

fix issue with Xtensa assembly idioms


This patch from Sterling Augustine fixes a problem with Xtensa assembly idioms not being recognized inside FLIX (i.e., VLIW) instruction bundles. I've committed it on the mainline.

gas/
	* config/tc-xtensa.c (xg_translate_idioms): Allow assembly idioms
	in FLIX instructions.
	
Index: config/tc-xtensa.c
===================================================================
RCS file: /cvs/src/src/gas/config/tc-xtensa.c,v
retrieving revision 1.77
diff -u -p -r1.77 tc-xtensa.c
--- config/tc-xtensa.c	3 Feb 2007 00:08:22 -0000	1.77
+++ config/tc-xtensa.c	26 Mar 2007 22:58:52 -0000
@@ -2337,9 +2337,6 @@ xg_translate_idioms (char **popname, int
   char *opname = *popname;
   bfd_boolean has_underbar = FALSE;
 
-  if (cur_vinsn.inside_bundle)
-    return 0;
-
   if (*opname == '_')
     {
       has_underbar = TRUE;
@@ -2382,7 +2379,11 @@ xg_translate_idioms (char **popname, int
       return 0;
     }
 
-  if (xtensa_nop_opcode == XTENSA_UNDEFINED
+  /* Don't do anything special with NOPs inside FLIX instructions.  They
+     are handled elsewhere.  Real NOP instructions are always available 
+     in configurations with FLIX, so this should never be an issue but
+     check for it anyway.  */
+  if (!cur_vinsn.inside_bundle && xtensa_nop_opcode == XTENSA_UNDEFINED
       && strcmp (opname, "nop") == 0)
     {
       if (use_transform () && !has_underbar && density_supported)

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]