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.

65 lines
1.2 KiB

  1. /*++
  2. Copyright (c) 2001 Microsoft Corporation
  3. Module Name:
  4. fpexception.h
  5. Abstract:
  6. This header contains prototypes for testing i386 floating point exceptions.
  7. Author:
  8. Environment:
  9. User mode only.
  10. Revision History:
  11. --*/
  12. //
  13. // Public things
  14. //
  15. typedef VOID (*PFN_FPX_CALLBACK_FUNC)(IN PVOID Context);
  16. typedef ULONG FPXERR;
  17. #define stOK 1
  18. #define stMISSING_EXCEPTION 2
  19. #define stBAD_EIP 3
  20. #define stBAD_TAG 4
  21. #define stSPURIOUS_EXCEPTION 5
  22. #define stMISSING_EXCEPTION_FOUND 6
  23. #define stEXCEPTION_IN_HANDLER 7
  24. typedef struct {
  25. double Ftag;
  26. double FtagBad;
  27. UINT ExpectedExceptionEIP;
  28. UINT ExceptionEIP;
  29. UINT BadEip;
  30. FPXERR status;
  31. } FP_THREAD_DATA, *PFP_THREAD_DATA;
  32. VOID
  33. FPxInit(
  34. OUT PFP_THREAD_DATA FpThreadData
  35. );
  36. FPXERR
  37. FPxTestExceptions(
  38. IN UINT Tag,
  39. IN PFN_FPX_CALLBACK_FUNC CallbackFunction,
  40. IN OUT PFP_THREAD_DATA FpThreadData,
  41. IN OUT PVOID Context
  42. );
  43. //
  44. // Private things
  45. //