Deleted Added
sdiff udiff text old ( 10913:38dbdeea7f1f ) new ( 11147:cc8d6e99cf46 )
full compact
1/*
2 * Copyright (c) 2012-2013,2015 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

--- 28 unchanged lines hidden (view full) ---

39 *
40 * Authors: Steve Reinhardt
41 */
42
43#ifndef __CPU_SIMPLE_ATOMIC_HH__
44#define __CPU_SIMPLE_ATOMIC_HH__
45
46#include "cpu/simple/base.hh"
47#include "cpu/simple/exec_context.hh"
48#include "params/AtomicSimpleCPU.hh"
49#include "sim/probe/probe.hh"
50
51class AtomicSimpleCPU : public BaseSimpleCPU
52{
53 public:
54
55 AtomicSimpleCPU(AtomicSimpleCPUParams *params);

--- 36 unchanged lines hidden (view full) ---

92 * call. The only way this can happen at the moment is if
93 * there is an event in the PC event queue that affects the
94 * CPU state while it is in an LLSC region.
95 *
96 * <li>Stay at PC is true.
97 * </ul>
98 */
99 bool isDrained() {
100 SimpleExecContext &t_info = *threadInfo[curThread];
101
102 return t_info.thread->microPC() == 0 &&
103 !locked &&
104 !t_info.stayAtPC;
105 }
106
107 /**
108 * Try to complete a drain request.
109 *
110 * @returns true if the CPU is drained, false otherwise.
111 */
112 bool tryCompleteDrain();

--- 104 unchanged lines hidden ---