interrupts.hh (5646:0a488a147fb8) | interrupts.hh (5647:b06b49498c79) |
---|---|
1/* 2 * Copyright (c) 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; --- 21 unchanged lines hidden (view full) --- 30 */ 31 32#ifndef __ARCH_ALPHA_INTERRUPT_HH__ 33#define __ARCH_ALPHA_INTERRUPT_HH__ 34 35#include "arch/alpha/faults.hh" 36#include "arch/alpha/isa_traits.hh" 37#include "base/compiler.hh" | 1/* 2 * Copyright (c) 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; --- 21 unchanged lines hidden (view full) --- 30 */ 31 32#ifndef __ARCH_ALPHA_INTERRUPT_HH__ 33#define __ARCH_ALPHA_INTERRUPT_HH__ 34 35#include "arch/alpha/faults.hh" 36#include "arch/alpha/isa_traits.hh" 37#include "base/compiler.hh" |
38#include "base/trace.hh" |
|
38#include "cpu/thread_context.hh" | 39#include "cpu/thread_context.hh" |
40#include "params/AlphaInterrupts.hh" 41#include "sim/sim_object.hh" |
|
39 40namespace AlphaISA { 41 | 42 43namespace AlphaISA { 44 |
42class Interrupts | 45class Interrupts : public SimObject |
43{ 44 private: 45 bool newInfoSet; 46 int newIpl; 47 int newSummary; 48 49 protected: 50 uint64_t interrupts[NumInterruptLevels]; 51 uint64_t intstatus; 52 53 public: | 46{ 47 private: 48 bool newInfoSet; 49 int newIpl; 50 int newSummary; 51 52 protected: 53 uint64_t interrupts[NumInterruptLevels]; 54 uint64_t intstatus; 55 56 public: |
54 Interrupts() | 57 typedef AlphaInterruptsParams Params; 58 59 const Params * 60 params() const |
55 { | 61 { |
62 return dynamic_cast<const Params *>(_params); 63 } 64 65 Interrupts(Params * p) : SimObject(p) 66 { |
|
56 memset(interrupts, 0, sizeof(interrupts)); 57 intstatus = 0; 58 newInfoSet = false; 59 } 60 61 void 62 post(int int_num, int index) 63 { --- 116 unchanged lines hidden --- | 67 memset(interrupts, 0, sizeof(interrupts)); 68 intstatus = 0; 69 newInfoSet = false; 70 } 71 72 void 73 post(int int_num, int index) 74 { --- 116 unchanged lines hidden --- |