Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

73 lines
2.0 KiB

  1. /* $Id: dmath.c,v 1.2 1995/09/25 11:39:43 james Exp $ */
  2. #include <math.h>
  3. #include <limits.h>
  4. #include "driver.h"
  5. #include "dmath.h"
  6. //#ifdef USE_FLOAT
  7. #define CONST_TWOPOW20 1048576
  8. #define CONST_TWOPOW27 134217728
  9. #define FLOAT_TWOPOW27 ((float)(CONST_TWOPOW27))
  10. float RLDDIFloatConstInv64K = (float)1.0 / (float)65536.0;
  11. float RLDDIFloatConstInv256 = (float)1.0 / (float)256.0;
  12. float RLDDIFloatConst64K = (float)65536.0;
  13. float RLDDIFloatConst2p24 = (float)65536.0 * (float)256.0;
  14. float RLDDIFloatConst2p36 = (float)16.0 * (float)65536.0 * (float)65536.0;
  15. float RLDDIFloatConst5 = (float)5.0;
  16. float RLDDIFloatConst16 = (float)16.0;
  17. float RLDDIFloatConst1 = (float)1.0;
  18. float RLDDIFloatConstHalf = (float)0.5;
  19. float RLDDIFloatConstAffineThreshold = (float)2.0 * (float)64.0;
  20. float g_fOne = (float)1.0;
  21. float g_fOoTwoPow20 = (float)(1.0 / (double)CONST_TWOPOW20);
  22. float g_fTwoPow27 = FLOAT_TWOPOW27;
  23. //#endif
  24. double RLDDIConvertIEEE[33] =
  25. {
  26. TWOPOW32 + TWOPOW(52),
  27. TWOPOW32 + TWOPOW(51),
  28. TWOPOW32 + TWOPOW(50),
  29. TWOPOW32 + TWOPOW(49),
  30. TWOPOW32 + TWOPOW(48),
  31. TWOPOW32 + TWOPOW(47),
  32. TWOPOW32 + TWOPOW(46),
  33. TWOPOW32 + TWOPOW(45),
  34. TWOPOW32 + TWOPOW(44),
  35. TWOPOW32 + TWOPOW(43),
  36. TWOPOW32 + TWOPOW(42),
  37. TWOPOW32 + TWOPOW(41),
  38. TWOPOW32 + TWOPOW(40),
  39. TWOPOW32 + TWOPOW(39),
  40. TWOPOW32 + TWOPOW(38),
  41. TWOPOW32 + TWOPOW(37),
  42. TWOPOW32 + TWOPOW(36),
  43. TWOPOW32 + TWOPOW(35),
  44. TWOPOW32 + TWOPOW(34),
  45. TWOPOW32 + TWOPOW(33),
  46. TWOPOW32 + TWOPOW(31),
  47. TWOPOW(31) + TWOPOW(30),
  48. TWOPOW(30) + TWOPOW(29),
  49. TWOPOW(29) + TWOPOW(28),
  50. TWOPOW(28) + TWOPOW(27),
  51. TWOPOW(27) + TWOPOW(26),
  52. TWOPOW(26) + TWOPOW(25),
  53. TWOPOW(25) + TWOPOW(24),
  54. TWOPOW(24) + TWOPOW(23),
  55. TWOPOW(23) + TWOPOW(22),
  56. TWOPOW(22) + TWOPOW(21),
  57. TWOPOW(21) + TWOPOW(20),
  58. TWOPOW(20) + TWOPOW(19)
  59. };
  60. RLDDIValue RLDDIhdivtab[] = {
  61. #include "hdivtab.i"
  62. };
  63. #ifdef CHIMERA
  64. unsigned short RLDDI_reciprocals[] = {
  65. #include "recips.i"
  66. };
  67. #endif