Changeset 518
- Timestamp:
- 01/18/11 02:04:30 (1 year ago)
- Files:
-
- trunk/src/gc/gcx.d (modified) (9 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/src/gc/gcx.d
r517 r518 2212 2212 if (p >= minAddr && p < maxAddr) 2213 2213 { 2214 if ((cast(size_t)p & ~ (PAGESIZE-1)) == pcache)2214 if ((cast(size_t)p & ~cast(size_t)(PAGESIZE-1)) == pcache) 2215 2215 continue; 2216 2216 … … 2236 2236 //debug(PRINTF) printf("\t\tbiti = x%x\n", biti); 2237 2237 2238 pcache = cast(size_t)p & ~ (PAGESIZE-1);2238 pcache = cast(size_t)p & ~cast(size_t)(PAGESIZE-1); 2239 2239 } 2240 2240 else if (bin == B_PAGEPLUS) … … 2245 2245 biti = pn * (PAGESIZE / 16); 2246 2246 2247 pcache = cast(size_t)p & ~ (PAGESIZE-1);2247 pcache = cast(size_t)p & ~cast(size_t)(PAGESIZE-1); 2248 2248 } 2249 2249 else … … 2453 2453 auto bbase = pool.scan.base(); 2454 2454 auto btop = bbase + pool.scan.nwords; 2455 //printf("\t\tn = %d, bbase = %p, btop = %p\n", n, bbase, btop); 2455 2456 for (auto b = bbase; b < btop;) 2456 2457 { … … 2462 2463 *b = 0; 2463 2464 2464 auto o = pool.baseAddr + (b - bbase) * 32* 16;2465 auto o = pool.baseAddr + (b - bbase) * (typeof(bitm).sizeof*8) * 16; 2465 2466 if (!(bitm & 0xFFFF)) 2466 2467 { … … 2813 2814 { 2814 2815 //debug(PRINTF) printf("+log_free(%p)\n", p); 2815 size_t i; 2816 2817 i = current.find(p); 2816 auto i = current.find(p); 2818 2817 if (i == OPFAIL) 2819 2818 { … … 2835 2834 for (size_t i = 0; i < current.dim; i++) 2836 2835 { 2837 size_t j; 2838 2839 j = prev.find(current.data[i].p); 2836 auto j = prev.find(current.data[i].p); 2840 2837 if (j == OPFAIL) 2841 2838 current.data[i].print(); … … 2847 2844 for (size_t i = 0; i < current.dim; i++) 2848 2845 { 2849 void *p; 2850 size_t j; 2851 2852 p = current.data[i].p; 2846 void* p = current.data[i].p; 2853 2847 if (!findPool(current.data[i].parent)) 2854 2848 { 2855 j = prev.find(current.data[i].p);2849 auto j = prev.find(current.data[i].p); 2856 2850 if (j == OPFAIL) 2857 2851 debug(PRINTF) printf("N"); … … 2872 2866 { 2873 2867 //debug(PRINTF) printf("+log_parent()\n"); 2874 size_t i; 2875 2876 i = current.find(p); 2868 auto i = current.find(p); 2877 2869 if (i == OPFAIL) 2878 2870 {
