gem5  v21.1.0.0
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Functions | Variables
circlebuf.test.cc File Reference
#include <gmock/gmock.h>
#include <gtest/gtest.h>
#include <vector>
#include "base/circlebuf.hh"

Go to the source code of this file.

Functions

template<typename T >
std::vector< T > subArr (T *arr, int size, int offset=0)
 
 TEST (CircleBufTest, BasicReadWriteNoOverflow)
 
 TEST (CircleBufTest, SingleWriteOverflow)
 
 TEST (CircleBufTest, MultiWriteOverflow)
 
 TEST (CircleBufTest, PointerWrapAround)
 
 TEST (CircleBufTest, ProduceConsumeEmpty)
 

Variables

const char data []
 

Function Documentation

◆ subArr()

template<typename T >
std::vector<T> subArr ( T *  arr,
int  size,
int  offset = 0 
)

Definition at line 57 of file circlebuf.test.cc.

References gem5::ArmISA::offset.

Referenced by TEST().

◆ TEST() [1/5]

TEST ( CircleBufTest  ,
BasicReadWriteNoOverflow   
)

◆ TEST() [2/5]

TEST ( CircleBufTest  ,
MultiWriteOverflow   
)

◆ TEST() [3/5]

TEST ( CircleBufTest  ,
PointerWrapAround   
)

◆ TEST() [4/5]

TEST ( CircleBufTest  ,
ProduceConsumeEmpty   
)

◆ TEST() [5/5]

TEST ( CircleBufTest  ,
SingleWriteOverflow   
)

Variable Documentation

◆ data

const char data[]
Initial value:
= {
0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7,
0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf,
}

Definition at line 48 of file circlebuf.test.cc.

Referenced by gem5::cp::_formatChar(), gem5::cp::_formatFloat(), gem5::cp::_formatInteger(), gem5::cp::_formatString(), gem5::IdeController::Channel::accessBMI(), gem5::IdeController::Channel::accessCommand(), gem5::IdeController::Channel::accessControl(), gem5::cp::Print::addArg(), gem5::ArmISA::addPAC(), gem5::networking::EthAddr::addr(), gem5::ruby::CacheRecorder::addRecord(), gem5::compression::Zero::addToDictionary(), gem5::compression::RepeatedQwords::addToDictionary(), gem5::compression::CPack::addToDictionary(), gem5::compression::BaseDelta< uint64_t, 16 >::addToDictionary(), gem5::compression::FPCD::addToDictionary(), gem5::AtomicSimpleCPU::amoMem(), gem5::SimpleExecContext::amoMem(), gem5::statistics::Hdf5::appendStat(), gem5::RiscvProcess::argsInit(), gem5::arrayParamIn(), gem5::ruby::DataBlock::assign(), gem5::ruby::GPUCoalescer::atomicCallback(), gem5::ArmISA::auth(), gem5::networking::EthAddr::broadcast(), gem5::TimingSimpleCPU::buildSplitPacket(), gem5::networking::EthAddr::bytes(), gem5::ArmISA::calculateTBI(), checkExpectedDistData(), gem5::MemChecker::ByteTracker::completeRead(), gem5::MemChecker::completeRead(), gem5::compression::Multi::compress(), gem5::compression::Base::compress(), gem5::compression::DictionaryCompressor< uint64_t >::compressValue(), gem5::QARMA::computePAC(), gem5::PacketFifo::copyout(), gem5::GenericTimerMem::counterCtrlWrite(), gem5::crc32(), gem5::ArmISA::TableWalker::Port::createPacket(), gem5::compression::Perfect::decompress(), gem5::compression::FrequentValues::decompress(), gem5::compression::DictionaryCompressor< uint64_t >::decompress(), gem5::compression::DictionaryCompressor< T >::UncompressedPattern::decompress(), gem5::compression::DictionaryCompressor< uint64_t >::decompressValue(), gem5::IdeController::dispatchAccess(), gem5::DmaPort::dmaAction(), gem5::DmaDevice::dmaRead(), gem5::DmaVirtDevice::dmaReadVirt(), gem5::DmaVirtDevice::dmaVirt(), gem5::DmaDevice::dmaWrite(), gem5::DmaVirtDevice::dmaWriteVirt(), gem5::Shader::doFunctionalAccess(), gem5::BaseKvmCPU::doMMIOAccess(), gem5::SparcISA::TLB::doMmuRegWrite(), gem5::Trace::Logger::dump(), gem5::VirtDescriptor::dump(), gem5::VirtIO9PBase::dumpMsg(), gem5::loader::ElfObject::ElfObject(), SimpleLTInitiator2_dmi::end_of_simulation(), SimpleLTInitiator1_dmi::end_of_simulation(), SimpleLTInitiator_ext::end_of_simulation(), EndBitUnion(), gem5::networking::EthAddr::EthAddr(), gem5::Gcn3ISA::Inst_DS__DS_WRITE_B32::execute(), gem5::VegaISA::Inst_DS__DS_WRITE_B32::execute(), gem5::Gcn3ISA::Inst_DS__DS_WRITE_B8::execute(), gem5::Gcn3ISA::Inst_DS__DS_WRITE_B16::execute(), gem5::VegaISA::Inst_DS__DS_WRITE_B8::execute(), gem5::VegaISA::Inst_DS__DS_WRITE_B16::execute(), gem5::Gcn3ISA::Inst_DS__DS_SWIZZLE_B32::execute(), gem5::Gcn3ISA::Inst_DS__DS_PERMUTE_B32::execute(), gem5::Gcn3ISA::Inst_DS__DS_BPERMUTE_B32::execute(), gem5::VegaISA::Inst_DS__DS_SWIZZLE_B32::execute(), gem5::VegaISA::Inst_DS__DS_PERMUTE_B32::execute(), gem5::VegaISA::Inst_DS__DS_BPERMUTE_B32::execute(), gem5::Gcn3ISA::Inst_DS__DS_WRITE_B64::execute(), gem5::VegaISA::Inst_DS__DS_WRITE_B64::execute(), gem5::Gcn3ISA::Inst_MUBUF__BUFFER_STORE_BYTE::execute(), gem5::Gcn3ISA::Inst_MUBUF__BUFFER_STORE_SHORT::execute(), gem5::Gcn3ISA::Inst_MUBUF__BUFFER_STORE_DWORD::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_STORE_BYTE::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_STORE_SHORT::execute(), gem5::VegaISA::Inst_MUBUF__BUFFER_STORE_DWORD::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_STORE_BYTE::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_STORE_SHORT::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_STORE_DWORD::execute(), gem5::VegaISA::Inst_FLAT__FLAT_STORE_BYTE::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_STORE_DWORDX2::execute(), gem5::VegaISA::Inst_FLAT__FLAT_STORE_SHORT::execute(), gem5::VegaISA::Inst_FLAT__FLAT_STORE_DWORD::execute(), gem5::VegaISA::Inst_FLAT__FLAT_STORE_DWORDX2::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_ATOMIC_SWAP::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_ATOMIC_CMPSWAP::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_ATOMIC_ADD::execute(), gem5::VegaISA::Inst_FLAT__FLAT_ATOMIC_SWAP::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_ATOMIC_SUB::execute(), gem5::VegaISA::Inst_FLAT__FLAT_ATOMIC_CMPSWAP::execute(), gem5::VegaISA::Inst_FLAT__FLAT_ATOMIC_ADD::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_ATOMIC_INC::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_ATOMIC_DEC::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_ATOMIC_CMPSWAP_X2::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_ATOMIC_ADD_X2::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_ATOMIC_SUB_X2::execute(), gem5::VegaISA::Inst_FLAT__FLAT_ATOMIC_CMPSWAP_X2::execute(), gem5::VegaISA::Inst_FLAT__FLAT_ATOMIC_ADD_X2::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_ATOMIC_INC_X2::execute(), gem5::Gcn3ISA::Inst_FLAT__FLAT_ATOMIC_DEC_X2::execute(), gem5::networking::Ip6Hdr::extensionLength(), gem5::ArmISA::TableWalker::fetchDescriptor(), gem5::ArmISA::TableWalker::Stage2Walk::finish(), gem5::cp::formatChar(), gem5::cp::formatFloat(), gem5::cp::formatInteger(), gem5::cp::formatString(), gem5::compression::Base::fromChunks(), gem5::ruby::RubyRequest::functionalWrite(), gem5::RiscvISA::CSROp::generateDisassembly(), gem5::linux::ThreadInfo::get_data(), gem5::KvmDevice::getAttr(), gem5::KvmDevice::getAttrPtr(), gem5::networking::Ip6Hdr::getExt(), gem5::cp::Print::getNumber(), gem5::X86KvmCPU::handleIOMiscReg32(), gem5::RubyTester::hitCallback(), gem5::ruby::Sequencer::hitCallback(), gem5::ruby::GPUCoalescer::hitCallback(), gem5::ps2::Device::hostRead(), gem5::TimingSimpleCPU::htmSendAbortSignal(), gem5::RegisterBank< BankByteOrder >::Register< BackingType >::htoreg(), gem5::MemChecker::ByteTracker::inExpectedData(), gem5::TimingSimpleCPU::initiateHtmCmd(), gem5::Check::initiatePrefetch(), gem5::SimpleCache::insert(), gem5::ruby::SubBlock::internalMergeTo(), SimpleLTInitiator2_dmi::invalidate_direct_mem_ptr(), SimpleLTInitiator1_dmi::invalidate_direct_mem_ptr(), SimpleLTInitiator_ext::invalidate_direct_mem_ptr(), gem5::compression::FPC::SignExtendedTwoHalfwords::isPattern(), gem5::compression::DictionaryCompressor< T >::SignExtendedPattern< N >::isPattern(), gem5::GpuWavefront::issueAtomicOps(), gem5::DmaThread::issueLoadOps(), gem5::GpuWavefront::issueLoadOps(), gem5::minor::LSQ::SplitDataRequest::makeFragmentPackets(), gem5::minor::LSQ::LSQRequest::makePacket(), gem5::minor::makePacketForRequest(), gem5::ruby::DMASequencer::makeRequest(), gem5::ruby::SubBlock::mergeFrom(), gem5::ruby::SubBlock::mergeTo(), gem5::minor::Decode::minorTrace(), gem5::minor::Fetch2::minorTrace(), gem5::minor::Fetch1::minorTrace(), gem5::minor::Queue< gem5::minor::ForwardLineData, ReportTraitsAdaptor< gem5::minor::ForwardLineData >, BubbleTraitsAdaptor< gem5::minor::ForwardLineData > >::minorTrace(), SimpleLTTarget_ext::myNBTransport(), gem5::VirtIOConsole::TermTransQueue::onNotifyDescriptor(), gem5::VirtIO9PBase::FSQueue::onNotifyDescriptor(), gem5::Linux::openSpecialFile(), gem5::networking::EthAddr::operator uint64_t(), gem5::networking::EthAddr::operator=(), sc_dt::sc_concatref::operator=(), gem5::networking::IpHdr::options(), gem5::networking::TcpHdr::options(), sc_gem5::packet2payload(), gem5::networking::EthAddr::parse(), gem5::Check::performCallback(), gem5::statistics::DistStor::prepare(), gem5::statistics::DataWrapVec< VectorStandardDeviation, VectorDistInfoProxy >::prepare(), gem5::statistics::HistStor::prepare(), gem5::statistics::SampleStor::prepare(), gem5::statistics::AvgSampleStor::prepare(), gem5::statistics::SparseHistStor::prepare(), gem5::X86ISA::ACPI::MADT::LAPIC::prepareBuf(), gem5::X86ISA::ACPI::MADT::IOAPIC::prepareBuf(), gem5::X86ISA::ACPI::MADT::IntSourceOverride::prepareBuf(), gem5::X86ISA::ACPI::MADT::NMI::prepareBuf(), gem5::X86ISA::ACPI::MADT::LAPICOverride::prepareBuf(), prepareCheckDistStor(), prepareCheckHistStor(), gem5::networking::Ip6Hdr::proto(), gem5::minor::Queue< gem5::minor::ForwardLineData, ReportTraitsAdaptor< gem5::minor::ForwardLineData >, BubbleTraitsAdaptor< gem5::minor::ForwardLineData > >::push(), gem5::o3::CPU::pushRequest(), gem5::minor::LSQ::pushRequest(), gem5::o3::LSQ::pushRequest(), gem5::SimpleUart::read(), gem5::SimpleDisk::read(), gem5::Pl011::read(), gem5::RawDiskImage::read(), gem5::HDLcd::read(), gem5::PL031::read(), gem5::Pl050::read(), gem5::X86ISA::I8042::read(), gem5::CowDiskImage::read(), gem5::VirtIOBlock::read(), gem5::PortProxy::read(), gem5::BaseRemoteGDB::read(), gem5::VirtIO9PDiod::read(), gem5::VirtIO9PSocket::read(), gem5::Pl111::read(), gem5::RegisterBank< BankByteOrder >::Register< BackingType >::read(), gem5::UFSHostDevice::read(), gem5::VirtIO9PProxy::readAll(), BackingStore::readBlob(), TestProxy::readBlob(), gem5::ruby::Sequencer::readCallback(), gem5::ruby::GPUCoalescer::readCallback(), gem5::IdeDisk::readCommand(), gem5::IdeDisk::readControl(), gem5::X86ISA::I8042::readDataOut(), gem5::ArmISA::TableWalker::readDataUntimed(), gem5::IdeDisk::readDisk(), gem5::Iob::readIob(), gem5::Iob::readJBus(), gem5::AtomicSimpleCPU::readMem(), gem5::SimpleExecContext::readMem(), gem5::CheckerCPU::readMem(), gem5::Uart8250::readRbr(), gem5::ArmISA::readVecElem(), gem5::ps2::PS2Keyboard::recv(), gem5::ps2::TouchKit::recv(), gem5::ps2::PS2Mouse::recv(), gem5::VirtIO9PProxy::recvTMsg(), gem5::ps2::TouchKit::recvTouchKit(), gem5::RegisterBank< BankByteOrder >::Register< BackingType >::regtoh(), gem5::statistics::DataWrapVec< VectorStandardDeviation, VectorDistInfoProxy >::reset(), gem5::minor::LSQ::SplitDataRequest::retireResponse(), gem5::SafeRead(), gem5::SafeReadSwap(), gem5::SafeWrite(), gem5::SafeWriteSwap(), gem5::compression::FrequentValues::sampleValues(), SC_MODULE(), gem5::memory::qos::MemCtrl::schedule(), gem5::ps2::Device::send(), gem5::BaseRemoteGDB::send(), gem5::ArmISA::TableWalker::Port::sendAtomicReq(), gem5::TimingSimpleCPU::sendData(), gem5::ArmISA::TableWalker::Port::sendFunctionalReq(), gem5::EtherTapStub::sendReal(), gem5::VirtIO9PBase::sendRMsg(), gem5::EtherTapBase::sendSimulated(), gem5::TimingSimpleCPU::sendSplitData(), gem5::ArmISA::TableWalker::Port::sendTimingReq(), gem5::ps2::TouchKit::sendTouchKit(), gem5::VirtIO9PProxy::serverDataReady(), gem5::GenericTimerFrame::setAccessBits(), gem5::KvmDevice::setAttr(), gem5::KvmDevice::setAttrPtr(), gem5::ruby::SubBlock::setByte(), gem5::ruby::DataBlock::setByte(), gem5::Gicv3Redistributor::setClrLPI(), gem5::ruby::DataBlock::setData(), gem5::ArmISA::simd_modified_imm(), SimpleATTarget1::SimpleATTarget1(), SimpleATTarget2::SimpleATTarget2(), gem5::MemChecker::WriteCluster::startWrite(), gem5::MemChecker::ByteTracker::startWrite(), gem5::MemChecker::startWrite(), gem5::ArmISA::stripPAC(), TEST(), gem5::ruby::testAndRead(), gem5::ruby::testAndReadMask(), gem5::ruby::testAndWrite(), gem5::MemTest::tick(), gem5::GenericTimerMem::timerCtrlWrite(), gem5::GenericTimerFrame::timerWrite(), gem5::compression::Base::toChunks(), gem5::Trace::ExeTracerRecord::traceInst(), gem5::networking::EthAddr::unicast(), gem5::BaseCache::updateCompressionData(), gem5::ArmISA::vfp_modified_imm(), gem5::statistics::Hdf5::visit(), gem5::SimpleUart::write(), gem5::Sp805::write(), gem5::Pl011::write(), gem5::GenericWatchdog::write(), gem5::IsaFake::write(), gem5::RawDiskImage::write(), gem5::FVPBasePwrCtrl::write(), gem5::HDLcd::write(), gem5::AMDGPUDevice::write(), gem5::Gicv3::write(), gem5::X86ISA::ACPI::RSDP::write(), gem5::EnergyCtrl::write(), gem5::Pl050::write(), gem5::X86ISA::I8042::write(), gem5::CowDiskImage::write(), gem5::VirtIOBlock::write(), gem5::Intel8254Timer::Counter::write(), gem5::PortProxy::write(), gem5::Gicv3Redistributor::write(), gem5::Gicv3Distributor::write(), gem5::BaseRemoteGDB::write(), gem5::VirtIO9PDiod::write(), gem5::VirtIO9PSocket::write(), gem5::Pl111::write(), gem5::GenericTimerFrame::write(), gem5::GenericTimerMem::write(), gem5::o3::LSQUnit::write(), gem5::o3::CPU::write(), gem5::RegisterBank< BankByteOrder >::Register< BackingType >::write(), gem5::UFSHostDevice::write(), gem5::o3::LSQ::write(), gem5::VirtIO9PProxy::writeAll(), BackingStore::writeBlob(), TestProxy::writeBlob(), gem5::ruby::SubBlock::writeByte(), gem5::ruby::Sequencer::writeCallback(), gem5::ruby::GPUCoalescer::writeCallback(), gem5::ruby::Sequencer::writeCallbackScFail(), gem5::Plic::writeClaim(), gem5::IdeDisk::writeCommand(), gem5::GenericWatchdog::writeControl(), gem5::Intel8254Timer::writeControl(), gem5::IdeDisk::writeControl(), gem5::X86ISA::I8254::writeCounter(), gem5::Intel8254Timer::writeCounter(), gem5::KvmKernelGicV2::writeCpu(), gem5::GicV2::writeCpu(), gem5::MC146818::writeData(), gem5::IdeDisk::writeDisk(), gem5::KvmKernelGicV2::writeDistributor(), gem5::GicV2::writeDistributor(), gem5::Plic::writeEnable(), gem5::Iob::writeIob(), gem5::Iob::writeJBus(), gem5::minor::ExecContext::writeMem(), gem5::AtomicSimpleCPU::writeMem(), gem5::TimingSimpleCPU::writeMem(), gem5::o3::DynInst::writeMem(), gem5::SimpleExecContext::writeMem(), gem5::CheckerCPU::writeMem(), gem5::Clint::writeMSIP(), gem5::writePng(), gem5::Plic::writePriority(), gem5::Uart8250::writeThr(), and gem5::ruby::Sequencer::writeUniqueCallback().


Generated on Wed Jul 28 2021 12:10:32 for gem5 by doxygen 1.8.17