1/* Copyright (C) 2007-2013 Free Software Foundation, Inc. 2 3This file is part of GCC. 4 5GCC is free software; you can redistribute it and/or modify 6it under the terms of the GNU General Public License as published by 7the Free Software Foundation; either version 3, or (at your option) 8any later version. 9 10GCC is distributed in the hope that it will be useful, 11but WITHOUT ANY WARRANTY; without even the implied warranty of 12MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13GNU General Public License for more details. 14 15Under Section 7 of GPL version 3, you are granted additional 16permissions described in the GCC Runtime Library Exception, version 173.1, as published by the Free Software Foundation. 18 19You should have received a copy of the GNU General Public License and 20a copy of the GCC Runtime Library Exception along with this program; 21see 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 */ 205