Changeset 305 for trunk/mem.c
- Timestamp:
- 12/08/2006 04:11:19 PM (2 years ago)
- Files:
-
- 1 modified
-
trunk/mem.c (modified) (10 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/mem.c
r302 r305 15 15 16 16 #ifdef TEST 17 # define ALLOC_DEBUG18 #endif 19 #ifdef ALLOC_DEBUG17 # define DEBUG 18 #endif 19 #ifdef DEBUG 20 20 # define ALLOC_DEBUG_BLOCK_CHECK 21 21 #endif … … 91 91 realsize = ALIGN(realsize); 92 92 93 #ifdef ALLOC_DEBUG 94 fprintf(stderr, "avail: %d (%dKB). Allocate size: %d realsize: %d (%dKB)" 93 TRACE("avail: %d (%dKB). Allocate size: %d realsize: %d (%dKB)" 95 94 , mem->avail, mem->avail / 1024 96 95 , size 97 96 , realsize, realsize / 1024 98 97 ); 99 #endif100 98 do { 101 99 p = NULL; 102 100 if (mem->avail < realsize) { 103 #ifdef ALLOC_DEBUG 104 fprintf(stderr, " oom\n"); 105 #endif 101 TRACE(" oom"); 106 102 break; 107 103 } … … 132 128 133 129 if (b == NULL) { 134 #ifdef ALLOC_DEBUG 135 fprintf(stderr, " no fit chunk\n"); 136 #endif 130 TRACE(" no fit chunk"); 137 131 break; 138 132 } … … 149 143 if (cur->size == realsize) { 150 144 prev->next = cur->next; 151 #ifdef ALLOC_DEBUG 152 fprintf(stderr, " perfect fit. Got: %p\n", p); 153 #endif 145 TRACE(" perfect fit. Got: %p", p); 154 146 break; 155 147 } … … 169 161 */ 170 162 171 #ifdef ALLOC_DEBUG 172 fprintf(stderr, " -> avail: %d (%dKB). new next: %p offset: %d %dKB. Got: %p\n" 163 TRACE(" -> avail: %d (%dKB). new next: %p offset: %d %dKB. Got: %p" 173 164 , mem->avail, mem->avail / 1024 174 165 , newb … … 176 167 , p 177 168 ); 178 #endif179 169 prev->next = newb; 180 170 /* prev|cur|newb|next … … 193 183 194 184 cur = (xc_block_t *) (CHAR_PTR(p) - BLOCK_HEADER_SIZE()); 195 #ifdef ALLOC_DEBUG 196 fprintf(stderr, "freeing: %p", p); 197 fprintf(stderr, ", size=%d", cur->size); 198 #endif 185 TRACE("freeing: %p, size=%d", p, cur->size); 199 186 xc_block_check(cur); 200 187 assert((char*)mem < (char*)cur && (char*)cur < (char*)mem + mem->size); … … 211 198 size = cur->size; 212 199 213 #ifdef ALLOC_DEBUG 214 fprintf(stderr, ", avail %d (%dKB)", mem->avail, mem->avail / 1024); 215 #endif 200 TRACE(" avail %d (%dKB)", mem->avail, mem->avail / 1024); 216 201 mem->avail += size; 217 202 … … 221 206 b->next = cur->next; 222 207 cur = b; 223 #ifdef ALLOC_DEBUG 224 fprintf(stderr, ", combine prev"); 225 #endif 208 TRACE(" combine prev"); 226 209 } 227 210 … … 231 214 cur->size += b->size; 232 215 cur->next = b->next; 233 #ifdef ALLOC_DEBUG 234 fprintf(stderr, ", combine next"); 235 #endif 236 } 237 #ifdef ALLOC_DEBUG 238 fprintf(stderr, " -> avail %d (%dKB)\n", mem->avail, mem->avail / 1024); 239 #endif 216 TRACE(" combine next"); 217 } 218 TRACE(" -> avail %d (%dKB)", mem->avail, mem->avail / 1024); 240 219 return size; 241 220 }

