system.hh (4762:c94e103c83ad) system.hh (5569:baeee670d4ce)
1/*
2 * Copyright (c) 2002-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;

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

44
45class AlphaSystem : public System
46{
47 public:
48 typedef AlphaSystemParams Params;
49 AlphaSystem(Params *p);
50 ~AlphaSystem();
51
1/*
2 * Copyright (c) 2002-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;

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

44
45class AlphaSystem : public System
46{
47 public:
48 typedef AlphaSystemParams Params;
49 AlphaSystem(Params *p);
50 ~AlphaSystem();
51
52/**
53 * Serialization stuff
54 */
55 public:
52 public:
53 /**
54 * Serialization stuff
55 */
56 virtual void serialize(std::ostream &os);
57 virtual void unserialize(Checkpoint *cp, const std::string &section);
58
59 /**
60 * Set the m5AlphaAccess pointer in the console
61 */
62 void setAlphaAccess(Addr access);
63

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

72
73 /** Object pointer for the PAL code */
74 ObjectFile *pal;
75
76#ifndef NDEBUG
77 /** Event to halt the simulator if the console calls panic() */
78 BreakPCEvent *consolePanicEvent;
79#endif
56 virtual void serialize(std::ostream &os);
57 virtual void unserialize(Checkpoint *cp, const std::string &section);
58
59 /**
60 * Set the m5AlphaAccess pointer in the console
61 */
62 void setAlphaAccess(Addr access);
63

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

72
73 /** Object pointer for the PAL code */
74 ObjectFile *pal;
75
76#ifndef NDEBUG
77 /** Event to halt the simulator if the console calls panic() */
78 BreakPCEvent *consolePanicEvent;
79#endif
80
80 protected:
81 const Params *params() const { return (const Params *)_params; }
82
83 /** Add a function-based event to PALcode. */
84 template <class T>
81 protected:
82 const Params *params() const { return (const Params *)_params; }
83
84 /** Add a function-based event to PALcode. */
85 template <class T>
85 T *addPalFuncEvent(const char *lbl)
86 T *
87 addPalFuncEvent(const char *lbl)
86 {
87 return addFuncEvent<T>(palSymtab, lbl);
88 }
89
90 /** Add a function-based event to the console code. */
91 template <class T>
88 {
89 return addFuncEvent<T>(palSymtab, lbl);
90 }
91
92 /** Add a function-based event to the console code. */
93 template <class T>
92 T *addConsoleFuncEvent(const char *lbl)
94 T *
95 addConsoleFuncEvent(const char *lbl)
93 {
94 return addFuncEvent<T>(consoleSymtab, lbl);
95 }
96
97 virtual Addr fixFuncEventAddr(Addr addr);
96 {
97 return addFuncEvent<T>(consoleSymtab, lbl);
98 }
99
100 virtual Addr fixFuncEventAddr(Addr addr);
98
99};
100
101};
102
101#endif
103#endif // __ARCH_ALPHA_SYSTEM_HH__
102
104