1*4c3eb207Smrg /* Copyright (C) 2019-2020 Free Software Foundation, Inc. 2*4c3eb207Smrg 3*4c3eb207Smrg This file is part of LIBF7, which is part of GCC. 4*4c3eb207Smrg 5*4c3eb207Smrg GCC is free software; you can redistribute it and/or modify it under 6*4c3eb207Smrg the terms of the GNU General Public License as published by the Free 7*4c3eb207Smrg Software Foundation; either version 3, or (at your option) any later 8*4c3eb207Smrg version. 9*4c3eb207Smrg 10*4c3eb207Smrg GCC is distributed in the hope that it will be useful, but WITHOUT ANY 11*4c3eb207Smrg WARRANTY; without even the implied warranty of MERCHANTABILITY or 12*4c3eb207Smrg FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 13*4c3eb207Smrg for more details. 14*4c3eb207Smrg 15*4c3eb207Smrg Under Section 7 of GPL version 3, you are granted additional 16*4c3eb207Smrg permissions described in the GCC Runtime Library Exception, version 17*4c3eb207Smrg 3.1, as published by the Free Software Foundation. 18*4c3eb207Smrg 19*4c3eb207Smrg You should have received a copy of the GNU General Public License and 20*4c3eb207Smrg a copy of the GCC Runtime Library Exception along with this program; 21*4c3eb207Smrg see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 22*4c3eb207Smrg <http://www.gnu.org/licenses/>. */ 23*4c3eb207Smrg 24*4c3eb207Smrg #if !defined STATIC 25*4c3eb207Smrg #define STATIC /* empty */ 26*4c3eb207Smrg #endif 27*4c3eb207Smrg 28*4c3eb207Smrg #if USE_LPM 29*4c3eb207Smrg #define F7_CONST_DEF(NAME, FLAGS, M6, M5, M4, M3, M2, M1, M0, EXPO) \ 30*4c3eb207Smrg STATIC const __attribute__((__progmem__)) \ 31*4c3eb207Smrg f7_t F7_(const_ ## NAME ## _P) = \ 32*4c3eb207Smrg { .flags = FLAGS, .mant = { M0, M1, M2, M3, M4, M5, M6 }, .expo = EXPO }; 33*4c3eb207Smrg #include "libf7-const.def" 34*4c3eb207Smrg #undef F7_CONST_DEF 35*4c3eb207Smrg #else 36*4c3eb207Smrg #define F7_CONST_DEF(NAME, FLAGS, M6, M5, M4, M3, M2, M1, M0, EXPO) \ 37*4c3eb207Smrg STATIC const f7_t F7_(const_ ## NAME) = \ 38*4c3eb207Smrg { .flags = FLAGS, .mant = { M0, M1, M2, M3, M4, M5, M6 }, .expo = EXPO }; 39*4c3eb207Smrg #include "libf7-const.def" 40*4c3eb207Smrg #undef F7_CONST_DEF 41*4c3eb207Smrg #endif // USE_LPM 42*4c3eb207Smrg 43*4c3eb207Smrg #undef STATIC 44