- DEBUG("addr = %p, val = %" PRIu64 "\n", addr, val);
- thread_id_t tid=thread_current()->get_id();
- ClockVector * cv=model->get_cv(tid);
- raceCheckWrite(tid, addr, cv);
- raceCheckWrite(tid, (void *)(((uintptr_t)addr)+1), cv);
- raceCheckWrite(tid, (void *)(((uintptr_t)addr)+2), cv);
- raceCheckWrite(tid, (void *)(((uintptr_t)addr)+3), cv);
- raceCheckWrite(tid, (void *)(((uintptr_t)addr)+4), cv);
- raceCheckWrite(tid, (void *)(((uintptr_t)addr)+5), cv);
- raceCheckWrite(tid, (void *)(((uintptr_t)addr)+6), cv);
- raceCheckWrite(tid, (void *)(((uintptr_t)addr)+7), cv);
- (*(uint64_t *)addr) = val;
+ //DEBUG("addr = %p, val = %" PRIu64 "\n", addr, val);
+ if (!model)
+ return;
+ thread_id_t tid = thread_current_id();
+ raceCheckWrite64(tid, addr);