Changeset 105439 in vbox for trunk/src/VBox/ValidationKit
- Timestamp:
- Jul 23, 2024 10:04:18 AM (6 months ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/ValidationKit/bootsectors/bs3-cpu-instr-4.c32
r105438 r105439 2739 2739 2740 2740 2741 #if 02742 2741 /* 2743 2742 * [V]HADDPS. … … 2753 2752 { /*src1 */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2754 2753 { /* => */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2755 /*mask */ X86_MXCSR_XCPT_MASK, 2756 /*daz,fz,rc*/ 0, 0, X86_MXCSR_RC_NEAREST, 2757 /*flags */ 0, 0 }, 2754 /*mxcsr:in */ X86_MXCSR_XCPT_MASK, 2755 /*128:out */ X86_MXCSR_XCPT_MASK, 2756 /*256:out */ X86_MXCSR_XCPT_MASK, 2757 /*xcpt? */ false, false }, 2758 2758 { { /*src2 */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2759 2759 { /*src1 */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2760 2760 { /* => */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2761 /*mask */ ~X86_MXCSR_XCPT_MASK, 2762 /*daz,fz,rc*/ 0, 0, X86_MXCSR_RC_NEAREST, 2763 /*flags */ 0, 0 }, 2761 /*mxcsr:in */ 0, 2762 /*128:out */ 0, 2763 /*256:out */ 0, 2764 /*xcpt? */ false, false }, 2764 2765 { { /*src2 */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2765 2766 { /*src1 */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2766 2767 { /* => */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2767 /*mask */ ~X86_MXCSR_XCPT_MASK, 2768 /*daz,fz,rc*/ X86_MXCSR_DAZ, X86_MXCSR_FZ, X86_MXCSR_RC_UP, 2769 /*flags */ 0, 0 }, 2768 /*mxcsr:in */ X86_MXCSR_DAZ | X86_MXCSR_FZ | X86_MXCSR_RC_UP, 2769 /*128:out */ X86_MXCSR_DAZ | X86_MXCSR_FZ | X86_MXCSR_RC_UP, 2770 /*256:out */ X86_MXCSR_DAZ | X86_MXCSR_FZ | X86_MXCSR_RC_UP, 2771 /*xcpt? */ false, false }, 2770 2772 { { /*src2 */ { FP32_0(1), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(1) } }, 2771 2773 { /*src1 */ { FP32_0(1), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(1) } }, 2772 2774 { /* => */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2773 /*mask */ ~X86_MXCSR_XCPT_MASK, 2774 /*daz,fz,rc*/ X86_MXCSR_DAZ, 0, X86_MXCSR_RC_ZERO, 2775 /*flags */ 0, 0 }, 2775 /*mxcsr:in */ X86_MXCSR_DAZ | X86_MXCSR_RC_ZERO, 2776 /*128:out */ X86_MXCSR_DAZ | X86_MXCSR_RC_ZERO, 2777 /*256:out */ X86_MXCSR_DAZ | X86_MXCSR_RC_ZERO, 2778 /*xcpt? */ false, false }, 2776 2779 { { /*src2 */ { FP32_0(0), FP32_0(0), FP32_0(1), FP32_0(0), FP32_0(1), FP32_0(0), FP32_0(1), FP32_0(1) } }, 2777 2780 { /*src1 */ { FP32_0(0), FP32_0(0), FP32_0(1), FP32_0(0), FP32_0(1), FP32_0(0), FP32_0(1), FP32_0(1) } }, 2778 2781 { /* => */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(1), FP32_0(0), FP32_0(1) } }, 2779 /*mask */ ~X86_MXCSR_XCPT_MASK, 2780 /*daz,fz,rc*/ 0, X86_MXCSR_FZ, X86_MXCSR_RC_ZERO, 2781 /*flags */ 0, 0 }, 2782 /*mxcsr:in */ X86_MXCSR_FZ | X86_MXCSR_RC_ZERO, 2783 /*128:out */ X86_MXCSR_FZ | X86_MXCSR_RC_ZERO, 2784 /*256:out */ X86_MXCSR_FZ | X86_MXCSR_RC_ZERO, 2785 /*xcpt? */ false, false }, 2782 2786 { { /*src2 */ { FP32_0(0), FP32_0(1), FP32_0(0), FP32_0(1), FP32_0(0), FP32_0(1), FP32_0(0), FP32_0(1) } }, 2783 2787 { /*src1 */ { FP32_0(0), FP32_0(1), FP32_0(0), FP32_0(1), FP32_0(0), FP32_0(1), FP32_0(0), FP32_0(1) } }, 2784 2788 { /* => */ { FP32_0(1), FP32_0(1), FP32_0(1), FP32_0(1), FP32_0(1), FP32_0(1), FP32_0(1), FP32_0(1) } }, 2785 /*mask */ X86_MXCSR_XCPT_MASK, 2786 /*daz,fz,rc*/ X86_MXCSR_DAZ, X86_MXCSR_FZ, X86_MXCSR_RC_DOWN, 2787 /*flags */ 0, 0 }, 2789 /*mxcsr:in */ X86_MXCSR_XCPT_MASK | X86_MXCSR_DAZ | X86_MXCSR_FZ | X86_MXCSR_RC_DOWN, 2790 /*128:out */ X86_MXCSR_XCPT_MASK | X86_MXCSR_DAZ | X86_MXCSR_FZ | X86_MXCSR_RC_DOWN, 2791 /*256:out */ X86_MXCSR_XCPT_MASK | X86_MXCSR_DAZ | X86_MXCSR_FZ | X86_MXCSR_RC_DOWN, 2792 /*xcpt? */ false, false }, 2788 2793 /* 2789 2794 * Infinity. … … 2792 2797 { /*src1 */ { FP32_INF(1), FP32_INF(0), FP32_0(0), FP32_0(0), FP32_INF(0), FP32_INF(1), FP32_0(0), FP32_0(0) } }, 2793 2798 { /* => */ { FP32_QNAN(1), FP32_0(0), FP32_QNAN(1), FP32_QNAN(1), FP32_QNAN(1), FP32_0(0), FP32_QNAN(1), FP32_QNAN(1) } }, 2794 /*mask */ X86_MXCSR_IM, 2795 /*daz,fz,rc*/ 0, 0, X86_MXCSR_RC_NEAREST, 2796 /*flags */ X86_MXCSR_IE, X86_MXCSR_IE }, 2797 { { /*src2 */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_INF(1), FP32_INF(1), FP32_0(0), FP32_0(0) } }, 2798 { /*src1 */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_INF(1), FP32_INF(0), FP32_INF(0), FP32_INF(0) } }, 2799 { /* => */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_QNAN(1), FP32_INF(0), FP32_INF(1), FP32_0(0) } }, 2800 /*mask */ X86_MXCSR_XCPT_MASK, 2801 /*daz,fz,rc*/ 0, 0, X86_MXCSR_RC_NEAREST, 2802 /*flags */ 0, X86_MXCSR_IE }, 2799 /*mxcsr:in */ X86_MXCSR_IM, 2800 /*128:out */ X86_MXCSR_IM | X86_MXCSR_IE, 2801 /*256:out */ X86_MXCSR_IM | X86_MXCSR_IE, 2802 /*xcpt? */ false, false }, 2803 { { /*src2 */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_INF(1), FP32_INF(1), FP32_0(0), FP32_0(0) } }, 2804 { /*src1 */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_INF(1), FP32_INF(0), FP32_INF(0), FP32_INF(0) } }, 2805 { /* => */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_QNAN(1), FP32_INF(0), FP32_INF(1), FP32_0(0) } }, 2806 /*mxcsr:in */ X86_MXCSR_XCPT_MASK, 2807 /*128:out */ X86_MXCSR_XCPT_MASK, 2808 /*256:out */ X86_MXCSR_XCPT_MASK | X86_MXCSR_IE, 2809 /*xcpt? */ false, false }, 2803 2810 { { /*src2 */ { FP32_INF(0), FP32_INF(1), FP32_INF(0), FP32_INF(1), FP32_INF(1), FP32_INF(1), FP32_0(0), FP32_0(0) } }, 2804 2811 { /*src1 */ { FP32_INF(1), FP32_INF(0), FP32_0(0), FP32_0(0), FP32_INF(1), FP32_INF(0), FP32_INF(0), FP32_INF(0) } }, 2805 2812 { /* => */ { FP32_QNAN(1), FP32_0(0), FP32_QNAN(1), FP32_QNAN(1), FP32_QNAN(1), FP32_INF(0), FP32_INF(1), FP32_0(0) } }, 2806 /*mask */ ~X86_MXCSR_XCPT_MASK, 2807 /*daz,fz,rc*/ 0, X86_MXCSR_FZ, X86_MXCSR_RC_NEAREST, 2808 /*flags */ X86_MXCSR_IE, X86_MXCSR_IE }, 2813 /*mxcsr:in */ X86_MXCSR_FZ, 2814 /*128:out */ X86_MXCSR_FZ | X86_MXCSR_IE, 2815 /*256:out */ X86_MXCSR_FZ | X86_MXCSR_IE, 2816 /*xcpt? */ true, true }, 2809 2817 { { /*src2 */ { FP32_INF(1), FP32_INF(1), FP32_INF(0), FP32_0(0), FP32_INF(1), FP32_INF(1), FP32_INF(0), FP32_0(0) } }, 2810 2818 { /*src1 */ { FP32_INF(0), FP32_INF(0), FP32_INF(1), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2811 2819 { /* => */ { FP32_INF(0), FP32_INF(1), FP32_INF(1), FP32_INF(0), FP32_0(0), FP32_0(0), FP32_INF(1), FP32_INF(0) } }, 2812 /*mask */ ~X86_MXCSR_XCPT_MASK, 2813 /*daz,fz,rc*/ 0, X86_MXCSR_FZ, X86_MXCSR_RC_NEAREST, 2814 /*flags */ 0, 0 }, 2820 /*mxcsr:in */ 0, 2821 /*128:out */ 0, 2822 /*256:out */ 0, 2823 /*xcpt? */ false, false }, 2815 2824 { { /*src2 */ { FP32_INF(0), FP32_QNAN(1), FP32_INF(1), FP32_QNAN(0), FP32_INF(1), FP32_INF(1), FP32_0(0), FP32_0(0) } }, 2816 2825 { /*src1 */ { FP32_INF(0), FP32_QNAN(0), FP32_INF(1), FP32_QNAN(0), FP32_INF(1), FP32_QNAN(1), FP32_INF(0), FP32_INF(0) } }, 2817 2826 { /* => */ { FP32_QNAN(0), FP32_QNAN(0), FP32_QNAN(1), FP32_QNAN(0), FP32_QNAN(1), FP32_INF(0), FP32_INF(1), FP32_0(0) } }, 2818 /*mask */ X86_MXCSR_XCPT_MASK, 2819 /*daz,fz,rc*/ 0, X86_MXCSR_FZ, X86_MXCSR_RC_ZERO, 2820 /*flags */ 0, 0 }, 2827 /*mxcsr:in */ X86_MXCSR_XCPT_MASK | X86_MXCSR_RC_ZERO, 2828 /*128:out */ X86_MXCSR_XCPT_MASK | X86_MXCSR_RC_ZERO, 2829 /*256:out */ X86_MXCSR_XCPT_MASK | X86_MXCSR_RC_ZERO, 2830 /*xcpt? */ false, false }, 2821 2831 /* 2822 2832 * Overflow, Precision. … … 2825 2835 { /*src1 */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_NORM_MAX(1), FP32_NORM_MAX(1), FP32_NORM_MAX(1), FP32_NORM_MAX(1) } }, 2826 2836 { /* => */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2827 /*mask */ ~X86_MXCSR_XCPT_MASK, 2828 /*daz,fz,rc*/ 0, 0, X86_MXCSR_RC_NEAREST, 2829 /*flags */ 0, X86_MXCSR_OE }, 2837 /*mxcsr:in */ 0, 2838 /*128:out */ 0, 2839 /*256:out */ X86_MXCSR_OE, 2840 /*xcpt? */ false, true }, 2830 2841 { { /*src2 */ { FP32_NORM_MIN(1), FP32_NORM_MIN(1), FP32_NORM_MAX(0), FP32_NORM_MAX(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2831 2842 { /*src1 */ { FP32_NORM_MAX(1), FP32_NORM_MAX(1), FP32_NORM_MAX(1), FP32_NORM_MAX(1), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2832 2843 { /* => */ { FP32_INF(1), FP32_INF(1), FP32_V(1, FP32_FRAC_NORM_MIN, FP32_EXP_NORM_MIN + 1), FP32_INF(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0) } }, 2833 /*mask */ X86_MXCSR_OM | X86_MXCSR_PM, 2834 /*daz,fz,rc*/ 0, 0, X86_MXCSR_RC_NEAREST, 2835 /*flags */ X86_MXCSR_OE | X86_MXCSR_PE, X86_MXCSR_OE | X86_MXCSR_PE }, 2844 /*mxcsr:in */ X86_MXCSR_OM | X86_MXCSR_PM, 2845 /*128:out */ X86_MXCSR_OM | X86_MXCSR_PM | X86_MXCSR_OE | X86_MXCSR_PE, 2846 /*256:out */ X86_MXCSR_OM | X86_MXCSR_PM | X86_MXCSR_OE | X86_MXCSR_PE, 2847 /*xcpt? */ false, false }, 2836 2848 { { /*src2 */ { FP32_NORM_MAX(1), FP32_NORM_MAX(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_NORM_MAX(0) } }, 2837 2849 { /*src1 */ { FP32_NORM_MAX(0), FP32_NORM_MAX(0), FP32_0(0), FP32_0(0), FP32_NORM_MAX(1), FP32_NORM_MAX(1), FP32_0(0), FP32_NORM_MAX(0) } }, 2838 2850 { /* => */ { FP32_NORM_MAX(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_NORM_MAX(1), FP32_NORM_MAX(0), FP32_0(0), FP32_NORM_MAX(0) } }, 2839 /*mask */ X86_MXCSR_OM | X86_MXCSR_PM, 2840 /*daz,fz,rc*/ 0, 0, X86_MXCSR_RC_ZERO, 2841 /*flags */ X86_MXCSR_OE | X86_MXCSR_PE, X86_MXCSR_OE | X86_MXCSR_PE }, 2842 { { /*src2 */ { FP32_NORM_MAX(0), FP32_NORM_MAX(1), FP32_0(0), FP32_NORM_MIN(1), FP32_NORM_MAX(0), FP32_NORM_MAX(0), FP32_0(0), FP32_NORM_MAX(0) } }, 2843 { /*src1 */ { FP32_NORM_MAX(0), FP32_NORM_MAX(0), FP32_NORM_MIN(1), FP32_NORM_MIN(1), FP32_NORM_MIN(1), FP32_NORM_MAX(0), FP32_NORM_MIN(0), FP32_NORM_MAX(1) } }, 2844 { /* => */ { FP32_INF(0), FP32_V(1, 0, 2), FP32_0(0), FP32_NORM_MIN(1), FP32_NORM_MAX(0), FP32_NORM_MAX(1), FP32_INF(0), FP32_NORM_MAX(0) } }, 2845 /*mask */ X86_MXCSR_OM | X86_MXCSR_PM, 2846 /*daz,fz,rc*/ X86_MXCSR_DAZ, X86_MXCSR_FZ, X86_MXCSR_RC_NEAREST, 2847 /*flags */ X86_MXCSR_OE | X86_MXCSR_PE, X86_MXCSR_OE | X86_MXCSR_PE }, 2851 /*mxcsr:in */ X86_MXCSR_OM | X86_MXCSR_PM | X86_MXCSR_RC_ZERO, 2852 /*128:out */ X86_MXCSR_OM | X86_MXCSR_PM | X86_MXCSR_RC_ZERO | X86_MXCSR_OE | X86_MXCSR_PE, 2853 /*256:out */ X86_MXCSR_OM | X86_MXCSR_PM | X86_MXCSR_RC_ZERO | X86_MXCSR_OE | X86_MXCSR_PE, 2854 /*xcpt? */ false, false }, 2855 { { /*src2 */ { FP32_NORM_MAX(0), FP32_NORM_MAX(1), FP32_0(0), FP32_NORM_MIN(1), FP32_NORM_MAX(0), FP32_NORM_MAX(0), FP32_0(0), FP32_NORM_MAX(0) } }, 2856 { /*src1 */ { FP32_NORM_MAX(0), FP32_NORM_MAX(0), FP32_NORM_MIN(1), FP32_NORM_MIN(1), FP32_NORM_MIN(1), FP32_NORM_MAX(0), FP32_NORM_MIN(0), FP32_NORM_MAX(1) } }, 2857 { /* => */ { FP32_INF(0), FP32_V(1, 0, 2), FP32_0(0), FP32_NORM_MIN(1), FP32_NORM_MAX(0), FP32_V(1, FP32_FRAC_NORM_MAX - 1, FP32_EXP_NORM_MAX), FP32_INF(0), FP32_NORM_MAX(0) } }, 2858 /*mxcsr:in */ X86_MXCSR_DAZ | X86_MXCSR_OM | X86_MXCSR_PM | X86_MXCSR_RC_UP, 2859 /*128:out */ X86_MXCSR_DAZ | X86_MXCSR_OM | X86_MXCSR_PM | X86_MXCSR_RC_UP | X86_MXCSR_OE | X86_MXCSR_PE, 2860 /*256:out */ X86_MXCSR_DAZ | X86_MXCSR_OM | X86_MXCSR_PM | X86_MXCSR_RC_UP | X86_MXCSR_OE | X86_MXCSR_PE, 2861 /*xcpt? */ false, false }, 2848 2862 { { /*src2 */ { FP32_NORM_MAX(0), FP32_NORM_MAX(0), FP32_NORM_MAX(0), FP32_0(0), FP32_0(0), FP32_NORM_MAX(0), FP32_NORM_MIN(1), FP32_NORM_MIN(0) } }, 2849 2863 { /*src1 */ { FP32_NORM_MIN(1), FP32_NORM_MIN(1), FP32_NORM_MIN(0), FP32_NORM_MIN(0), FP32_0(0), FP32_NORM_MAX(1), FP32_NORM_MIN(1), FP32_NORM_MIN(1) } }, 2850 2864 { /* => */ { FP32_V(1, 0, 2), FP32_V(0, 0, 2), FP32_NORM_MAX(0), FP32_NORM_MAX(0), FP32_NORM_MAX(1), FP32_V(1, 0, 2), FP32_NORM_MAX(0), FP32_0(0) } }, 2851 /*mask */ X86_MXCSR_OM | X86_MXCSR_PM, 2852 /*daz,fz,rc*/ X86_MXCSR_DAZ, X86_MXCSR_FZ, X86_MXCSR_RC_ZERO, 2853 /*flags */ X86_MXCSR_OE | X86_MXCSR_PE, X86_MXCSR_OE | X86_MXCSR_PE }, 2865 /*mxcsr:in */ X86_MXCSR_OM | X86_MXCSR_PM | X86_MXCSR_RC_ZERO, 2866 /*128:out */ X86_MXCSR_OM | X86_MXCSR_PM | X86_MXCSR_RC_ZERO | X86_MXCSR_OE | X86_MXCSR_PE, 2867 /*256:out */ X86_MXCSR_OM | X86_MXCSR_PM | X86_MXCSR_RC_ZERO | X86_MXCSR_OE | X86_MXCSR_PE, 2868 /*xcpt? */ false, false }, 2854 2869 { { /*src2 */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_NORM_MAX(0), FP32_NORM_MAX(1), FP32_NORM_MAX(1), FP32_NORM_MAX(0) } }, 2855 2870 { /*src1 */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_NORM_MAX(0), FP32_NORM_MAX(0), FP32_NORM_MAX(1), FP32_NORM_MAX(1) } }, 2856 2871 { /* => */ { FP32_0(0), FP32_0(0), FP32_0(0), FP32_0(0), FP32_NORM_MAX(0), FP32_NORM_MAX(1), FP32_0(0), FP32_0(0) } }, 2857 /*mask */ X86_MXCSR_XCPT_MASK, 2858 /*daz,fz,rc*/ 0, 0, X86_MXCSR_RC_ZERO, 2859 /*flags */ 0, X86_MXCSR_OE | X86_MXCSR_PE }, 2872 /*mxcsr:in */ X86_MXCSR_RC_ZERO, 2873 /*128:out */ X86_MXCSR_RC_ZERO, 2874 /*256:out */ X86_MXCSR_RC_ZERO | X86_MXCSR_OE, 2875 /*xcpt? */ false, true }, 2860 2876 { { /*src2 */ { FP32_NORM_SAFE_INT_MIN(0), FP32_NORM_MAX(0), FP32_0(0), FP32_NORM_SAFE_INT_MAX(1), FP32_NORM_SAFE_INT_MIN(0), FP32_NORM_MAX(0), FP32_0(0), FP32_NORM_SAFE_INT_MAX(1) } }, 2861 2877 { /*src1 */ { FP32_NORM_SAFE_INT_MAX(0), FP32_NORM_SAFE_INT_MIN(0), FP32_NORM_SAFE_INT_MAX(1), FP32_NORM_SAFE_INT_MAX(1), FP32_NORM_SAFE_INT_MAX(0), FP32_NORM_MAX(0), FP32_0(0), FP32_NORM_SAFE_INT_MAX(1) } }, 2862 2878 { /* => */ { FP32_NORM_SAFE_INT_MAX(0), FP32_V(1, FP32_FRAC_NORM_MAX, FP32_EXP_SAFE_INT_MAX + 1), FP32_NORM_MAX(0), FP32_NORM_SAFE_INT_MAX(1), FP32_NORM_MAX(0), FP32_NORM_SAFE_INT_MAX(1), FP32_NORM_MAX(0), FP32_NORM_SAFE_INT_MAX(1) } }, 2863 /*mask */ X86_MXCSR_XCPT_MASK, 2864 /*daz,fz,rc*/ 0, 0, X86_MXCSR_RC_ZERO, 2865 /*flags */ X86_MXCSR_PE, X86_MXCSR_PE }, 2879 /*mxcsr:in */ X86_MXCSR_XCPT_MASK | X86_MXCSR_RC_ZERO, 2880 /*128:out */ X86_MXCSR_XCPT_MASK | X86_MXCSR_RC_ZERO | X86_MXCSR_PE, 2881 /*256:out */ X86_MXCSR_XCPT_MASK | X86_MXCSR_RC_ZERO | X86_MXCSR_PE, 2882 /*xcpt? */ false, false }, 2883 #if 0 2866 2884 /* 2867 2885 * Normals. … … 3031 3049 /*flags */ X86_MXCSR_IE, X86_MXCSR_IE }, 3032 3050 /** @todo Underflow, Precision; Rounding, FZ etc. */ 3051 #endif 3033 3052 }; 3034 3053 … … 3080 3099 3081 3100 3101 #if 0 3082 3102 /* 3083 3103 * [V]SUBPS. … … 5115 5135 { "[v]addpd", bs3CpuInstr4_v_addpd, 0 }, 5116 5136 { "[v]addss", bs3CpuInstr4_v_addss, 0 }, 5137 { "[v]haddps", bs3CpuInstr4_v_haddps, 0 }, 5117 5138 # if 0 5118 { "[v]haddps", bs3CpuInstr4_v_haddps, 0 },5119 5139 { "[v]subps", bs3CpuInstr4_v_subps, 0 }, 5120 5140 { "[v]subpd", bs3CpuInstr4_v_subpd, 0 },
Note:
See TracChangeset
for help on using the changeset viewer.