base.hh (11050:65fc1db5d795) base.hh (11148:1bc3d93c7eaa)
1/*
2 * Copyright (c) 2011-2013 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

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

554
555 public:
556 // Number of CPU cycles simulated
557 Stats::Scalar numCycles;
558 Stats::Scalar numWorkItemsStarted;
559 Stats::Scalar numWorkItemsCompleted;
560
561 private:
1/*
2 * Copyright (c) 2011-2013 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

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

554
555 public:
556 // Number of CPU cycles simulated
557 Stats::Scalar numCycles;
558 Stats::Scalar numWorkItemsStarted;
559 Stats::Scalar numWorkItemsCompleted;
560
561 private:
562 AddressMonitor addressMonitor;
562 std::vector<AddressMonitor> addressMonitor;
563
564 public:
563
564 public:
565 void armMonitor(Addr address);
566 bool mwait(PacketPtr pkt);
567 void mwaitAtomic(ThreadContext *tc, TheISA::TLB *dtb);
568 AddressMonitor *getCpuAddrMonitor() { return &addressMonitor; }
569 void atomicNotify(Addr address);
565 void armMonitor(ThreadID tid, Addr address);
566 bool mwait(ThreadID tid, PacketPtr pkt);
567 void mwaitAtomic(ThreadID tid, ThreadContext *tc, TheISA::TLB *dtb);
568 AddressMonitor *getCpuAddrMonitor(ThreadID tid)
569 {
570 assert(tid < numThreads);
571 return &addressMonitor[tid];
572 }
570};
571
572#endif // THE_ISA == NULL_ISA
573
574#endif // __CPU_BASE_HH__
573};
574
575#endif // THE_ISA == NULL_ISA
576
577#endif // __CPU_BASE_HH__