]> gcc.gnu.org Git - gcc.git/blobdiff - gcc/expr.c
expr.c (emit_queue): If emitting a SEQUENCE, set QUEUED_INSN to the first insn of...
[gcc.git] / gcc / expr.c
index a7abc5ab8323c7211577c457463c0d321cd6c318..b9c0e1812443daf54421d3d35a2c53eab2975b02 100644 (file)
@@ -522,7 +522,15 @@ emit_queue ()
   register rtx p;
   while ((p = pending_chain))
     {
-      QUEUED_INSN (p) = emit_insn (QUEUED_BODY (p));
+      rtx body = QUEUED_BODY (p);
+
+      if (GET_CODE (body) == SEQUENCE)
+       {
+         QUEUED_INSN (p) = XVECEXP (QUEUED_BODY (p), 0, 0);
+         emit_insn (QUEUED_BODY (p));
+       }
+      else
+       QUEUED_INSN (p) = emit_insn (QUEUED_BODY (p));
       pending_chain = QUEUED_NEXT (p);
     }
 }
This page took 0.041327 seconds and 5 git commands to generate.