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.

54 lines
1.5 KiB

  1. //
  2. // For compatibility with Ke Emulation and EFI Emulation commented out the header file.
  3. //
  4. // #include "EM_types.h"
  5. // #include "EM_support.h"
  6. // #include "EM_prototypes.h"
  7. typedef struct _BUNDLE {
  8. EM_uint64_t BundleLow;
  9. EM_uint64_t BundleHigh;
  10. } BUNDLE;
  11. #ifdef WIN32_OR_WIN64
  12. typedef struct __declspec(align(16)) _FLOAT128_TYPE {
  13. #else
  14. typedef struct _FLOAT128_TYPE {
  15. #endif
  16. EM_uint64_t loFlt64;
  17. EM_uint64_t hiFlt64;
  18. } FLOAT128_TYPE;
  19. typedef struct fp_state_low_preserved_s {
  20. FLOAT128_TYPE fp_lp[4]; // f2-f5; f2=fp_lp[0], f3=fp_lp[1], ...
  21. } FP_STATE_LOW_PRESERVED;
  22. typedef struct fp_state_low_volatile_s {
  23. FLOAT128_TYPE fp_lv[10]; // f6-f15; f6=fp_lv[0], f7=fp_lv[1], ...
  24. } FP_STATE_LOW_VOLATILE;
  25. typedef struct fp_state_high_preserved_s {
  26. FLOAT128_TYPE fp_hp[16]; // f16-f31; f16=fp_hp[0], f17=fp_hp[1], ...
  27. } FP_STATE_HIGH_PRESERVED;
  28. typedef struct fp_state_high_volatile_s {
  29. FLOAT128_TYPE fp_hv[96]; // f32-f127; f32=fp_hv[0], f33=fp_hv[1], ...
  30. } FP_STATE_HIGH_VOLATILE;
  31. typedef struct fp_state_s {
  32. __int64 bitmask_low64; // f2-f63
  33. __int64 bitmask_high64; // f64-f127
  34. FP_STATE_LOW_PRESERVED *fp_state_low_preserved; // f2-f5
  35. FP_STATE_LOW_VOLATILE *fp_state_low_volatile; // f6-f15
  36. FP_STATE_HIGH_PRESERVED *fp_state_high_preserved; // f16-f31
  37. FP_STATE_HIGH_VOLATILE *fp_state_high_volatile; // f32-f127
  38. } FP_STATE;
  39. typedef struct {
  40. EM_int64_t retval; // r8
  41. EM_uint64_t err1; // r9
  42. EM_uint64_t err2; // r10
  43. EM_uint64_t err3; // r11
  44. } PAL_RETURN;