]> git.proxmox.com Git - mirror_edk2.git/blobdiff - StdLib/Include/X64/machine/fpu.h
edk2: Remove AppPkg, StdLib, StdLibPrivateInternalFiles
[mirror_edk2.git] / StdLib / Include / X64 / machine / fpu.h
diff --git a/StdLib/Include/X64/machine/fpu.h b/StdLib/Include/X64/machine/fpu.h
deleted file mode 100644 (file)
index b463062..0000000
+++ /dev/null
@@ -1,103 +0,0 @@
-/*     $NetBSD: fpu.h,v 1.1 2003/04/26 18:39:40 fvdl Exp $     */\r
-\r
-#ifndef        _AMD64_FPU_H_\r
-#define        _AMD64_FPU_H_\r
-\r
-/*\r
- * NetBSD/amd64 only uses the extended save/restore format used\r
- * by fxsave/fsrestore, to always deal with the SSE registers,\r
- * which are part of the ABI to pass floating point values.\r
- * Must be stored in memory on a 16-byte boundary.\r
- */\r
-\r
-struct fxsave64 {\r
-       u_int16_t  fx_fcw;\r
-       u_int16_t  fx_fsw;\r
-       u_int8_t   fx_ftw;\r
-       u_int8_t   fx_unused1;\r
-       u_int16_t  fx_fop;\r
-       u_int64_t  fx_rip;\r
-       u_int64_t  fx_rdp;\r
-       u_int32_t  fx_mxcsr;\r
-       u_int32_t  fx_mxcsr_mask;\r
-       u_int64_t  fx_st[8][2];   /* 8 normal FP regs */\r
-       u_int64_t  fx_xmm[16][2]; /* 16 SSE2 registers */\r
-       u_int8_t   fx_unused3[96];\r
-} __attribute__((packed));\r
-\r
-struct savefpu {\r
-       struct fxsave64 fp_fxsave;      /* see above */\r
-       u_int16_t fp_ex_sw;             /* saved status from last exception */\r
-       u_int16_t fp_ex_tw;             /* saved tag from last exception */\r
-};\r
-\r
-#ifdef _KERNEL\r
-\r
-/*\r
- * This one only used for backward compat coredumping.\r
- */\r
-struct oldfsave {\r
-       u_int16_t       fs_control;\r
-       u_int16_t       fs_unused0;\r
-       u_int16_t       fs_status;\r
-       u_int16_t       fs_unused1;\r
-       u_int16_t       fs_tag;\r
-       u_int16_t       fs_unused2;\r
-       u_int32_t       fs_ipoff;\r
-       u_int16_t       fs_ipsel;\r
-       u_int16_t       fs_op;\r
-       u_int32_t       fs_opoff;\r
-       u_int16_t       fs_opsel;\r
-} __attribute__ ((packed));\r
-\r
-#endif\r
-\r
-\r
-/*\r
- * The i387 defaults to Intel extended precision mode and round to nearest,\r
- * with all exceptions masked.\r
- */\r
-#define        __INITIAL_NPXCW__       0x037f\r
-#define __INITIAL_MXCSR__      0x1f80\r
-#define __INITIAL_MXCSR_MASK__ 0xffbf\r
-\r
-/* NetBSD uses IEEE double precision. */\r
-#define        __NetBSD_NPXCW__        0x127f\r
-/* Linux just uses the default control word. */\r
-#define        __Linux_NPXCW__         0x037f\r
-\r
-/*\r
- * The standard control word from finit is 0x37F, giving:\r
- *     round to nearest\r
- *     64-bit precision\r
- *     all exceptions masked.\r
- *\r
- * Now we want:\r
- *     affine mode (if we decide to support 287's)\r
- *     round to nearest\r
- *     53-bit precision\r
- *     all exceptions masked.\r
- *\r
- * 64-bit precision often gives bad results with high level languages\r
- * because it makes the results of calculations depend on whether\r
- * intermediate values are stored in memory or in FPU registers.\r
- */\r
-\r
-#ifdef _KERNEL\r
-/*\r
- * XXX\r
- */\r
-struct trapframe;\r
-struct cpu_info;\r
-\r
-void fpuinit(struct cpu_info *);\r
-void fpudrop(void);\r
-void fpusave(struct lwp *);\r
-void fpudiscard(struct lwp *);\r
-void fputrap(struct trapframe *);\r
-void fpusave_lwp(struct lwp *, int);\r
-void fpusave_cpu(struct cpu_info *, int);\r
-\r
-#endif\r
-\r
-#endif /* _AMD64_FPU_H_ */\r