changeset 35762:e197a82c3286

(Fmake_list): Add a QUIT in the loop; unroll the loop.
author Gerd Moellmann <gerd@gnu.org>
date Wed, 31 Jan 2001 12:22:25 +0000
parents 9c27903fdec4
children fd5fff17b09a
files src/alloc.c
diffstat 1 files changed, 32 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/alloc.c	Wed Jan 31 12:14:44 2001 +0000
+++ b/src/alloc.c	Wed Jan 31 12:22:25 2001 +0000
@@ -2142,8 +2142,38 @@
   size = XFASTINT (length);
 
   val = Qnil;
-  while (size-- > 0)
-    val = Fcons (init, val);
+  while (size > 0)
+    {
+      val = Fcons (init, val);
+      --size;
+
+      if (size > 0)
+	{
+	  val = Fcons (init, val);
+	  --size;
+      
+	  if (size > 0)
+	    {
+	      val = Fcons (init, val);
+	      --size;
+      
+	      if (size > 0)
+		{
+		  val = Fcons (init, val);
+		  --size;
+      
+		  if (size > 0)
+		    {
+		      val = Fcons (init, val);
+		      --size;
+		    }
+		}
+	    }
+	}
+
+      QUIT;
+    }
+  
   return val;
 }