decode_impl.hh (8232:b28d06a175be) decode_impl.hh (8240:38befb82b2c9)
1/*
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;

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

72 return cpu->name() + ".decode";
73}
74
75template <class Impl>
76void
77DefaultDecode<Impl>::regStats()
78{
79 decodeIdleCycles
1/*
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;

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

72 return cpu->name() + ".decode";
73}
74
75template <class Impl>
76void
77DefaultDecode<Impl>::regStats()
78{
79 decodeIdleCycles
80 .name(name() + ".DECODE:IdleCycles")
80 .name(name() + ".IdleCycles")
81 .desc("Number of cycles decode is idle")
82 .prereq(decodeIdleCycles);
83 decodeBlockedCycles
81 .desc("Number of cycles decode is idle")
82 .prereq(decodeIdleCycles);
83 decodeBlockedCycles
84 .name(name() + ".DECODE:BlockedCycles")
84 .name(name() + ".BlockedCycles")
85 .desc("Number of cycles decode is blocked")
86 .prereq(decodeBlockedCycles);
87 decodeRunCycles
85 .desc("Number of cycles decode is blocked")
86 .prereq(decodeBlockedCycles);
87 decodeRunCycles
88 .name(name() + ".DECODE:RunCycles")
88 .name(name() + ".RunCycles")
89 .desc("Number of cycles decode is running")
90 .prereq(decodeRunCycles);
91 decodeUnblockCycles
89 .desc("Number of cycles decode is running")
90 .prereq(decodeRunCycles);
91 decodeUnblockCycles
92 .name(name() + ".DECODE:UnblockCycles")
92 .name(name() + ".UnblockCycles")
93 .desc("Number of cycles decode is unblocking")
94 .prereq(decodeUnblockCycles);
95 decodeSquashCycles
93 .desc("Number of cycles decode is unblocking")
94 .prereq(decodeUnblockCycles);
95 decodeSquashCycles
96 .name(name() + ".DECODE:SquashCycles")
96 .name(name() + ".SquashCycles")
97 .desc("Number of cycles decode is squashing")
98 .prereq(decodeSquashCycles);
99 decodeBranchResolved
97 .desc("Number of cycles decode is squashing")
98 .prereq(decodeSquashCycles);
99 decodeBranchResolved
100 .name(name() + ".DECODE:BranchResolved")
100 .name(name() + ".BranchResolved")
101 .desc("Number of times decode resolved a branch")
102 .prereq(decodeBranchResolved);
103 decodeBranchMispred
101 .desc("Number of times decode resolved a branch")
102 .prereq(decodeBranchResolved);
103 decodeBranchMispred
104 .name(name() + ".DECODE:BranchMispred")
104 .name(name() + ".BranchMispred")
105 .desc("Number of times decode detected a branch misprediction")
106 .prereq(decodeBranchMispred);
107 decodeControlMispred
105 .desc("Number of times decode detected a branch misprediction")
106 .prereq(decodeBranchMispred);
107 decodeControlMispred
108 .name(name() + ".DECODE:ControlMispred")
108 .name(name() + ".ControlMispred")
109 .desc("Number of times decode detected an instruction incorrectly"
110 " predicted as a control")
111 .prereq(decodeControlMispred);
112 decodeDecodedInsts
109 .desc("Number of times decode detected an instruction incorrectly"
110 " predicted as a control")
111 .prereq(decodeControlMispred);
112 decodeDecodedInsts
113 .name(name() + ".DECODE:DecodedInsts")
113 .name(name() + ".DecodedInsts")
114 .desc("Number of instructions handled by decode")
115 .prereq(decodeDecodedInsts);
116 decodeSquashedInsts
114 .desc("Number of instructions handled by decode")
115 .prereq(decodeDecodedInsts);
116 decodeSquashedInsts
117 .name(name() + ".DECODE:SquashedInsts")
117 .name(name() + ".SquashedInsts")
118 .desc("Number of squashed instructions handled by decode")
119 .prereq(decodeSquashedInsts);
120}
121
122template<class Impl>
123void
124DefaultDecode<Impl>::setTimeBuffer(TimeBuffer<TimeStruct> *tb_ptr)
125{

--- 630 unchanged lines hidden ---
118 .desc("Number of squashed instructions handled by decode")
119 .prereq(decodeSquashedInsts);
120}
121
122template<class Impl>
123void
124DefaultDecode<Impl>::setTimeBuffer(TimeBuffer<TimeStruct> *tb_ptr)
125{

--- 630 unchanged lines hidden ---