DWORD curtick = GetTickCount(); if(curtick >= (entry->tick + HIT_INTERVAL)) {     entry->hits++; entry->tick = curtick; }
Log(void* addr){static int initialized = 0;    addr = (void*) ((unsigned) addr - 5);    if (! initialized) {        initialized = 1;        PL_DHashTableInit(&Calls, &Ops, 0, sizeof(CallEntry), 16);    }    CallEntry* entry        = (CallEntry*) PL_DHashTableOperate(&Calls, addr, PL_DHASH_LOOKUP);    if (PL_DHASH_ENTRY_IS_FREE(&entry->hdr)) {        entry = (CallEntry*) PL_DHashTableOperate(&Calls, addr, PL_DHASH_ADD);        entry->addr = addr;        entry->count = 0;    }    ++entry->count;}