AddrRange ModificationMap::getAddrRange() { if(isEmpty()) { return AddrRange(); } else { const Set<__int64> set = keySet(); return AddrRange(set.getMin(), set.getMax()); } }
AddrRangeList BridgeClassicToAMBATLM2<BUSWIDTH>::BridgeSlavePort::getAddrRanges() const { //FIXME: Ugly hack: whole address range minus small portion AddrRangeList resp; resp.push_back(AddrRange(0x0,0xFFFFFFF)); resp.push_back(AddrRange(0x20000000,0xFFFFFFFF)); return resp; }
//UGLY FIX ME ASAP, SimpleMemory uses mmap on the range size, 0 triggers an error SimpleMemoryParams* BridgeClassicToAMBATLM2_init(SimpleMemoryParams* pm) { pm->in_addr_map=true; pm->zero=true; pm->conf_table_reported=true; pm->latency=0; pm->latency_var=0; pm->null=true; pm->port_port_connection_count=1; pm->range = AddrRange(0x0,0xFFFFFFFF); pm->clock=1; return pm; }
AddrRange CHexViewView::getSelection() const { return hasAnchor() ? AddrRange(m_anchor, getCurrentAddr()) : AddrRange(); }
BasicBlock *Program::getBasicBlockCovering(ByteAddr address) const { return nc::find(range2basicBlock_, AddrRange(address, address + 1)); }
void Program::removeRange(BasicBlock *basicBlock) { assert(basicBlock != NULL); assert(basicBlock->address() && basicBlock->successorAddress() && "Basic block must be memory-bound."); range2basicBlock_.erase(AddrRange(*basicBlock->address(), *basicBlock->successorAddress())); }
void Program::addRange(BasicBlock *basicBlock) { assert(basicBlock != NULL); assert(basicBlock->address() && basicBlock->successorAddress() && "Basic block must be memory-bound."); range2basicBlock_[AddrRange(*basicBlock->address(), *basicBlock->successorAddress())] = basicBlock; }