X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fsim%2Fcore.hh;h=8e464548fe138120209f020286dfe0b914e7d04b;hb=7f2d7fe4ef622d861e55517279f193cdf8acfc99;hp=a529ff17b429a6c5b9b148523668746a405a4abd;hpb=974a776b31492158a9fee6cce4581041509d3e18;p=gem5.git diff --git a/src/sim/core.hh b/src/sim/core.hh index a529ff17b..8e464548f 100644 --- a/src/sim/core.hh +++ b/src/sim/core.hh @@ -1,5 +1,7 @@ /* * Copyright (c) 2006 The Regents of The University of Michigan + * Copyright (c) 2013 Advanced Micro Devices, Inc. + * Copyright (c) 2013 Mark D. Hill and David A. Wood * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -39,12 +41,10 @@ #include #include "base/types.hh" +#include "sim/eventq.hh" /// The universal simulation clock. -extern Tick _curTick; - -inline Tick curTick() { return _curTick; } -inline void curTick(Tick newVal) { _curTick = newVal; } +inline Tick curTick() { return _curEventQueue->getCurTick(); } const Tick retryTime = 1000; @@ -72,7 +72,7 @@ extern double ps; ///< picosecond extern double Hz; ///< Hz extern double kHz; ///< kHz extern double MHz; ///< MHz -extern double GHZ; ///< GHz +extern double GHz; ///< GHz /** @}*/ } // namespace Float @@ -91,11 +91,16 @@ extern Tick ps; ///< picosecond } // namespace Int } // namespace SimClock /** @} */ + +void fixClockFrequency(); +bool clockFrequencyFixed(); + void setClockFrequency(Tick ticksPerSecond); +Tick getClockFrequency(); // Ticks per second. void setOutputDir(const std::string &dir); -struct Callback; +class Callback; void registerExitCallback(Callback *callback); void doExitCleanup();