/* * Copyright (c) 2023 Arm Limited (or its affiliates). All rights reserved. * SPDX-License-Identifier: Apache-2.0 */ #ifndef ZEPHYR_INCLUDE_ARM_STRUCTS_H_ #define ZEPHYR_INCLUDE_ARM_STRUCTS_H_ #include #if defined(CONFIG_CPU_AARCH32_CORTEX_A) || defined(CONFIG_CPU_AARCH32_CORTEX_R) /* Per CPU architecture specifics */ struct _cpu_arch { int8_t exc_depth; }; #else /* Default definitions when no architecture specific definitions exist. */ /* Per CPU architecture specifics (empty) */ struct _cpu_arch { #ifdef __cplusplus /* This struct will have a size 0 in C which is not allowed in C++ (it'll have a size 1). To * prevent this, we add a 1 byte dummy variable. */ uint8_t dummy; #endif }; #endif #endif /* ZEPHYR_INCLUDE_ARM_STRUCTS_H_ */