+start-sanitize-sky
+Mon Apr  6 17:08:47 1998  Doug Evans  <devans@canuck.cygnus.com>
+
+       * config/tc-dvp.c (assemble_vif): Watch for macro insns.
+
+end-sanitize-sky
 Mon Apr  6 12:06:39 1998  Andreas Schwab  <schwab@issan.informatik.uni-dortmund.de>
 
        * config/tc-m68k.c (m68k_ip, case "#B"): Install the offset of the
 
   const char *file;
   /* Length in 32 bit words.  */
   int data_len;
+  /* Macro expansion, if there is one.  */
+  char * macstr;
+
+  /* First check for macros.  */
+  macstr = dvp_expand_macro (vif_macros, vif_macro_count, str);
+  if (macstr)
+    {
+      /* The macro may expand into several insns (delimited with '\n'),
+        so loop.  */
+      char * next = macstr;
+      do
+       {
+         char *p = strchr (next, '\n');
+         if (p)
+           *p = 0;
+         assemble_vif (next);
+         next = p ? p + 1 : 0;
+       }
+      while (next);
+      free (macstr);
+      return;
+    }
 
   opcode = assemble_one_insn (DVP_VIF,
                              vif_opcode_lookup_asm (str), vif_operands,