From: Brad Beckmann Date: Wed, 11 Jul 2012 05:51:53 +0000 (-0700) Subject: cpu: added assertions to ensure the correct proxies are used X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4a52a6ea2d84933a1ac8418fe2ba9222832a690d;p=gem5.git cpu: added assertions to ensure the correct proxies are used --- diff --git a/src/cpu/thread_state.cc b/src/cpu/thread_state.cc index eda62dad1..d0f946989 100644 --- a/src/cpu/thread_state.cc +++ b/src/cpu/thread_state.cc @@ -122,6 +122,30 @@ ThreadState::initMemProxies(ThreadContext *tc) } } +PortProxy & +ThreadState::getPhysProxy() +{ + assert(FullSystem); + assert(physProxy != NULL); + return *physProxy; +} + +FSTranslatingPortProxy & +ThreadState::getVirtProxy() +{ + assert(FullSystem); + assert(virtProxy != NULL); + return *virtProxy; +} + +SETranslatingPortProxy & +ThreadState::getMemProxy() +{ + assert(!FullSystem); + assert(proxy != NULL); + return *proxy; +} + void ThreadState::profileClear() { diff --git a/src/cpu/thread_state.hh b/src/cpu/thread_state.hh index 995a870f5..d8dccc4ae 100644 --- a/src/cpu/thread_state.hh +++ b/src/cpu/thread_state.hh @@ -99,13 +99,13 @@ struct ThreadState { TheISA::Kernel::Statistics *getKernelStats() { return kernelStats; } - PortProxy &getPhysProxy() { return *physProxy; } + PortProxy &getPhysProxy(); - FSTranslatingPortProxy &getVirtProxy() { return *virtProxy; } + FSTranslatingPortProxy &getVirtProxy(); Process *getProcessPtr() { return process; } - SETranslatingPortProxy &getMemProxy() { return *proxy; } + SETranslatingPortProxy &getMemProxy(); /** Reads the number of instructions functionally executed and * committed.