thread_context.hh (8852:c744483edfcf) | thread_context.hh (8887:20ea02da9c53) |
---|---|
1/* 2 * Copyright (c) 2011 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 30 unchanged lines hidden (view full) --- 39 * 40 * Authors: Kevin Lim 41 */ 42 43#ifndef __CPU_O3_THREAD_CONTEXT_HH__ 44#define __CPU_O3_THREAD_CONTEXT_HH__ 45 46#include "config/the_isa.hh" | 1/* 2 * Copyright (c) 2011 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 30 unchanged lines hidden (view full) --- 39 * 40 * Authors: Kevin Lim 41 */ 42 43#ifndef __CPU_O3_THREAD_CONTEXT_HH__ 44#define __CPU_O3_THREAD_CONTEXT_HH__ 45 46#include "config/the_isa.hh" |
47#include "config/use_checker.hh" | |
48#include "cpu/o3/isa_specific.hh" 49#include "cpu/thread_context.hh" 50 51class EndQuiesceEvent; 52namespace Kernel { 53 class Statistics; 54}; 55 --- 23 unchanged lines hidden (view full) --- 79 O3ThreadState<Impl> *thread; 80 81 /** Returns a pointer to the ITB. */ 82 TheISA::TLB *getITBPtr() { return cpu->itb; } 83 84 /** Returns a pointer to the DTB. */ 85 TheISA::TLB *getDTBPtr() { return cpu->dtb; } 86 | 47#include "cpu/o3/isa_specific.hh" 48#include "cpu/thread_context.hh" 49 50class EndQuiesceEvent; 51namespace Kernel { 52 class Statistics; 53}; 54 --- 23 unchanged lines hidden (view full) --- 78 O3ThreadState<Impl> *thread; 79 80 /** Returns a pointer to the ITB. */ 81 TheISA::TLB *getITBPtr() { return cpu->itb; } 82 83 /** Returns a pointer to the DTB. */ 84 TheISA::TLB *getDTBPtr() { return cpu->dtb; } 85 |
87#if USE_CHECKER 88 BaseCPU *getCheckerCpuPtr() { return NULL; } 89#endif | 86 CheckerCPU *getCheckerCpuPtr() { return NULL; } |
90 91 Decoder *getDecoderPtr() { return &cpu->fetch.decoder; } 92 93 /** Returns a pointer to this CPU. */ 94 virtual BaseCPU *getCpuPtr() { return cpu; } 95 96 /** Reads this CPU's ID. */ 97 virtual int cpuId() { return cpu->cpuId(); } --- 91 unchanged lines hidden (view full) --- 189 190 /** Reads this thread's PC state. */ 191 virtual TheISA::PCState pcState() 192 { return cpu->pcState(thread->threadId()); } 193 194 /** Sets this thread's PC state. */ 195 virtual void pcState(const TheISA::PCState &val); 196 | 87 88 Decoder *getDecoderPtr() { return &cpu->fetch.decoder; } 89 90 /** Returns a pointer to this CPU. */ 91 virtual BaseCPU *getCpuPtr() { return cpu; } 92 93 /** Reads this CPU's ID. */ 94 virtual int cpuId() { return cpu->cpuId(); } --- 91 unchanged lines hidden (view full) --- 186 187 /** Reads this thread's PC state. */ 188 virtual TheISA::PCState pcState() 189 { return cpu->pcState(thread->threadId()); } 190 191 /** Sets this thread's PC state. */ 192 virtual void pcState(const TheISA::PCState &val); 193 |
197#if USE_CHECKER | |
198 virtual void pcStateNoRecord(const TheISA::PCState &val); | 194 virtual void pcStateNoRecord(const TheISA::PCState &val); |
199#endif | |
200 201 /** Reads this thread's PC. */ 202 virtual Addr instAddr() 203 { return cpu->instAddr(thread->threadId()); } 204 205 /** Reads this thread's next PC. */ 206 virtual Addr nextInstAddr() 207 { return cpu->nextInstAddr(thread->threadId()); } --- 57 unchanged lines hidden --- | 195 196 /** Reads this thread's PC. */ 197 virtual Addr instAddr() 198 { return cpu->instAddr(thread->threadId()); } 199 200 /** Reads this thread's next PC. */ 201 virtual Addr nextInstAddr() 202 { return cpu->nextInstAddr(thread->threadId()); } --- 57 unchanged lines hidden --- |