Ben Cheng | d9735fc | 2013-08-22 22:10:54 -0700 | [diff] [blame] | 1 | /* Copyright (C) 2007-2013 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 3, 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 | Under Section 7 of GPL version 3, you are granted additional |
| 16 | permissions described in the GCC Runtime Library Exception, version |
| 17 | 3.1, as published by the Free Software Foundation. |
| 18 | |
| 19 | You should have received a copy of the GNU General Public License and |
| 20 | a copy of the GCC Runtime Library Exception along with this program; |
| 21 | see the files COPYING3 and COPYING.RUNTIME respectively. If not, see |
| 22 | <http://www.gnu.org/licenses/>. */ |
| 23 | |
| 24 | /* ISO/IEC JTC1 SC22 WG14 N1169 |
| 25 | * Date: 2006-04-04 |
| 26 | * ISO/IEC TR 18037 |
| 27 | * Programming languages - C - Extensions to support embedded processors |
| 28 | */ |
| 29 | |
| 30 | #ifndef _STDFIX_H |
| 31 | #define _STDFIX_H |
| 32 | |
| 33 | /* 7.18a.1 Introduction. */ |
| 34 | |
| 35 | #undef fract |
| 36 | #undef accum |
| 37 | #undef sat |
| 38 | #define fract _Fract |
| 39 | #define accum _Accum |
| 40 | #define sat _Sat |
| 41 | |
| 42 | /* 7.18a.3 Precision macros. */ |
| 43 | |
| 44 | #undef SFRACT_FBIT |
| 45 | #undef SFRACT_MIN |
| 46 | #undef SFRACT_MAX |
| 47 | #undef SFRACT_EPSILON |
| 48 | #define SFRACT_FBIT __SFRACT_FBIT__ |
| 49 | #define SFRACT_MIN __SFRACT_MIN__ |
| 50 | #define SFRACT_MAX __SFRACT_MAX__ |
| 51 | #define SFRACT_EPSILON __SFRACT_EPSILON__ |
| 52 | |
| 53 | #undef USFRACT_FBIT |
| 54 | #undef USFRACT_MIN |
| 55 | #undef USFRACT_MAX |
| 56 | #undef USFRACT_EPSILON |
| 57 | #define USFRACT_FBIT __USFRACT_FBIT__ |
| 58 | #define USFRACT_MIN __USFRACT_MIN__ /* GCC extension. */ |
| 59 | #define USFRACT_MAX __USFRACT_MAX__ |
| 60 | #define USFRACT_EPSILON __USFRACT_EPSILON__ |
| 61 | |
| 62 | #undef FRACT_FBIT |
| 63 | #undef FRACT_MIN |
| 64 | #undef FRACT_MAX |
| 65 | #undef FRACT_EPSILON |
| 66 | #define FRACT_FBIT __FRACT_FBIT__ |
| 67 | #define FRACT_MIN __FRACT_MIN__ |
| 68 | #define FRACT_MAX __FRACT_MAX__ |
| 69 | #define FRACT_EPSILON __FRACT_EPSILON__ |
| 70 | |
| 71 | #undef UFRACT_FBIT |
| 72 | #undef UFRACT_MIN |
| 73 | #undef UFRACT_MAX |
| 74 | #undef UFRACT_EPSILON |
| 75 | #define UFRACT_FBIT __UFRACT_FBIT__ |
| 76 | #define UFRACT_MIN __UFRACT_MIN__ /* GCC extension. */ |
| 77 | #define UFRACT_MAX __UFRACT_MAX__ |
| 78 | #define UFRACT_EPSILON __UFRACT_EPSILON__ |
| 79 | |
| 80 | #undef LFRACT_FBIT |
| 81 | #undef LFRACT_MIN |
| 82 | #undef LFRACT_MAX |
| 83 | #undef LFRACT_EPSILON |
| 84 | #define LFRACT_FBIT __LFRACT_FBIT__ |
| 85 | #define LFRACT_MIN __LFRACT_MIN__ |
| 86 | #define LFRACT_MAX __LFRACT_MAX__ |
| 87 | #define LFRACT_EPSILON __LFRACT_EPSILON__ |
| 88 | |
| 89 | #undef ULFRACT_FBIT |
| 90 | #undef ULFRACT_MIN |
| 91 | #undef ULFRACT_MAX |
| 92 | #undef ULFRACT_EPSILON |
| 93 | #define ULFRACT_FBIT __ULFRACT_FBIT__ |
| 94 | #define ULFRACT_MIN __ULFRACT_MIN__ /* GCC extension. */ |
| 95 | #define ULFRACT_MAX __ULFRACT_MAX__ |
| 96 | #define ULFRACT_EPSILON __ULFRACT_EPSILON__ |
| 97 | |
| 98 | #undef LLFRACT_FBIT |
| 99 | #undef LLFRACT_MIN |
| 100 | #undef LLFRACT_MAX |
| 101 | #undef LLFRACT_EPSILON |
| 102 | #define LLFRACT_FBIT __LLFRACT_FBIT__ /* GCC extension. */ |
| 103 | #define LLFRACT_MIN __LLFRACT_MIN__ /* GCC extension. */ |
| 104 | #define LLFRACT_MAX __LLFRACT_MAX__ /* GCC extension. */ |
| 105 | #define LLFRACT_EPSILON __LLFRACT_EPSILON__ /* GCC extension. */ |
| 106 | |
| 107 | #undef ULLFRACT_FBIT |
| 108 | #undef ULLFRACT_MIN |
| 109 | #undef ULLFRACT_MAX |
| 110 | #undef ULLFRACT_EPSILON |
| 111 | #define ULLFRACT_FBIT __ULLFRACT_FBIT__ /* GCC extension. */ |
| 112 | #define ULLFRACT_MIN __ULLFRACT_MIN__ /* GCC extension. */ |
| 113 | #define ULLFRACT_MAX __ULLFRACT_MAX__ /* GCC extension. */ |
| 114 | #define ULLFRACT_EPSILON __ULLFRACT_EPSILON__ /* GCC extension. */ |
| 115 | |
| 116 | #undef SACCUM_FBIT |
| 117 | #undef SACCUM_IBIT |
| 118 | #undef SACCUM_MIN |
| 119 | #undef SACCUM_MAX |
| 120 | #undef SACCUM_EPSILON |
| 121 | #define SACCUM_FBIT __SACCUM_FBIT__ |
| 122 | #define SACCUM_IBIT __SACCUM_IBIT__ |
| 123 | #define SACCUM_MIN __SACCUM_MIN__ |
| 124 | #define SACCUM_MAX __SACCUM_MAX__ |
| 125 | #define SACCUM_EPSILON __SACCUM_EPSILON__ |
| 126 | |
| 127 | #undef USACCUM_FBIT |
| 128 | #undef USACCUM_IBIT |
| 129 | #undef USACCUM_MIN |
| 130 | #undef USACCUM_MAX |
| 131 | #undef USACCUM_EPSILON |
| 132 | #define USACCUM_FBIT __USACCUM_FBIT__ |
| 133 | #define USACCUM_IBIT __USACCUM_IBIT__ |
| 134 | #define USACCUM_MIN __USACCUM_MIN__ /* GCC extension. */ |
| 135 | #define USACCUM_MAX __USACCUM_MAX__ |
| 136 | #define USACCUM_EPSILON __USACCUM_EPSILON__ |
| 137 | |
| 138 | #undef ACCUM_FBIT |
| 139 | #undef ACCUM_IBIT |
| 140 | #undef ACCUM_MIN |
| 141 | #undef ACCUM_MAX |
| 142 | #undef ACCUM_EPSILON |
| 143 | #define ACCUM_FBIT __ACCUM_FBIT__ |
| 144 | #define ACCUM_IBIT __ACCUM_IBIT__ |
| 145 | #define ACCUM_MIN __ACCUM_MIN__ |
| 146 | #define ACCUM_MAX __ACCUM_MAX__ |
| 147 | #define ACCUM_EPSILON __ACCUM_EPSILON__ |
| 148 | |
| 149 | #undef UACCUM_FBIT |
| 150 | #undef UACCUM_IBIT |
| 151 | #undef UACCUM_MIN |
| 152 | #undef UACCUM_MAX |
| 153 | #undef UACCUM_EPSILON |
| 154 | #define UACCUM_FBIT __UACCUM_FBIT__ |
| 155 | #define UACCUM_IBIT __UACCUM_IBIT__ |
| 156 | #define UACCUM_MIN __UACCUM_MIN__ /* GCC extension. */ |
| 157 | #define UACCUM_MAX __UACCUM_MAX__ |
| 158 | #define UACCUM_EPSILON __UACCUM_EPSILON__ |
| 159 | |
| 160 | #undef LACCUM_FBIT |
| 161 | #undef LACCUM_IBIT |
| 162 | #undef LACCUM_MIN |
| 163 | #undef LACCUM_MAX |
| 164 | #undef LACCUM_EPSILON |
| 165 | #define LACCUM_FBIT __LACCUM_FBIT__ |
| 166 | #define LACCUM_IBIT __LACCUM_IBIT__ |
| 167 | #define LACCUM_MIN __LACCUM_MIN__ |
| 168 | #define LACCUM_MAX __LACCUM_MAX__ |
| 169 | #define LACCUM_EPSILON __LACCUM_EPSILON__ |
| 170 | |
| 171 | #undef ULACCUM_FBIT |
| 172 | #undef ULACCUM_IBIT |
| 173 | #undef ULACCUM_MIN |
| 174 | #undef ULACCUM_MAX |
| 175 | #undef ULACCUM_EPSILON |
| 176 | #define ULACCUM_FBIT __ULACCUM_FBIT__ |
| 177 | #define ULACCUM_IBIT __ULACCUM_IBIT__ |
| 178 | #define ULACCUM_MIN __ULACCUM_MIN__ /* GCC extension. */ |
| 179 | #define ULACCUM_MAX __ULACCUM_MAX__ |
| 180 | #define ULACCUM_EPSILON __ULACCUM_EPSILON__ |
| 181 | |
| 182 | #undef LLACCUM_FBIT |
| 183 | #undef LLACCUM_IBIT |
| 184 | #undef LLACCUM_MIN |
| 185 | #undef LLACCUM_MAX |
| 186 | #undef LLACCUM_EPSILON |
| 187 | #define LLACCUM_FBIT __LLACCUM_FBIT__ /* GCC extension. */ |
| 188 | #define LLACCUM_IBIT __LLACCUM_IBIT__ /* GCC extension. */ |
| 189 | #define LLACCUM_MIN __LLACCUM_MIN__ /* GCC extension. */ |
| 190 | #define LLACCUM_MAX __LLACCUM_MAX__ /* GCC extension. */ |
| 191 | #define LLACCUM_EPSILON __LLACCUM_EPSILON__ /* GCC extension. */ |
| 192 | |
| 193 | #undef ULLACCUM_FBIT |
| 194 | #undef ULLACCUM_IBIT |
| 195 | #undef ULLACCUM_MIN |
| 196 | #undef ULLACCUM_MAX |
| 197 | #undef ULLACCUM_EPSILON |
| 198 | #define ULLACCUM_FBIT __ULLACCUM_FBIT__ /* GCC extension. */ |
| 199 | #define ULLACCUM_IBIT __ULLACCUM_IBIT__ /* GCC extension. */ |
| 200 | #define ULLACCUM_MIN __ULLACCUM_MIN__ /* GCC extension. */ |
| 201 | #define ULLACCUM_MAX __ULLACCUM_MAX__ /* GCC extension. */ |
| 202 | #define ULLACCUM_EPSILON __ULLACCUM_EPSILON__ /* GCC extension. */ |
| 203 | |
| 204 | #endif /* _STDFIX_H */ |