1 /* Copyright (C) 2007 Free Software Foundation, Inc. 2 3 This file is part of GCC. 4 5 GCC is free software; you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation; either version 2, or (at your option) 8 any later version. 9 10 GCC is distributed in the hope that it will be useful, 11 but WITHOUT ANY WARRANTY; without even the implied warranty of 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 GNU General Public License for more details. 14 15 You should have received a copy of the GNU General Public License 16 along with GCC; see the file COPYING. If not, write to 17 the Free Software Foundation, 51 Franklin Street, Fifth Floor, 18 Boston, MA 02110-1301, USA. */ 19 20 /* As a special exception, if you include this header file into source 21 files compiled by GCC, this header file does not by itself cause 22 the resulting executable to be covered by the GNU General Public 23 License. This exception does not however invalidate any other 24 reasons why the executable file might be covered by the GNU General 25 Public License. */ 26 27 /* ISO/IEC JTC1 SC22 WG14 N1169 28 * Date: 2006-04-04 29 * ISO/IEC TR 18037 30 * Programming languages - C - Extensions to support embedded processors 31 */ 32 33 #ifndef _STDFIX_H 34 #define _STDFIX_H 35 36 /* 7.18a.1 Introduction. */ 37 38 #undef fract 39 #undef accum 40 #undef sat 41 #define fract _Fract 42 #define accum _Accum 43 #define sat _Sat 44 45 /* 7.18a.3 Precision macros. */ 46 47 #undef SFRACT_FBIT 48 #undef SFRACT_MIN 49 #undef SFRACT_MAX 50 #undef SFRACT_EPSILON 51 #define SFRACT_FBIT __SFRACT_FBIT__ 52 #define SFRACT_MIN __SFRACT_MIN__ 53 #define SFRACT_MAX __SFRACT_MAX__ 54 #define SFRACT_EPSILON __SFRACT_EPSILON__ 55 56 #undef USFRACT_FBIT 57 #undef USFRACT_MIN 58 #undef USFRACT_MAX 59 #undef USFRACT_EPSILON 60 #define USFRACT_FBIT __USFRACT_FBIT__ 61 #define USFRACT_MIN __USFRACT_MIN__ /* GCC extension. */ 62 #define USFRACT_MAX __USFRACT_MAX__ 63 #define USFRACT_EPSILON __USFRACT_EPSILON__ 64 65 #undef FRACT_FBIT 66 #undef FRACT_MIN 67 #undef FRACT_MAX 68 #undef FRACT_EPSILON 69 #define FRACT_FBIT __FRACT_FBIT__ 70 #define FRACT_MIN __FRACT_MIN__ 71 #define FRACT_MAX __FRACT_MAX__ 72 #define FRACT_EPSILON __FRACT_EPSILON__ 73 74 #undef UFRACT_FBIT 75 #undef UFRACT_MIN 76 #undef UFRACT_MAX 77 #undef UFRACT_EPSILON 78 #define UFRACT_FBIT __UFRACT_FBIT__ 79 #define UFRACT_MIN __UFRACT_MIN__ /* GCC extension. */ 80 #define UFRACT_MAX __UFRACT_MAX__ 81 #define UFRACT_EPSILON __UFRACT_EPSILON__ 82 83 #undef LFRACT_FBIT 84 #undef LFRACT_MIN 85 #undef LFRACT_MAX 86 #undef LFRACT_EPSILON 87 #define LFRACT_FBIT __LFRACT_FBIT__ 88 #define LFRACT_MIN __LFRACT_MIN__ 89 #define LFRACT_MAX __LFRACT_MAX__ 90 #define LFRACT_EPSILON __LFRACT_EPSILON__ 91 92 #undef ULFRACT_FBIT 93 #undef ULFRACT_MIN 94 #undef ULFRACT_MAX 95 #undef ULFRACT_EPSILON 96 #define ULFRACT_FBIT __ULFRACT_FBIT__ 97 #define ULFRACT_MIN __ULFRACT_MIN__ /* GCC extension. */ 98 #define ULFRACT_MAX __ULFRACT_MAX__ 99 #define ULFRACT_EPSILON __ULFRACT_EPSILON__ 100 101 #undef LLFRACT_FBIT 102 #undef LLFRACT_MIN 103 #undef LLFRACT_MAX 104 #undef LLFRACT_EPSILON 105 #define LLFRACT_FBIT __LLFRACT_FBIT__ /* GCC extension. */ 106 #define LLFRACT_MIN __LLFRACT_MIN__ /* GCC extension. */ 107 #define LLFRACT_MAX __LLFRACT_MAX__ /* GCC extension. */ 108 #define LLFRACT_EPSILON __LLFRACT_EPSILON__ /* GCC extension. */ 109 110 #undef ULLFRACT_FBIT 111 #undef ULLFRACT_MIN 112 #undef ULLFRACT_MAX 113 #undef ULLFRACT_EPSILON 114 #define ULLFRACT_FBIT __ULLFRACT_FBIT__ /* GCC extension. */ 115 #define ULLFRACT_MIN __ULLFRACT_MIN__ /* GCC extension. */ 116 #define ULLFRACT_MAX __ULLFRACT_MAX__ /* GCC extension. */ 117 #define ULLFRACT_EPSILON __ULLFRACT_EPSILON__ /* GCC extension. */ 118 119 #undef SACCUM_FBIT 120 #undef SACCUM_IBIT 121 #undef SACCUM_MIN 122 #undef SACCUM_MAX 123 #undef SACCUM_EPSILON 124 #define SACCUM_FBIT __SACCUM_FBIT__ 125 #define SACCUM_IBIT __SACCUM_IBIT__ 126 #define SACCUM_MIN __SACCUM_MIN__ 127 #define SACCUM_MAX __SACCUM_MAX__ 128 #define SACCUM_EPSILON __SACCUM_EPSILON__ 129 130 #undef USACCUM_FBIT 131 #undef USACCUM_IBIT 132 #undef USACCUM_MIN 133 #undef USACCUM_MAX 134 #undef USACCUM_EPSILON 135 #define USACCUM_FBIT __USACCUM_FBIT__ 136 #define USACCUM_IBIT __USACCUM_IBIT__ 137 #define USACCUM_MIN __USACCUM_MIN__ /* GCC extension. */ 138 #define USACCUM_MAX __USACCUM_MAX__ 139 #define USACCUM_EPSILON __USACCUM_EPSILON__ 140 141 #undef ACCUM_FBIT 142 #undef ACCUM_IBIT 143 #undef ACCUM_MIN 144 #undef ACCUM_MAX 145 #undef ACCUM_EPSILON 146 #define ACCUM_FBIT __ACCUM_FBIT__ 147 #define ACCUM_IBIT __ACCUM_IBIT__ 148 #define ACCUM_MIN __ACCUM_MIN__ 149 #define ACCUM_MAX __ACCUM_MAX__ 150 #define ACCUM_EPSILON __ACCUM_EPSILON__ 151 152 #undef UACCUM_FBIT 153 #undef UACCUM_IBIT 154 #undef UACCUM_MIN 155 #undef UACCUM_MAX 156 #undef UACCUM_EPSILON 157 #define UACCUM_FBIT __UACCUM_FBIT__ 158 #define UACCUM_IBIT __UACCUM_IBIT__ 159 #define UACCUM_MIN __UACCUM_MIN__ /* GCC extension. */ 160 #define UACCUM_MAX __UACCUM_MAX__ 161 #define UACCUM_EPSILON __UACCUM_EPSILON__ 162 163 #undef LACCUM_FBIT 164 #undef LACCUM_IBIT 165 #undef LACCUM_MIN 166 #undef LACCUM_MAX 167 #undef LACCUM_EPSILON 168 #define LACCUM_FBIT __LACCUM_FBIT__ 169 #define LACCUM_IBIT __LACCUM_IBIT__ 170 #define LACCUM_MIN __LACCUM_MIN__ 171 #define LACCUM_MAX __LACCUM_MAX__ 172 #define LACCUM_EPSILON __LACCUM_EPSILON__ 173 174 #undef ULACCUM_FBIT 175 #undef ULACCUM_IBIT 176 #undef ULACCUM_MIN 177 #undef ULACCUM_MAX 178 #undef ULACCUM_EPSILON 179 #define ULACCUM_FBIT __ULACCUM_FBIT__ 180 #define ULACCUM_IBIT __ULACCUM_IBIT__ 181 #define ULACCUM_MIN __ULACCUM_MIN__ /* GCC extension. */ 182 #define ULACCUM_MAX __ULACCUM_MAX__ 183 #define ULACCUM_EPSILON __ULACCUM_EPSILON__ 184 185 #undef LLACCUM_FBIT 186 #undef LLACCUM_IBIT 187 #undef LLACCUM_MIN 188 #undef LLACCUM_MAX 189 #undef LLACCUM_EPSILON 190 #define LLACCUM_FBIT __LLACCUM_FBIT__ /* GCC extension. */ 191 #define LLACCUM_IBIT __LLACCUM_IBIT__ /* GCC extension. */ 192 #define LLACCUM_MIN __LLACCUM_MIN__ /* GCC extension. */ 193 #define LLACCUM_MAX __LLACCUM_MAX__ /* GCC extension. */ 194 #define LLACCUM_EPSILON __LLACCUM_EPSILON__ /* GCC extension. */ 195 196 #undef ULLACCUM_FBIT 197 #undef ULLACCUM_IBIT 198 #undef ULLACCUM_MIN 199 #undef ULLACCUM_MAX 200 #undef ULLACCUM_EPSILON 201 #define ULLACCUM_FBIT __ULLACCUM_FBIT__ /* GCC extension. */ 202 #define ULLACCUM_IBIT __ULLACCUM_IBIT__ /* GCC extension. */ 203 #define ULLACCUM_MIN __ULLACCUM_MIN__ /* GCC extension. */ 204 #define ULLACCUM_MAX __ULLACCUM_MAX__ /* GCC extension. */ 205 #define ULLACCUM_EPSILON __ULLACCUM_EPSILON__ /* GCC extension. */ 206 207 #endif /* _STDFIX_H */ 208