def possibleDataWithCondition1(addr): """ addr :: int return :: int """ assert (isinstance(addr, int)) firstOverlapPackS = None packId = self.totalNumPacks() - 1 while packId >= 0: packS = self.packStateList()[packId] if (packS.isEnd() and packS.pack().isWrite() and hasAddr(packS.pack(), addr)): firstOverlapPackS = packS break packId -= 1 if firstOverlapPackS is None: return dataAt(self.fStorage(), addr) else: return dataAt(firstOverlapPackS.pack(), addr)
def possibleDataWithCondition1(addr): """ addr :: int return :: int """ assert(isinstance(addr, int)) firstOverlapPackS = None packId = self.totalNumPacks() - 1 while packId >= 0: packS = self.packStateList()[packId] if (packS.isEnd() and packS.pack().isWrite() and hasAddr(packS.pack(), addr)): firstOverlapPackS = packS break packId -= 1 if firstOverlapPackS is None: return dataAt(self.fStorage(), addr) else: return dataAt(firstOverlapPackS.pack(), addr)
def f1(packS): assert (isinstance(packS, PackState)) return (packS.isBegin() and packS.pack().isWrite() and hasAddr(packS.pack(), addr))
def checkValidAddr(self, addr): assert (isinstance(addr, int)) assert (hasAddr(self.pack(), addr))
def f1(packS): assert(isinstance(packS, PackState)) return (packS.isBegin() and packS.pack().isWrite() and hasAddr(packS.pack(), addr))
def checkValidAddr(self, addr): assert(isinstance(addr, int)) assert(hasAddr(self.pack(), addr))