aboutsummaryrefslogtreecommitdiff
path: root/tests/dlmalloc.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/dlmalloc.c')
-rw-r--r--tests/dlmalloc.c32
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/dlmalloc.c b/tests/dlmalloc.c
index 93bacc63..e6bf434d 100644
--- a/tests/dlmalloc.c
+++ b/tests/dlmalloc.c
@@ -5709,16 +5709,20 @@ int main(int ac, char **av)
char* allocations[NUM];
for (int i = 0; i < NUM/2; i++) {
allocations[i] = (char*)malloc((11*i)%1024 + x);
+ //printf("zz alloc: %d\n", (int)allocations[i]);
assert(allocations[i]);
if (i > 10 && i%4 == 1 && allocations[i-10]) {
+ //printf("zz free: %d\n", (int)allocations[i-10]);
free(allocations[i-10]);
allocations[i-10] = NULL;
}
}
for (int i = NUM/2; i < NUM; i++) {
allocations[i] = (char*)malloc(1024*(i+1));
+ //printf("zz alloc: %d\n", (int)allocations[i]);
assert(allocations[i]);
if (i > 10 && i%4 != 1 && allocations[i-10]) {
+ //printf("zz free: %d\n", (int)allocations[i-10]);
free(allocations[i-10]);
allocations[i-10] = NULL;
}
@@ -5726,14 +5730,42 @@ int main(int ac, char **av)
char* first = allocations[0];
for (int i = 0; i < NUM; i++) {
if (allocations[i]) {
+ //printf("zz free: %d\n", (int)allocations[i]);
free(allocations[i]);
}
}
char *last = (char*)malloc(512); // should be identical, as we free'd it all
+ //printf("zz last: %d\n", (int)last);
char *newer = (char*)malloc(512); // should be different
+ //printf("zz newer: %d\n", (int)newer);
c1 += first == last;
c2 += first == newer;
}
printf("*%d,%d*\n", c1, c2);
}
+/* Some debugging tools: Make JS and native code work exactly the same */
+/*
+time_t time ( time_t * timer )
+{
+ if (timer) *timer = 1;
+ return 1;
+}
+
+long sysconf(int name)
+{
+ printf("sysconf: %d (30 is page size)\n", name);
+ return 4096;
+}
+
+void *sbrk(intptr_t increment)
+{
+ static char spaace[1024*1024*1];
+ static intptr_t where = 0;
+ printf("sbrk! spaace=%d (%d,%d)\n", (int)&spaace[0], where, increment); // copy the value printed at runtime here in native code into your js
+ void *ret = &spaace[where];
+ where += increment;
+ return ret;
+}
+*/
+