/* * File: rtGetNaN.c * * Code generated for Simulink model 'fuc'. * * Model version : 1.18 * Simulink Coder version : 9.8 (R2022b) 13-May-2022 * C/C++ source code generated on : Sat Jan 6 10:24:46 2024 * * Target selection: ert.tlc * Embedded hardware selection: ARM Compatible->ARM 64-bit (LP64) * Code generation objectives: Unspecified * Validation result: Not run */ #include "rtwtypes.h" #include "rtGetNaN.h" #include #include "rt_nonfinite.h" #define NumBitsPerChar 8U /* * Initialize rtNaN needed by the generated code. * NaN is initialized as non-signaling. Assumes IEEE. */ real_T rtGetNaN(void) { size_t bitsPerReal = sizeof(real_T) * (NumBitsPerChar); real_T nan = 0.0; if (bitsPerReal == 32U) { nan = rtGetNaNF(); } else { union { LittleEndianIEEEDouble bitVal; real_T fltVal; } tmpVal; tmpVal.bitVal.words.wordH = 0xFFF80000U; tmpVal.bitVal.words.wordL = 0x00000000U; nan = tmpVal.fltVal; } return nan; } /* * Initialize rtNaNF needed by the generated code. * NaN is initialized as non-signaling. Assumes IEEE. */ real32_T rtGetNaNF(void) { IEEESingle nanF = { { 0.0F } }; nanF.wordL.wordLuint = 0xFFC00000U; return nanF.wordL.wordLreal; } /* * File trailer for generated code. * * [EOF] */