LCOV - code coverage report
Current view: top level - zephyr/arch/arm64 - error.h Hit Total Coverage
Test: new.info Lines: 1 2 50.0 %
Date: 2024-12-22 00:14:23

          Line data    Source code
       1           1 : /*
       2             :  * Copyright (c) 2020 Carlo Caione <ccaione@baylibre.com>
       3             :  *
       4             :  * SPDX-License-Identifier: Apache-2.0
       5             :  */
       6             : 
       7             : /**
       8             :  * @file
       9             :  * @brief ARM AArch64 public error handling
      10             :  *
      11             :  * ARM AArch64-specific kernel error handling interface. Included by arch.h.
      12             :  */
      13             : 
      14             : #ifndef ZEPHYR_INCLUDE_ARCH_ARM64_ERROR_H_
      15             : #define ZEPHYR_INCLUDE_ARCH_ARM64_ERROR_H_
      16             : 
      17             : #include <zephyr/arch/arm64/syscall.h>
      18             : #include <zephyr/arch/arm64/exception.h>
      19             : #include <stdbool.h>
      20             : 
      21             : #ifdef __cplusplus
      22             : extern "C" {
      23             : #endif
      24             : 
      25           0 : #define ARCH_EXCEPT(reason_p)                                           \
      26             : do {                                                                    \
      27             :         register uint64_t x8 __asm__("x8") = reason_p;                        \
      28             :                                                                         \
      29             :         __asm__ volatile("svc %[id]\n"                                        \
      30             :                          :                                              \
      31             :                          : [id] "i" (_SVC_CALL_RUNTIME_EXCEPT),               \
      32             :                                 "r" (x8)                              \
      33             :                          : "memory");                                 \
      34             : } while (false)
      35             : 
      36             : #ifdef __cplusplus
      37             : }
      38             : #endif
      39             : 
      40             : #endif /* ZEPHYR_INCLUDE_ARCH_ARM64_ERROR_H_ */

Generated by: LCOV version 1.14