Array.st
changeset 14623 c433536ae3ab
parent 14380 06aa294b80fa
child 14632 6fe0dc1d5377
--- a/Array.st	Wed Jan 02 13:29:07 2013 +0100
+++ b/Array.st	Wed Jan 02 13:32:00 2013 +0100
@@ -120,7 +120,7 @@
 		__InstPtr(newobj)->o_class = self;
 		__qSTORE(newobj, self);
 
-#if defined(memset4) && defined(FAST_ARRAY_MEMSET4)
+#if (POINTER_SIZE == 4) && defined(memset4) && defined(FAST_ARRAY_MEMSET4)
 		memset4(__InstPtr(newobj)->i_instvars, nil, nInstVars);
 #else
 # if !defined(NEGATIVE_ADDRESSES)
@@ -161,7 +161,7 @@
 		    nInstVars--;
 		}
 #  else
-#   if defined(FAST_ARRAY_MEMSET_LONGLONG_UNROLLED)
+#   if (POINTER_SIZE == 4) && defined(FAST_ARRAY_MEMSET_LONGLONG_UNROLLED)
 #    ifdef INT64
 #     define LONGLONG INT64
 #    else
@@ -190,7 +190,7 @@
 		memset(__InstPtr(newobj)->i_instvars, 0, instsize - OHDR_SIZE);
 #    else
 		op = __InstPtr(newobj)->i_instvars;
-#     if defined(INT64)
+#     if (POINTER_SIZE == 4) && defined(INT64)
 		while (nInstVars > 1) {
 		    *((INT64 *)op) = 0;
 		    nInstVars -= 2;
@@ -765,7 +765,7 @@
 	 */
 	for (; index < nIndex; index++) {
 	    if (InterruptPending != nil) __interruptL(@line);
-
+console_printf("el%d -> %lx\n", index, (long)(__InstPtr(self)->i_instvars[index]));
 	    (*val.ilc_func)(aBlock, 
 				@symbol(value:), 
 				nil, &val, 
@@ -2566,9 +2566,9 @@
 !Array class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/Array.st,v 1.152 2012-10-10 16:30:53 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Array.st,v 1.153 2013-01-02 12:32:00 cg Exp $'
 !
 
 version_CVS
-    ^ '$Header: /cvs/stx/stx/libbasic/Array.st,v 1.152 2012-10-10 16:30:53 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Array.st,v 1.153 2013-01-02 12:32:00 cg Exp $'
 ! !