cpu.hh (8777:dd43f1c9fa0a) cpu.hh (8779:2a590c51adb1)
1/*
2 * Copyright (c) 2004-2005 The Regents of The University of Michigan
3 * Copyright (c) 2011 Regents of the University of California
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions are
8 * met: redistributions of source code must retain the above copyright

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

373
374 /** Get the current instruction sequence number, and increment it. */
375 InstSeqNum getAndIncrementInstSeq()
376 { return globalSeqNum++; }
377
378 /** Traps to handle given fault. */
379 void trap(Fault fault, ThreadID tid, StaticInstPtr inst);
380
1/*
2 * Copyright (c) 2004-2005 The Regents of The University of Michigan
3 * Copyright (c) 2011 Regents of the University of California
4 * All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions are
8 * met: redistributions of source code must retain the above copyright

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

373
374 /** Get the current instruction sequence number, and increment it. */
375 InstSeqNum getAndIncrementInstSeq()
376 { return globalSeqNum++; }
377
378 /** Traps to handle given fault. */
379 void trap(Fault fault, ThreadID tid, StaticInstPtr inst);
380
381#if FULL_SYSTEM
382 /** HW return from error interrupt. */
383 Fault hwrei(ThreadID tid);
384
385 bool simPalCheck(int palFunc, ThreadID tid);
386
387 /** Returns the Fault for any valid interrupt. */
388 Fault getInterrupts();
389

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

397 * reflect change in memory connections. */
398 void updateMemPorts();
399
400 /** Check if this address is a valid instruction address. */
401 bool validInstAddr(Addr addr) { return true; }
402
403 /** Check if this address is a valid data address. */
404 bool validDataAddr(Addr addr) { return true; }
381 /** HW return from error interrupt. */
382 Fault hwrei(ThreadID tid);
383
384 bool simPalCheck(int palFunc, ThreadID tid);
385
386 /** Returns the Fault for any valid interrupt. */
387 Fault getInterrupts();
388

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

396 * reflect change in memory connections. */
397 void updateMemPorts();
398
399 /** Check if this address is a valid instruction address. */
400 bool validInstAddr(Addr addr) { return true; }
401
402 /** Check if this address is a valid data address. */
403 bool validDataAddr(Addr addr) { return true; }
405#endif
406
407 /** Register accessors. Index refers to the physical register index. */
408
409 /** Reads a miscellaneous register. */
410 TheISA::MiscReg readMiscRegNoEffect(int misc_reg, ThreadID tid);
411
412 /** Reads a misc. register, including any side effects the read
413 * might have as defined by the architecture.

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

626
627 /** Changes a stage's status to inactive within the activity recorder. */
628 void deactivateStage(const StageIdx idx)
629 { activityRec.deactivateStage(idx); }
630
631 /** Wakes the CPU, rescheduling the CPU if it's not already active. */
632 void wakeCPU();
633
404
405 /** Register accessors. Index refers to the physical register index. */
406
407 /** Reads a miscellaneous register. */
408 TheISA::MiscReg readMiscRegNoEffect(int misc_reg, ThreadID tid);
409
410 /** Reads a misc. register, including any side effects the read
411 * might have as defined by the architecture.

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

624
625 /** Changes a stage's status to inactive within the activity recorder. */
626 void deactivateStage(const StageIdx idx)
627 { activityRec.deactivateStage(idx); }
628
629 /** Wakes the CPU, rescheduling the CPU if it's not already active. */
630 void wakeCPU();
631
634#if FULL_SYSTEM
635 virtual void wakeup();
632 virtual void wakeup();
636#endif
637
638 /** Gets a free thread id. Use if thread ids change across system. */
639 ThreadID getFreeTid();
640
641 public:
642 /** Returns a pointer to a thread context. */
643 ThreadContext *
644 tcBase(ThreadID tid)

--- 101 unchanged lines hidden ---
633
634 /** Gets a free thread id. Use if thread ids change across system. */
635 ThreadID getFreeTid();
636
637 public:
638 /** Returns a pointer to a thread context. */
639 ThreadContext *
640 tcBase(ThreadID tid)

--- 101 unchanged lines hidden ---