diff options
Diffstat (limited to 'include/gmisc/options.h')
| -rw-r--r-- | include/gmisc/options.h | 27 | 
1 files changed, 26 insertions, 1 deletions
| diff --git a/include/gmisc/options.h b/include/gmisc/options.h index 73b41800..9c309487 100644 --- a/include/gmisc/options.h +++ b/include/gmisc/options.h @@ -44,9 +44,34 @@  /**
   * @}
   *
 - * @name    GMISC Optional Sizing Parameters
 + * @name    GMISC Optional Parameters
   * @{
   */
 +	/**
 +	 * @brief	Modifies the @p invsqrt() function to assume a different integer to floating point endianness.
 +	 * @note	Normally the floating point format and the integer format have
 +	 * 			the same endianness. Unfortunately there are some strange
 +	 * 			processors that don't eg. some very early ARM devices.
 +	 * 			For those where the endianness doesn't match you can fix it by
 +	 * 			defining GDISP_INVSQRT_MIXED_ENDIAN.
 +	 * @note	This still assumes the processor is using an ieee floating point format.
 +	 *
 +	 * If you have a software floating point that uses a non-standard
 +	 * floating point format (or very strange hardware) then define
 +	 * GDISP_INVSQRT_REAL_SLOW and it will do it the hard way.
 +	 */
 +	#ifndef GDISP_INVSQRT_MIXED_ENDIAN
 +		#define GDISP_INVSQRT_MIXED_ENDIAN	FALSE
 +	#endif
 +	/**
 +	 * @brief	Modifies the @p invsqrt() function to do things the long slow way.
 +	 * @note	This causes the @p invsqrt() function to work regardless of the
 +	 * 			processor floating point format.
 +	 * @note	This makes the @p invsqrt() function very slow.
 +	 */
 +	#ifndef GDISP_INVSQRT_REAL_SLOW
 +		#define GDISP_INVSQRT_REAL_SLOW		FALSE
 +	#endif
  /** @} */
  #endif /* _GMISC_OPTIONS_H */
 | 
