ETISS 0.11.2
ExtendableTranslatingInstructionSetSimulator(version0.11.2)
Loading...
Searching...
No Matches
etiss
include
etiss
InterruptEnable.h
Go to the documentation of this file.
1
// SPDX-License-Identifier: BSD-3-Clause
2
//
3
// This file is part of ETISS. It is licensed under the BSD 3-Clause License; you may not use this file except in
4
// compliance with the License. You should have received a copy of the license along with this project. If not, see the
5
// LICENSE file.
6
7
#ifndef ETISS_INCLUDE_INTERRUPTENABLE_H_
8
#define ETISS_INCLUDE_INTERRUPTENABLE_H_
9
10
namespace
etiss
11
{
12
13
class
InterruptEnable
14
{
15
public
:
16
virtual
~InterruptEnable
() {}
17
virtual
bool
isEnabled
() {
return
true
; }
18
};
19
20
template
<
typename
t>
21
class
MappedInterruptEnable
:
public
InterruptEnable
22
{
23
public
:
24
MappedInterruptEnable
(t *enable_reg, t mask) :
enable_reg_
(enable_reg),
mask_
(mask) {}
25
26
virtual
~MappedInterruptEnable
() {}
27
28
bool
isEnabled
()
override
{
return
*
enable_reg_
&
mask_
; };
29
30
private
:
31
t *
enable_reg_
;
32
t
mask_
;
33
};
34
35
}
// namespace etiss
36
#endif
etiss::InterruptEnable
Definition
InterruptEnable.h:14
etiss::InterruptEnable::isEnabled
virtual bool isEnabled()
Definition
InterruptEnable.h:17
etiss::InterruptEnable::~InterruptEnable
virtual ~InterruptEnable()
Definition
InterruptEnable.h:16
etiss::MappedInterruptEnable
Definition
InterruptEnable.h:22
etiss::MappedInterruptEnable::MappedInterruptEnable
MappedInterruptEnable(t *enable_reg, t mask)
Definition
InterruptEnable.h:24
etiss::MappedInterruptEnable::mask_
t mask_
Definition
InterruptEnable.h:32
etiss::MappedInterruptEnable::isEnabled
bool isEnabled() override
Definition
InterruptEnable.h:28
etiss::MappedInterruptEnable::~MappedInterruptEnable
virtual ~MappedInterruptEnable()
Definition
InterruptEnable.h:26
etiss::MappedInterruptEnable::enable_reg_
t * enable_reg_
Definition
InterruptEnable.h:31
etiss
forwards: include/jit/*
Definition
Benchmark.h:17
Generated on Sat Nov 15 2025 19:30:10 for ETISS 0.11.2 by
1.9.8