15#ifndef ZEPHYR_INCLUDE_ARCH_RISCV_EXP_H_
16#define ZEPHYR_INCLUDE_ARCH_RISCV_EXP_H_
22#ifdef CONFIG_RISCV_SOC_CONTEXT_SAVE
23#include <soc_context.h>
38#ifdef CONFIG_RISCV_SOC_CONTEXT_SAVE
44#if !defined(RV_FP_TYPE) && defined(CONFIG_FPU) && defined(CONFIG_FPU_SHARING)
45#ifdef CONFIG_CPU_HAS_FPU_DOUBLE_PRECISION
46#define RV_FP_TYPE uint64_t
48#define RV_FP_TYPE uint32_t
58#if !defined(CONFIG_RISCV_ISA_RV32E)
71#if !defined(CONFIG_RISCV_ISA_RV32E)
77 unsigned long mstatus;
81#ifdef CONFIG_USERSPACE
85#if defined(CONFIG_FPU) && defined(CONFIG_FPU_SHARING)
108#ifdef CONFIG_RISCV_SOC_CONTEXT_SAVE
109 struct soc_esf soc_context;
113typedef struct __esf z_arch_esf_t;
114#ifdef CONFIG_RISCV_SOC_CONTEXT_SAVE
115typedef struct soc_esf soc_esf_t;
#define RV_FP_TYPE
Definition: exp.h:48
struct k_thread t2
Definition: main.c:26