[Gems-users] Bug in SimicsProcessor.c


Date: Mon, 28 Jul 2008 16:05:02 +0200
From: "Rubén Titos" <rtitos@xxxxxxxxxxx>
Subject: [Gems-users] Bug in SimicsProcessor.c
Apologies for the irrelevant subject of my previous email! :)  I thought I'd send it again, to make it easier for others to search the list

------------------

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/



--
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→]
  • [Gems-users] Bug in SimicsProcessor.c, Rubén Titos <=