Date: | Mon, 28 Jul 2008 16:00:08 +0200 |
---|---|
From: | "Rubén Titos" <rtitos@xxxxxxxxxxx> |
Subject: | Re: [Gems-users] How to abort a transaction at commit time |
Dear Dan,
I just run into a simple bug that remains silent most of the time, but appears when running transactional apps if you previously compile without the -DNO_VECTOR_BOUNDS_CHECKS flag. The error is obvious (in SimicsProcessor.C): When the outcome of the memory transaction is 2, the active request vector is cleared and right after such vector is accessed to set the status (see code fragment below). Cheers, Ruben ----------------------- $GEMS/ruby/simics/SimicsProcessor.C:364 if (XACT_MEMORY){ ... } else if (outcome == 2) { clearActiveRequestVector(); m_active_requests[idx].status = Retry; } else { ... } } -- Rubén Titos Parallel Computing and Architecture Group Computer Engineering Dept. University of Murcia http://skywalker.inf.um.es/~rtitos/ |
[← Prev in Thread] | Current Thread | [Next in Thread→] |
---|---|---|
|
Previous by Date: | Re: [Gems-users] Asymmetric Memories, Greg Byrd |
---|---|
Next by Date: | [Gems-users] Bug in SimicsProcessor.c, Rubén Titos |
Previous by Thread: | [Gems-users] Global control with SLICC, pana |
Next by Thread: | [Gems-users] How to stop simulation automaticly while program finish execution?, huitzu shih |
Indexes: | [Date] [Thread] |