Source code of Windows XP (NT5)
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.

56 lines
1.7 KiB

  1. /***
  2. *cmiscdat.c - miscellaneous C run-time data
  3. *
  4. * Copyright (c) 1989-2001, Microsoft Corporation. All rights reserved.
  5. *
  6. *Purpose:
  7. * Includes floating point conversion table (for C float output).
  8. *
  9. * When floating point I/O conversions are done, but no floating-point
  10. * variables or expressions are used in the C program, we use the
  11. * _cfltcvt_tab[] to map these cases to the _fptrap entry point,
  12. * which prints "floating point not loaded" and dies.
  13. *
  14. * This table is initialized to six copies of _fptrap by default.
  15. * If floating-point is linked in (_fltused), these table entries
  16. * are reset (see input.c, output.c, fltused.asm, and fltuseda.asm).
  17. *
  18. *Revision History:
  19. * 06-29-89 PHG module created, based on asm version
  20. * 04-06-90 GJF Added #include <cruntime.h>. Also, fixed the copyright
  21. * and cleaned up the formatting a bit.
  22. * 07-31-90 SBM Updated comments slightly
  23. * 08-29-90 SBM Added #include <internal.h> and <fltintrn.h>,
  24. * removed _fptrap() prototype
  25. * 04-19-93 SKS Remove obsolete variable _sigintoff
  26. * 11-30-95 SKS Removed obsolete comments about 16-bit functionality.
  27. *
  28. *******************************************************************************/
  29. #include <cruntime.h>
  30. #include <internal.h>
  31. #include <fltintrn.h>
  32. /*-
  33. * ... table of (model-dependent) code pointers ...
  34. *
  35. * Six entries, all point to _fptrap by default,
  36. * but are changed to point to the appropriate
  37. * routine if the _fltused initializer (_cfltcvt_init)
  38. * is linked in.
  39. *
  40. * if the _fltused modules are linked in, then the
  41. * _cfltcvt_init initializer sets the 6 entries of
  42. * _cfltcvt_tab to:
  43. *
  44. * _cfltcvt
  45. * _cropzeros
  46. * _fassign
  47. * _forcdecpt
  48. * _positive
  49. * _cldcvt
  50. -*/
  51. void (*_cfltcvt_tab[6])(void) = {
  52. _fptrap, _fptrap, _fptrap, _fptrap, _fptrap, _fptrap
  53. };