Vincenzo Comito
/
AEB
AEB
rtGetNaN.cpp
- Committer:
- clynamen
- Date:
- 2016-07-30
- Revision:
- 3:4bb49a5dfa47
- Parent:
- 2:5811e080f41d
File content as of revision 3:4bb49a5dfa47:
/* * Academic License - for use in teaching, academic research, and meeting * course requirements at degree granting institutions only. Not for * government, commercial, or other organizational use. * * File: rtGetNaN.c * * Code generated for Simulink model 'AEB0'. * * Model version : 1.63 * Simulink Coder version : 8.10 (R2016a) 10-Feb-2016 * C/C++ source code generated on : Tue Jul 26 21:28:16 2016 * * Target selection: ert.tlc * Embedded hardware selection: Intel->x86-64 (Windows64) * Code generation objectives: Unspecified * Validation result: Not run */ /* * Abstract: * Function to intialize non-finite, NaN */ #include "rtGetNaN.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 } }; nanF.wordL.wordLuint = 0xFFC00000U; return nanF.wordL.wordLreal; } /* * File trailer for generated code. * * [EOF] */