* config/tc-xtensa.c (xg_translate_idioms): Allow assembly idioms
authorBob Wilson <bob.wilson@acm.org>
Mon, 26 Mar 2007 23:01:46 +0000 (23:01 +0000)
committerBob Wilson <bob.wilson@acm.org>
Mon, 26 Mar 2007 23:01:46 +0000 (23:01 +0000)
in FLIX instructions.

gas/ChangeLog
gas/config/tc-xtensa.c

index 327863d..b8591f9 100644 (file)
@@ -1,3 +1,8 @@
+2007-03-26  Sterling Augustine  <sterling@tensilica.com>
+       
+       * config/tc-xtensa.c (xg_translate_idioms): Allow assembly idioms
+       in FLIX instructions.
+       
 2007-03-26  Julian Brown  <julian@codesourcery.com>
 
        * config/tc-arm.c (arm_it): Add immisfloat field.
index 7ef9f51..2531ac9 100644 (file)
@@ -2337,9 +2337,6 @@ xg_translate_idioms (char **popname, int *pnum_args, char **arg_strings)
   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 *pnum_args, char **arg_strings)
       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)