base.hh (9652:553ad940c9db) base.hh (9749:cffb82b745cf)
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

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

390 * @return Branch predictor pointer.
391 */
392 virtual BranchPred *getBranchPred() { return NULL; };
393
394 virtual Counter totalInsts() const = 0;
395
396 virtual Counter totalOps() const = 0;
397
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

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

390 * @return Branch predictor pointer.
391 */
392 virtual BranchPred *getBranchPred() { return NULL; };
393
394 virtual Counter totalInsts() const = 0;
395
396 virtual Counter totalOps() const = 0;
397
398 /**
399 * Schedule an event that exits the simulation loops after a
400 * predefined number of instructions.
401 *
402 * This method is usually called from the configuration script to
403 * get an exit event some time in the future. It is typically used
404 * when the script wants to simulate for a specific number of
405 * instructions rather than ticks.
406 *
407 * @param tid Thread monitor.
408 * @param insts Number of instructions into the future.
409 * @param cause Cause to signal in the exit event.
410 */
411 void scheduleInstStop(ThreadID tid, Counter insts, const char *cause);
412
413 /**
414 * Schedule an event that exits the simulation loops after a
415 * predefined number of load operations.
416 *
417 * This method is usually called from the configuration script to
418 * get an exit event some time in the future. It is typically used
419 * when the script wants to simulate for a specific number of
420 * loads rather than ticks.
421 *
422 * @param tid Thread monitor.
423 * @param loads Number of load instructions into the future.
424 * @param cause Cause to signal in the exit event.
425 */
426 void scheduleLoadStop(ThreadID tid, Counter loads, const char *cause);
427
398 // Function tracing
399 private:
400 bool functionTracingEnabled;
401 std::ostream *functionTraceStream;
402 Addr currentFunctionStart;
403 Addr currentFunctionEnd;
404 Tick functionEntryTick;
405 void enableFunctionTrace();

--- 43 unchanged lines hidden ---
428 // Function tracing
429 private:
430 bool functionTracingEnabled;
431 std::ostream *functionTraceStream;
432 Addr currentFunctionStart;
433 Addr currentFunctionEnd;
434 Tick functionEntryTick;
435 void enableFunctionTrace();

--- 43 unchanged lines hidden ---