Line data Source code
1 0 : /*
2 : * Copyright (c) 2021 Nordic Semiconductor ASA
3 : *
4 : * SPDX-License-Identifier: Apache-2.0
5 : */
6 :
7 : #ifndef ZEPHYR_INCLUDE_TOOLCHAIN_ARMCLANG_H_
8 : #define ZEPHYR_INCLUDE_TOOLCHAIN_ARMCLANG_H_
9 :
10 : #ifndef ZEPHYR_INCLUDE_TOOLCHAIN_H_
11 : #error Please do not include toolchain-specific headers directly, use <zephyr/toolchain.h> instead
12 : #endif
13 :
14 : #include <zephyr/toolchain/llvm.h>
15 :
16 : /*
17 : * To reuse as much as possible from the llvm.h header we only redefine the
18 : * __GENERIC_SECTION and Z_GENERIC_SECTION macros here to include the `used` keyword.
19 : */
20 : #undef __GENERIC_SECTION
21 : #undef Z_GENERIC_SECTION
22 :
23 : #define __GENERIC_SECTION(segment) __attribute__((section(STRINGIFY(segment)), used))
24 : #define Z_GENERIC_SECTION(segment) __GENERIC_SECTION(segment)
25 :
26 : #endif /* ZEPHYR_INCLUDE_TOOLCHAIN_ARMCLANG_H_ */
|