thread_context_impl.hh (12106:7784fac1b159) | thread_context_impl.hh (12109:f29e9c5418aa) |
---|---|
1/* | 1/* |
2 * Copyright (c) 2010-2012 ARM Limited | 2 * Copyright (c) 2010-2012, 2016 ARM Limited |
3 * Copyright (c) 2013 Advanced Micro Devices, Inc. 4 * All rights reserved 5 * 6 * The license below extends only to copyright in the software and shall 7 * not be construed as granting a license to any other intellectual 8 * property including but not limited to intellectual property relating 9 * to a hardware implementation of the functionality of the software 10 * licensed hereunder. You may use the software subject to the license --- 193 unchanged lines hidden (view full) --- 204template <class Impl> 205TheISA::FloatRegBits 206O3ThreadContext<Impl>::readFloatRegBitsFlat(int reg_idx) 207{ 208 return cpu->readArchFloatRegInt(reg_idx, thread->threadId()); 209} 210 211template <class Impl> | 3 * Copyright (c) 2013 Advanced Micro Devices, Inc. 4 * All rights reserved 5 * 6 * The license below extends only to copyright in the software and shall 7 * not be construed as granting a license to any other intellectual 8 * property including but not limited to intellectual property relating 9 * to a hardware implementation of the functionality of the software 10 * licensed hereunder. You may use the software subject to the license --- 193 unchanged lines hidden (view full) --- 204template <class Impl> 205TheISA::FloatRegBits 206O3ThreadContext<Impl>::readFloatRegBitsFlat(int reg_idx) 207{ 208 return cpu->readArchFloatRegInt(reg_idx, thread->threadId()); 209} 210 211template <class Impl> |
212const TheISA::VecRegContainer& 213O3ThreadContext<Impl>::readVecRegFlat(int reg_id) const 214{ 215 return cpu->readArchVecReg(reg_id, thread->threadId()); 216} 217 218template <class Impl> 219TheISA::VecRegContainer& 220O3ThreadContext<Impl>::getWritableVecRegFlat(int reg_id) 221{ 222 return cpu->getWritableArchVecReg(reg_id, thread->threadId()); 223} 224 225template <class Impl> 226const TheISA::VecElem& 227O3ThreadContext<Impl>::readVecElemFlat(const RegIndex& idx, 228 const ElemIndex& elemIndex) const 229{ 230 return cpu->readArchVecElem(idx, elemIndex, thread->threadId()); 231} 232 233template <class Impl> |
|
212TheISA::CCReg 213O3ThreadContext<Impl>::readCCRegFlat(int reg_idx) 214{ 215 return cpu->readArchCCReg(reg_idx, thread->threadId()); 216} 217 218template <class Impl> 219void --- 19 unchanged lines hidden (view full) --- 239{ 240 cpu->setArchFloatRegInt(reg_idx, val, thread->threadId()); 241 242 conditionalSquash(); 243} 244 245template <class Impl> 246void | 234TheISA::CCReg 235O3ThreadContext<Impl>::readCCRegFlat(int reg_idx) 236{ 237 return cpu->readArchCCReg(reg_idx, thread->threadId()); 238} 239 240template <class Impl> 241void --- 19 unchanged lines hidden (view full) --- 261{ 262 cpu->setArchFloatRegInt(reg_idx, val, thread->threadId()); 263 264 conditionalSquash(); 265} 266 267template <class Impl> 268void |
269O3ThreadContext<Impl>::setVecRegFlat(int reg_idx, const VecRegContainer& val) 270{ 271 cpu->setArchVecReg(reg_idx, val, thread->threadId()); 272 273 conditionalSquash(); 274} 275 276template <class Impl> 277void 278O3ThreadContext<Impl>::setVecElemFlat(const RegIndex& idx, 279 const ElemIndex& elemIndex, const VecElem& val) 280{ 281 cpu->setArchVecElem(idx, elemIndex, val, thread->threadId()); 282 conditionalSquash(); 283} 284 285template <class Impl> 286void |
|
247O3ThreadContext<Impl>::setCCRegFlat(int reg_idx, TheISA::CCReg val) 248{ 249 cpu->setArchCCReg(reg_idx, val, thread->threadId()); 250 251 conditionalSquash(); 252} 253 254template <class Impl> --- 43 unchanged lines hidden --- | 287O3ThreadContext<Impl>::setCCRegFlat(int reg_idx, TheISA::CCReg val) 288{ 289 cpu->setArchCCReg(reg_idx, val, thread->threadId()); 290 291 conditionalSquash(); 292} 293 294template <class Impl> --- 43 unchanged lines hidden --- |