//----------------------------------------------------------------------------- // Function: FieldGraphItem::updateDisplay() //----------------------------------------------------------------------------- void FieldGraphItem::updateDisplay() { setName(field_->getName()); quint64 leftBound = getLastAddress(); quint64 rightBound = getOffset(); setLeftTopCorner(QString::number(leftBound)); setRightTopCorner(QString::number(rightBound)); setDisplayOffset(leftBound); setDisplayLastAddress(rightBound); setToolTip("<b>" + getName() + "</b> [" + QString::number(leftBound) + ".." + QString::number(rightBound) + "]"); }
//----------------------------------------------------------------------------- // Function: RegisterGraphItem::updateDisplay() //----------------------------------------------------------------------------- void RegisterGraphItem::updateDisplay() { QString name = register_->getName(); if (expressionParser_->parseExpression(register_->getDimensionExpression()).toUInt() > 0) { name.append("[" + QString::number(dimensionIndex_) + "]"); } quint64 offset = getOffset(); quint64 lastAddress = getLastAddress(); setName(name); setDisplayOffset(offset); setDisplayLastAddress(lastAddress); // Set tooltip to show addresses in hexadecimals. setToolTip("<b>Name: </b>" + register_->getName() + "<br>" + "<b>First address: </b>" + toHexString(offset) + "<br>" + "<b>Last address: </b>" + toHexString(lastAddress) + "<br>" + "<b>Size [bits]: </b>" + expressionParser_->parseExpression(register_->getSizeExpression())); }
bool ReadAheadDecisionMaker::statCacheAccess(qulonglong address) { qDebug() << "RA_try "<< address; if (address == getLastAddress()+1){ // Sequental pattern match incrementCurrentAccessSequence(); if ( isCurrentAccessSequenceEnughForRA() ){ // RA is turned ON enableReadAhead(true); setCurrentAccessSequence(0); } }else{ // Sequental pattern breack setCurrentAccessSequence(0); } setLastAddress(address); checkReadAheadAddress(address); return isReadAheadOn(); }
char* my_evil_str(char *str) { char *firstAddress; char *lastAddress; char strlen; char i; char tmp; firstAddress = str; lastAddress = getLastAddress(str); strlen = (lastAddress - firstAddress) + 1; i = 0; while (i < (strlen / 2)) { tmp = *firstAddress; *firstAddress = *lastAddress; *lastAddress = tmp; firstAddress = firstAddress + 1; lastAddress = lastAddress - 1; i = i + 1; } return (str); }