blob: 05cb0495ab15f18bf526a632eaeb6e887a3ce206 [file] [log] [blame]
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01001<?xml version="1.0"?>
2<!--
3#-------------------------------------------------------------------------------
Antonio de Angelisb1c5fa22021-12-02 16:05:29 +00004# Copyright (c) 2018-2021, Arm Limited and Contributors. All rights reserved.
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +01005#
6# SPDX-License-Identifier: BSD-3-Clause
7#
8#-------------------------------------------------------------------------------
9-->
10<def format="2">
Antonio de Angelisb1c5fa22021-12-02 16:05:29 +000011 <!-- Modules that might be using mbedtls based allocator functions -->
12 <resource>
13 <alloc>mbedtls_calloc</alloc>
14 <dealloc>mbedtls_free</dealloc>
15 </resource>
16 <!-- Missing platform defines on which some header preprocessing relies -->
17 <define name="CHAR_BIT" value="8"/>
18 <!-- This would be defined by the GNUARM toolchain -->
19 <define name="__GNUC__" value="1"/>
20 <!-- This would be defined by the GNUARM toolchain -->
21 <define name="__ARM_ARCH_8M_MAIN__" value="1"/>
22 <!-- tfm_core_panic() and psa_panic() interrupt the flow unconditionally -->
23 <function name="tfm_core_panic"> <noreturn>true</noreturn> </function>
24 <function name="psa_panic"> <noreturn>true</noreturn> </function>
Minos Galanakisf4ca6ac2017-12-11 02:39:21 +010025 <!-- Minimum-width integer types -->
26 <podtype name="int_least8_t" sign="s" size="1"/>
27 <podtype name="uint_least8_t" sign="u" size="1"/>
28 <podtype name="int_least16_t" sign="s" size="2"/>
29 <podtype name="uint_least16_t" sign="u" size="2"/>
30 <podtype name="int_least32_t" sign="s" size="4"/>
31 <podtype name="uint_least32_t" sign="u" size="4"/>
32 <podtype name="int_least64_t" sign="s" size="8"/>
33 <podtype name="uint_least64_t" sign="u" size="8"/>
34 <!-- Greatest-width integer types -->
35 <podtype name="intmax_t" sign="s" size="8"/>
36 <podtype name="uintmax_t" sign="u" size="8"/>
37 <!-- inttypes.h -->
38 <podtype name="intptr_t" sign="s" size="4"/>
39 <podtype name="uintptr_t" sign="u" size="4"/>
40 <define name="INT8_MAX" value="0x7f"/>
41 <define name="INT8_MIN" value="(-INT8_MAX - 1)"/>
42 <define name="UINT8_MAX" value="(__CONCAT(INT8_MAX, U) * 2U + 1U)"/>
43 <define name="INT16_MAX" value="0x7fff"/>
44 <define name="INT16_MIN" value="(-INT16_MAX - 1)"/>
45 <define name="UINT16_MAX" value="(__CONCAT(INT16_MAX, U) * 2U + 1U)"/>
46 <define name="INT32_MAX" value="0x7fffffffL"/>
47 <define name="INT32_MIN" value="(-INT32_MAX - 1L)"/>
48 <define name="UINT32_MAX" value="(__CONCAT(INT32_MAX, U) * 2UL + 1UL)"/>
49 <define name="INT64_MAX" value="0x7fffffffffffffffLL"/>
50 <define name="INT64_MIN" value="(-INT64_MAX - 1LL)"/>
51 <define name="UINT64_MAX" value="(__CONCAT(INT64_MAX, U) * 2ULL + 1ULL)"/>
52 <!-- Limits of minimum-width integer types -->
53 <define name="INT_LEAST8_MAX" value="INT8_MAX"/>
54 <define name="INT_LEAST8_MIN" value="INT8_MIN"/>
55 <define name="UINT_LEAST8_MAX" value="UINT8_MAX"/>
56 <define name="INT_LEAST16_MAX" value="INT16_MAX"/>
57 <define name="INT_LEAST16_MIN" value="INT16_MIN"/>
58 <define name="UINT_LEAST16_MAX" value="UINT16_MAX"/>
59 <define name="INT_LEAST32_MAX" value="INT32_MAX"/>
60 <define name="INT_LEAST32_MIN" value="INT32_MIN"/>
61 <define name="UINT_LEAST32_MAX" value="UINT32_MAX"/>
62 <define name="INT_LEAST64_MAX" value="INT64_MAX"/>
63 <define name="INT_LEAST64_MIN" value="INT64_MIN"/>
64 <define name="UINT_LEAST64_MAX" value="UINT64_MAX"/>
65 <!-- Limits of fastest minimum-width integer types -->
66 <define name="INT_FAST8_MAX" value="INT8_MAX"/>
67 <define name="INT_FAST8_MIN" value="INT8_MIN"/>
68 <define name="UINT_FAST8_MAX" value="UINT8_MAX"/>
69 <define name="INT_FAST16_MAX" value="INT16_MAX"/>
70 <define name="INT_FAST16_MIN" value="INT16_MIN"/>
71 <define name="UINT_FAST16_MAX" value="UINT16_MAX"/>
72 <define name="INT_FAST32_MAX" value="INT32_MAX"/>
73 <define name="INT_FAST32_MIN" value="INT32_MIN"/>
74 <define name="UINT_FAST32_MAX" value="UINT32_MAX"/>
75 <define name="INT_FAST64_MAX" value="INT64_MAX"/>
76 <define name="INT_FAST64_MIN" value="INT64_MIN"/>
77 <define name="UINT_FAST64_MAX" value="UINT64_MAX"/>
78 <!-- Limits of integer types capable of holding object pointers -->
79 <define name="INTPTR_MAX" value="INT32_MAX"/>
80 <define name="INTPTR_MIN" value="INT32_MIN"/>
81 <define name="UINTPTR_MAX" value="UINT32_MAX"/>
82 <!-- Limits of greatest-width integer types -->
83 <define name="INTMAX_MAX" value="INT64_MAX"/>
84 <define name="INTMAX_MIN" value="INT64_MIN"/>
85 <define name="UINTMAX_MAX" value="UINT64_MAX"/>
86 <!-- Limits of other integer types -->
87 <define name="PTRDIFF_MAX" value="INT32_MAX"/>
88 <define name="PTRDIFF_MIN" value="INT32_MIN"/>
89 <define name="SIG_ATOMIC_MAX" value="INT8_MAX"/>
90 <define name="SIG_ATOMIC_MIN" value="INT8_MIN"/>
91 <define name="SIZE_MAX" value="(__CONCAT(INT16_MAX, U))"/>
92 <!-- Macros for integer constants -->
93 <define name="INT8_C(value)" value="((int8_t) value)"/>
94 <define name="UINT8_C(value)" value="((uint8_t) __CONCAT(value, U))"/>
95 <define name="INT16_C(value)" value="value"/>
96 <define name="UINT16_C(value)" value="__CONCAT(value, U)"/>
97 <define name="INT32_C(value)" value="__CONCAT(value, L)"/>
98 <define name="UINT32_C(value)" value="__CONCAT(value, UL)"/>
99 <define name="INT64_C(value)" value="__CONCAT(value, LL)"/>
100 <define name="UINT64_C(value)" value="__CONCAT(value, ULL)"/>
101 <define name="INTMAX_C(value)" value="__CONCAT(value, LL)"/>
102 <define name="UINTMAX_C(value)" value="__CONCAT(value, ULL)"/>
103</def>