comparison runtime/fixed_alloc.c @ 67:d1569087348f

Some small optimizations
author Mike Pavone <pavone@retrodev.com>
date Mon, 07 Jun 2010 01:15:16 -0400
parents 3e20ed8959c4
children 5a195ee08eac
comparison
equal deleted inserted replaced
66:d4b44ae2e34a 67:d1569087348f
35 block = manager->freelist; 35 block = manager->freelist;
36 if(block) 36 if(block)
37 { 37 {
38 --manager->freecount; 38 --manager->freecount;
39 manager->freelist = block->next; 39 manager->freelist = block->next;
40 memset(block, 0xCD, BLOCK_SIZE); 40 //memset(block, 0xCD, BLOCK_SIZE);
41 } 41 }
42 else 42 else
43 { 43 {
44 block = block_alloc(BLOCK_SIZE); 44 block = block_alloc(BLOCK_SIZE);
45 memset(block, 0xAB, BLOCK_SIZE); 45 //memset(block, 0xAB, BLOCK_SIZE);
46 } 46 }
47 manager->inuse[bucket] = block; 47 manager->inuse[bucket] = block;
48 block->next = NULL; 48 block->next = NULL;
49 block->last = NULL; 49 block->last = NULL;
50 block->numfree = max_free[bucket]; 50 block->numfree = max_free[bucket];
93 free(ptr); 93 free(ptr);
94 return; 94 return;
95 } 95 }
96 //puts("ffree"); 96 //puts("ffree");
97 size = ADJUST_SIZE(size); 97 size = ADJUST_SIZE(size);
98 memset(ptr, 0xEF, size); 98 //memset(ptr, 0xEF, size);
99 block = GET_BLOCK(ptr); 99 block = GET_BLOCK(ptr);
100 i = (((((char *)block) + BLOCK_SIZE) - ((char *)ptr))/size)-1; 100 i = (((((char *)block) + BLOCK_SIZE) - ((char *)ptr))/size)-1;
101 bit = i & 0x7; 101 bit = i & 0x7;
102 i = (i&0xFFFFFFF8) >> 3; 102 i = (i&0xFFFFFFF8) >> 3;
103 //printf("ptr:%X,block:%X,i:%d,bit:%d\n", ptr,block,bit,i); 103 //printf("ptr:%X,block:%X,i:%d,bit:%d\n", ptr,block,bit,i);