ETISS 0.11.2
ExtendableTranslatingInstructionSetSimulator(version0.11.2)
Loading...
Searching...
No Matches
libsemihost.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 JITLIB_SEMIHOST_H
8#define JITLIB_SEMIHOST_H
9
10#include <stdint.h>
11#include "etiss/jit/CPU.h"
12#include "etiss/jit/System.h"
13
16
20int64_t etiss_semihost(ETISS_CPU *const cpu, ETISS_System *const etissSystem, void *const *const _, uint32_t XLEN,
21 uint64_t operation, uint64_t parameter);
22
23#endif
static __inline__ uint32_t
Definition arm_cde.h:25
static __inline__ uint64_t
Definition arm_cde.h:31
static __inline__ uint8_t
Definition arm_mve.h:323
uint8_t etiss_semihost_enabled()
Checks whether semihosting is enabled in the config.
Definition semihost.cpp:51
int64_t etiss_semihost(ETISS_CPU *const cpu, ETISS_System *const etissSystem, void *const *const _, uint32_t XLEN, uint64_t operation, uint64_t parameter)
Executes the semihosting call based on the operation number.
Definition semihost.cpp:56
basic cpu state structure needed for execution of any cpu architecture.
Definition CPU.h:51
memory access and time synchronization functions.
Definition System.h:40