5 #include "runtime_arch.h"
7 /*void * m_calloc(int m, int size) {
8 void * p = malloc(m*size);
10 for(i = 0; i < size; ++i) {
16 void * mycalloc(int m, int size) {
18 int isize = 2*kCacheLineSize-4+(size-1)&(~kCacheLineMask);
19 BAMBOO_START_CRITICAL_SECTION_MEM();
20 p = BAMBOO_SHARE_MEM_CALLOC(m, isize); // calloc(m, isize);
21 BAMBOO_CLOSE_CRITICAL_SECTION_MEM();
22 return (void *)(kCacheLineSize+((int)p-1)&(~kCacheLineMask));
25 void * mycalloc_i(int m, int size) {
27 int isize = 2*kCacheLineSize-4+(size-1)&(~kCacheLineMask);
28 p = BAMBOO_SHARE_MEM_CALLOC(m, isize); // calloc(m, isize);
29 return (void *)(kCacheLineSize+((int)p-1)&(~kCacheLineMask));
32 void myfree(void * ptr) {