LCOV - code coverage report
Current view: top level - zephyr/arch/riscv - error.h Coverage Total Hit
Test: new.info Lines: 33.3 % 3 1
Test Date: 2025-09-05 20:47:19

            Line data    Source code
       1            1 : /*
       2              :  * Copyright (c) 2020 BayLibre, SAS
       3              :  *
       4              :  * SPDX-License-Identifier: Apache-2.0
       5              :  */
       6              : 
       7              : /**
       8              :  * @file
       9              :  * @brief RISCV public error handling
      10              :  *
      11              :  * RISCV-specific kernel error handling interface. Included by riscv/arch.h.
      12              :  */
      13              : 
      14              : #ifndef ZEPHYR_INCLUDE_ARCH_RISCV_ERROR_H_
      15              : #define ZEPHYR_INCLUDE_ARCH_RISCV_ERROR_H_
      16              : 
      17              : #include <zephyr/arch/riscv/syscall.h>
      18              : #include <zephyr/arch/exception.h>
      19              : #include <stdbool.h>
      20              : 
      21              : #ifdef __cplusplus
      22              : extern "C" {
      23              : #endif
      24              : 
      25              : #ifdef CONFIG_USERSPACE
      26              : 
      27            0 : #define ARCH_EXCEPT(reason_p)   do {                    \
      28              :                 if (k_is_user_context()) {              \
      29              :                         arch_syscall_invoke1(reason_p,  \
      30              :                                 K_SYSCALL_USER_FAULT);  \
      31              :                 } else {                                \
      32              :                         compiler_barrier();             \
      33              :                         arch_syscall_invoke1(reason_p,  \
      34              :                                 RV_ECALL_RUNTIME_EXCEPT);\
      35              :                 }                                       \
      36              :                 CODE_UNREACHABLE; /* LCOV_EXCL_LINE */  \
      37              :         } while (false)
      38              : #else
      39              : #define ARCH_EXCEPT(reason_p) \
      40              :         arch_syscall_invoke1(reason_p, RV_ECALL_RUNTIME_EXCEPT)
      41              : #endif
      42              : 
      43            0 : __syscall void user_fault(unsigned int reason);
      44              : 
      45              : #include <zephyr/syscalls/error.h>
      46              : 
      47              : #ifdef __cplusplus
      48              : }
      49              : #endif
      50              : 
      51              : #endif /* ZEPHYR_INCLUDE_ARCH_RISCV_ERROR_H_ */
        

Generated by: LCOV version 2.0-1