thread_context.hh (8808:8af87554ad7e) | thread_context.hh (8809:bb10807da889) |
---|---|
1/* | 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 9 * licensed hereunder. You may use the software subject to the license 10 * terms below provided that you ensure that this notice is replicated 11 * unmodified and in its entirety in all distributions of the software, 12 * modified or unmodified, in source code or in binary form. 13 * |
|
2 * Copyright (c) 2004-2006 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; 9 * redistributions in binary form must reproduce the above copyright --- 17 unchanged lines hidden (view full) --- 27 * 28 * Authors: Kevin Lim 29 */ 30 31#ifndef __CPU_O3_THREAD_CONTEXT_HH__ 32#define __CPU_O3_THREAD_CONTEXT_HH__ 33 34#include "config/the_isa.hh" | 14 * Copyright (c) 2004-2006 The Regents of The University of Michigan 15 * All rights reserved. 16 * 17 * Redistribution and use in source and binary forms, with or without 18 * modification, are permitted provided that the following conditions are 19 * met: redistributions of source code must retain the above copyright 20 * notice, this list of conditions and the following disclaimer; 21 * redistributions in binary form must reproduce the above copyright --- 17 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" |
|
35#include "cpu/o3/isa_specific.hh" 36#include "cpu/thread_context.hh" 37 38class EndQuiesceEvent; 39namespace Kernel { 40 class Statistics; 41}; 42 --- 23 unchanged lines hidden (view full) --- 66 O3ThreadState<Impl> *thread; 67 68 /** Returns a pointer to the ITB. */ 69 TheISA::TLB *getITBPtr() { return cpu->itb; } 70 71 /** Returns a pointer to the DTB. */ 72 TheISA::TLB *getDTBPtr() { return cpu->dtb; } 73 | 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 |
87#if USE_CHECKER 88 BaseCPU *getCheckerCpuPtr() { return NULL; } 89#endif 90 |
|
74 Decoder *getDecoderPtr() { return &cpu->fetch.decoder; } 75 76 /** Returns a pointer to this CPU. */ 77 virtual BaseCPU *getCpuPtr() { return cpu; } 78 79 /** Reads this CPU's ID. */ 80 virtual int cpuId() { return cpu->cpuId(); } 81 --- 90 unchanged lines hidden (view full) --- 172 173 /** Reads this thread's PC state. */ 174 virtual TheISA::PCState pcState() 175 { return cpu->pcState(thread->threadId()); } 176 177 /** Sets this thread's PC state. */ 178 virtual void pcState(const TheISA::PCState &val); 179 | 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(); } 98 --- 90 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 |
197#if USE_CHECKER 198 virtual void pcStateNoRecord(const TheISA::PCState &val); 199#endif 200 |
|
180 /** Reads this thread's PC. */ 181 virtual Addr instAddr() 182 { return cpu->instAddr(thread->threadId()); } 183 184 /** Reads this thread's next PC. */ 185 virtual Addr nextInstAddr() 186 { return cpu->nextInstAddr(thread->threadId()); } 187 --- 56 unchanged lines hidden --- | 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()); } 208 --- 56 unchanged lines hidden --- |