system_events.cc (2654:9559cfa91b9d) system_events.cc (2665:a124942bacb8)
1/*
2 * Copyright (c) 2004-2005 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;

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

19 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
1/*
2 * Copyright (c) 2004-2005 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;

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

19 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
21 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
22 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
23 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
24 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
26 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27 *
28 * Authors: Lisa Hsu
29 * Nathan Binkert
27 */
28
29#include "cpu/base.hh"
30#include "cpu/cpu_exec_context.hh"
31#include "kern/kernel_stats.hh"
32#include "kern/system_events.hh"
33#include "sim/system.hh"
34

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

66 return;
67
68 xc->getSystemPtr()->kernelBinning->call(xc, mybin);
69}
70
71void
72IdleStartEvent::process(ExecContext *xc)
73{
30 */
31
32#include "cpu/base.hh"
33#include "cpu/cpu_exec_context.hh"
34#include "kern/kernel_stats.hh"
35#include "kern/system_events.hh"
36#include "sim/system.hh"
37

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

69 return;
70
71 xc->getSystemPtr()->kernelBinning->call(xc, mybin);
72}
73
74void
75IdleStartEvent::process(ExecContext *xc)
76{
74 if (xc->getKernelStats())
75 xc->getKernelStats()->setIdleProcess(
76 xc->readMiscReg(AlphaISA::IPR_PALtemp23), xc);
77 xc->getCpuPtr()->kernelStats->setIdleProcess(
78 xc->readMiscReg(AlphaISA::IPR_PALtemp23), xc);
77 remove();
78}
79
80void
81InterruptStartEvent::process(ExecContext *xc)
82{
79 remove();
80}
81
82void
83InterruptStartEvent::process(ExecContext *xc)
84{
83 if (xc->getKernelStats())
84 xc->getKernelStats()->mode(Kernel::interrupt, xc);
85 xc->getCpuPtr()->kernelStats->mode(Kernel::interrupt, xc);
85}
86
87void
88InterruptEndEvent::process(ExecContext *xc)
89{
90 // We go back to kernel, if we are user, inside the rti
91 // pal code we will get switched to user because of the ICM write
86}
87
88void
89InterruptEndEvent::process(ExecContext *xc)
90{
91 // We go back to kernel, if we are user, inside the rti
92 // pal code we will get switched to user because of the ICM write
92 if (xc->getKernelStats())
93 xc->getKernelStats()->mode(Kernel::kernel, xc);
93 xc->getCpuPtr()->kernelStats->mode(Kernel::kernel, xc);
94}
94}