From: Julian Seward Date: Sun, 24 Jul 2011 14:20:11 +0000 (+0000) Subject: Add support for IBM Power ISA 2.06 -- stage 2 (testcases). X-Git-Tag: svn/VALGRIND_3_7_0~329 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=e1e9809117707f92c0d4898b748a48c140467b73;p=thirdparty%2Fvalgrind.git Add support for IBM Power ISA 2.06 -- stage 2 (testcases). Bug 276784. (Maynard Johnson, maynardj@us.ibm.com) git-svn-id: svn://svn.valgrind.org/valgrind/trunk@11908 --- diff --git a/none/tests/ppc32/Makefile.am b/none/tests/ppc32/Makefile.am index 1da5435f8e..b451b683fd 100644 --- a/none/tests/ppc32/Makefile.am +++ b/none/tests/ppc32/Makefile.am @@ -27,14 +27,16 @@ EXTRA_DIST = \ xlc_dbl_u32.stderr.exp xlc_dbl_u32.stdout.exp xlc_dbl_u32.vgtest \ power5+_round.stderr.exp power5+_round.stdout.exp power5+_round.vgtest \ power6_bcmp.stderr.exp power6_bcmp.stdout.exp power6_bcmp.vgtest \ - test_isa_2_06_part1.stderr.exp test_isa_2_06_part1.stdout.exp test_isa_2_06_part1.vgtest + test_isa_2_06_part1.stderr.exp test_isa_2_06_part1.stdout.exp test_isa_2_06_part1.vgtest \ + test_isa_2_06_part2.stderr.exp test_isa_2_06_part2.stdout.exp test_isa_2_06_part2.vgtest check_PROGRAMS = \ bug129390-ppc32 \ bug139050-ppc32 \ ldstrev lsw jm-insns mftocrf mcrfs round test_fx test_gx \ testVMX twi tw xlc_dbl_u32 power5+_round power6_bcmp \ - test_isa_2_06_part1 + test_isa_2_06_part1 \ + test_isa_2_06_part2 AM_CFLAGS += @FLAG_M32@ AM_CXXFLAGS += @FLAG_M32@ @@ -63,3 +65,6 @@ testVMX_CFLAGS = $(AM_CFLAGS) -O -g -Wall -maltivec -mabi=altivec -DALTIVEC \ test_isa_2_06_part1_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(VSX_FLAG) \ @FLAG_M32@ $(ALTIVEC_FLAG) $(BUILD_FLAG_VSX) +test_isa_2_06_part2_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(VSX_FLAG) \ + @FLAG_M32@ $(ALTIVEC_FLAG) $(BUILD_FLAG_VSX) + diff --git a/none/tests/ppc32/test_isa_2_06_part2.c b/none/tests/ppc32/test_isa_2_06_part2.c new file mode 100644 index 0000000000..91a3161104 --- /dev/null +++ b/none/tests/ppc32/test_isa_2_06_part2.c @@ -0,0 +1,1730 @@ +/* Copyright (C) 2011 IBM + + Author: Maynard Johnson + + This program is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License as + published by the Free Software Foundation; either version 2 of the + License, or (at your option) any later version. + + This program is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307, USA. + + The GNU General Public License is contained in the file COPYING. + */ + +#ifdef HAS_VSX + +#include +#include +#include +#include +#include +#include +#include + +#ifndef __powerpc64__ +typedef uint32_t HWord_t; +#else +typedef uint64_t HWord_t; +#endif /* __powerpc64__ */ + +typedef unsigned char Bool; +#define True 1 +#define False 0 +register HWord_t r14 __asm__ ("r14"); +register HWord_t r15 __asm__ ("r15"); +register HWord_t r16 __asm__ ("r16"); +register HWord_t r17 __asm__ ("r17"); +register double f14 __asm__ ("fr14"); +register double f15 __asm__ ("fr15"); +register double f16 __asm__ ("fr16"); +register double f17 __asm__ ("fr17"); + +static volatile unsigned int div_flags, div_xer; + +#define ALLCR "cr0","cr1","cr2","cr3","cr4","cr5","cr6","cr7" + +#define SET_CR(_arg) \ + __asm__ __volatile__ ("mtcr %0" : : "b"(_arg) : ALLCR ); + +#define SET_XER(_arg) \ + __asm__ __volatile__ ("mtxer %0" : : "b"(_arg) : "xer" ); + +#define GET_CR(_lval) \ + __asm__ __volatile__ ("mfcr %0" : "=b"(_lval) ) + +#define GET_XER(_lval) \ + __asm__ __volatile__ ("mfxer %0" : "=b"(_lval) ) + +#define GET_CR_XER(_lval_cr,_lval_xer) \ + do { GET_CR(_lval_cr); GET_XER(_lval_xer); } while (0) + +#define SET_CR_ZERO \ + SET_CR(0) + +#define SET_XER_ZERO \ + SET_XER(0) + +#define SET_CR_XER_ZERO \ + do { SET_CR_ZERO; SET_XER_ZERO; } while (0) + +#define SET_FPSCR_ZERO \ + do { double _d = 0.0; \ + __asm__ __volatile__ ("mtfsf 0xFF, %0" : : "f"(_d) ); \ + } while (0) + + +typedef void (*test_func_t)(void); +typedef struct test_table test_table_t; + + +/* These functions below that construct a table of floating point + * values were lifted from none/tests/ppc32/jm-insns.c. + */ + +#if defined (DEBUG_ARGS_BUILD) +#define AB_DPRINTF(fmt, args...) do { fprintf(stderr, fmt , ##args); } while (0) +#else +#define AB_DPRINTF(fmt, args...) do { } while (0) +#endif + +static inline void register_farg (void *farg, + int s, uint16_t _exp, uint64_t mant) +{ + uint64_t tmp; + + tmp = ((uint64_t)s << 63) | ((uint64_t)_exp << 52) | mant; + *(uint64_t *)farg = tmp; + AB_DPRINTF("%d %03x %013llx => %016llx %0e\n", + s, _exp, mant, *(uint64_t *)farg, *(double *)farg); +} + + +typedef struct fp_test_args { + int fra_idx; + int frb_idx; +} fp_test_args_t; + + +fp_test_args_t fp_cmp_tests[] = { + {8, 8}, + {8, 14}, + {8, 6}, + {8, 5}, + {8, 4}, + {8, 7}, + {8, 9}, + {8, 11}, + {14, 8}, + {14, 14}, + {14, 6}, + {14, 5}, + {14, 4}, + {14, 7}, + {14, 9}, + {14, 11}, + {6, 8}, + {6, 14}, + {6, 6}, + {6, 5}, + {6, 4}, + {6, 7}, + {6, 9}, + {6, 11}, + {5, 8}, + {5, 14}, + {5, 6}, + {5, 5}, + {5, 4}, + {5, 7}, + {5, 9}, + {5, 11}, + {4, 8}, + {4, 14}, + {4, 6}, + {4, 5}, + {4, 1}, + {4, 7}, + {4, 9}, + {4, 11}, + {7, 8}, + {7, 14}, + {7, 6}, + {7, 5}, + {7, 4}, + {7, 7}, + {7, 9}, + {7, 11}, + {10, 8}, + {10, 14}, + {10, 6}, + {10, 5}, + {10, 4}, + {10, 7}, + {10, 9}, + {10, 10}, + {12, 8}, + {12, 14}, + {12, 6}, + {12, 5}, + {1, 1}, + {2, 2}, + {3, 3}, + {4, 4}, +}; + + +fp_test_args_t two_arg_fp_tests[] = { + {8, 8}, + {8, 14}, + {15, 16}, + {8, 5}, + {8, 4}, + {8, 7}, + {8, 9}, + {8, 11}, + {14, 8}, + {14, 14}, + {14, 6}, + {14, 5}, + {14, 4}, + {14, 7}, + {14, 9}, + {14, 11}, + {6, 8}, + {6, 14}, + {6, 6}, + {6, 5}, + {6, 4}, + {6, 7}, + {6, 9}, + {6, 11}, + {5, 8}, + {5, 14}, + {5, 6}, + {5, 5}, + {5, 4}, + {5, 7}, + {5, 9}, + {5, 11}, + {4, 8}, + {4, 14}, + {4, 6}, + {4, 5}, + {4, 1}, + {4, 7}, + {4, 9}, + {4, 11}, + {7, 8}, + {7, 14}, + {7, 6}, + {7, 5}, + {7, 4}, + {7, 7}, + {7, 9}, + {7, 11}, + {10, 8}, + {10, 14}, + {12, 6}, + {12, 5}, + {10, 4}, + {10, 7}, + {10, 9}, + {10, 11}, + {12, 8 }, + {12, 14}, + {12, 6}, + {15, 16}, + {15, 16}, + {9, 11}, + {11, 11}, + {11, 12} +}; + + +static int nb_special_fargs; +static double * spec_fargs; +static float * spec_sp_fargs; + +static void build_special_fargs_table(void) +{ +/* + Entry Sign Exp fraction Special value + 0 0 3fd 0x8000000000000ULL Positive finite number + 1 0 404 0xf000000000000ULL ... + 2 0 001 0x8000000b77501ULL ... + 3 0 7fe 0x800000000051bULL ... + 4 0 012 0x3214569900000ULL ... + 5 0 000 0x0000000000000ULL +0.0 (+zero) + 6 1 000 0x0000000000000ULL -0.0 (-zero) + 7 0 7ff 0x0000000000000ULL +infinity + 8 1 7ff 0x0000000000000ULL -infinity + 9 0 7ff 0x7FFFFFFFFFFFFULL +SNaN + 10 1 7ff 0x7FFFFFFFFFFFFULL -SNaN + 11 0 7ff 0x8000000000000ULL +QNaN + 12 1 7ff 0x8000000000000ULL -QNaN + 13 1 000 0x8340000078000ULL Denormalized val (zero exp and non-zero fraction) + 14 1 40d 0x0650f5a07b353ULL Negative finite number + 15 0 412 0x32585a9900000ULL A couple more positive finite numbers + 16 0 413 0x82511a2000000ULL ... +*/ + + uint64_t mant; + uint16_t _exp; + int s; + int j, i = 0; + + if (spec_fargs) + return; + + spec_fargs = malloc( 17 * sizeof(double) ); + spec_sp_fargs = malloc( 17 * sizeof(float) ); + + // #0 + s = 0; + _exp = 0x3fd; + mant = 0x8000000000000ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + // #1 + s = 0; + _exp = 0x404; + mant = 0xf000000000000ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* None of the ftdiv tests succeed. + * FRA = value #0; FRB = value #1 + * ea_ = -2; e_b = 5 + * fl_flag || fg_flag || fe_flag = 100 + */ + + /************************************************* + * fe_flag tests + * + *************************************************/ + + /* fe_flag <- 1 if FRA is a NaN + * FRA = value #9; FRB = value #1 + * e_a = 1024; e_b = 5 + * fl_flag || fg_flag || fe_flag = 101 + */ + + /* fe_flag <- 1 if FRB is a NaN + * FRA = value #1; FRB = value #12 + * e_a = 5; e_b = 1024 + * fl_flag || fg_flag || fe_flag = 101 + */ + + /* fe_flag <- 1 if e_b <= -1022 + * FRA = value #0; FRB = value #2 + * e_a = -2; e_b = -1022 + * fl_flag || fg_flag || fe_flag = 101 + * + */ + // #2 + s = 0; + _exp = 0x001; + mant = 0x8000000b77501ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* fe_flag <- 1 if e_b >= 1021 + * FRA = value #1; FRB = value #3 + * e_a = 5; e_b = 1023 + * fl_flag || fg_flag || fe_flag = 101 + */ + // #3 + s = 0; + _exp = 0x7fe; + mant = 0x800000000051bULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* fe_flag <- 1 if FRA != 0 && e_a - e_b >= 1023 + * Let FRA = value #3 and FRB be value #0. + * e_a = 1023; e_b = -2 + * fl_flag || fg_flag || fe_flag = 101 + */ + + /* fe_flag <- 1 if FRA != 0 && e_a - e_b <= -1023 + * Let FRA = value #0 above and FRB be value #3 above + * e_a = -2; e_b = 1023 + * fl_flag || fg_flag || fe_flag = 101 + */ + + /* fe_flag <- 1 if FRA != 0 && e_a <= -970 + * Let FRA = value #4 and FRB be value #0 + * e_a = -1005; e_b = -2 + * fl_flag || fg_flag || fe_flag = 101 + */ + // #4 + s = 0; + _exp = 0x012; + mant = 0x3214569900000ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /************************************************* + * fg_flag tests + * + *************************************************/ + /* fg_flag <- 1 if FRA is an Infinity + * NOTE: FRA = Inf also sets fe_flag + * Do two tests, using values #7 and #8 (+/- Inf) for FRA. + * Test 1: + * Let FRA be value #7 and FRB be value #1 + * e_a = 1024; e_b = 5 + * fl_flag || fg_flag || fe_flag = 111 + * + * Test 2: + * Let FRA be value #8 and FRB be value #1 + * e_a = 1024; e_b = 5 + * fl_flag || fg_flag || fe_flag = 111 + * + */ + + /* fg_flag <- 1 if FRB is an Infinity + * NOTE: FRB = Inf also sets fe_flag + * Let FRA be value #1 and FRB be value #7 + * e_a = 5; e_b = 1024 + * fl_flag || fg_flag || fe_flag = 111 + */ + + /* fg_flag <- 1 if FRB is denormalized + * NOTE: e_b < -1022 ==> fe_flag <- 1 + * Let FRA be value #0 and FRB be value #13 + * e_a = -2; e_b = -1023 + * fl_flag || fg_flag || fe_flag = 111 + */ + + /* fg_flag <- 1 if FRB is +zero + * NOTE: FRA = Inf also sets fe_flag + * Let FRA = val #5; FRB = val #5 + * ea_ = -1023; e_b = -1023 + * fl_flag || fg_flag || fe_flag = 111 + */ + + /* fg_flag <- 1 if FRB is -zero + * NOTE: FRA = Inf also sets fe_flag + * Let FRA = val #5; FRB = val #6 + * ea_ = -1023; e_b = -1023 + * fl_flag || fg_flag || fe_flag = 111 + */ + + /* Special values */ + /* +0.0 : 0 0x000 0x0000000000000 */ + // #5 + s = 0; + _exp = 0x000; + mant = 0x0000000000000ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* -0.0 : 1 0x000 0x0000000000000 */ + // #6 + s = 1; + _exp = 0x000; + mant = 0x0000000000000ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* +infinity : 0 0x7FF 0x0000000000000 */ + // #7 + s = 0; + _exp = 0x7FF; + mant = 0x0000000000000ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* -infinity : 1 0x7FF 0x0000000000000 */ + // #8 + s = 1; + _exp = 0x7FF; + mant = 0x0000000000000ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* +QNaN : 0 0x7FF 0x7FFFFFFFFFFFF */ + // #9 + s = 0; + _exp = 0x7FF; + mant = 0x7FFFFFFFFFFFFULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* -QNaN : 1 0x7FF 0x7FFFFFFFFFFFF */ + // #10 + s = 1; + _exp = 0x7FF; + mant = 0x7FFFFFFFFFFFFULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* +SNaN : 0 0x7FF 0x8000000000000 */ + // #11 + s = 0; + _exp = 0x7FF; + mant = 0x8000000000000ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* -SNaN : 1 0x7FF 0x8000000000000 */ + // #12 + s = 1; + _exp = 0x7FF; + mant = 0x8000000000000ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* denormalized value */ + // #13 + s = 1; + _exp = 0x000; + mant = 0x8340000078000ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* Negative finite number */ + // #14 + s = 1; + _exp = 0x40d; + mant = 0x0650f5a07b353ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + /* A couple positive finite numbers ... */ + // #15 + s = 0; + _exp = 0x412; + mant = 0x32585a9900000ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + // #16 + s = 0; + _exp = 0x413; + mant = 0x82511a2000000ULL; + register_farg(&spec_fargs[i++], s, _exp, mant); + + nb_special_fargs = i; + for (j = 0; j < i; j++) { + spec_sp_fargs[j] = spec_fargs[j]; + } +} + + +struct test_table +{ + test_func_t test_category; + char * name; +}; + +typedef enum { + SINGLE_TEST, + DOUBLE_TEST +} precision_type_t; + +typedef enum { + VX_SCALAR_FP_NMSUB = 0, + // ALL VECTOR-TYPE OPS SHOULD BE ADDED AFTER THIS LINE + VX_VECTOR_FP_MULT_AND_OP2 = 10, + // and before this line + VX_BASIC_CMP = 30, + VX_CONV_WORD, + VX_DEFAULT +} vx_fp_test_type; + +typedef struct vx_fp_test +{ + test_func_t test_func; + const char * name; + fp_test_args_t * targs; + int num_tests; + precision_type_t precision; + vx_fp_test_type type; + const char * op; +} vx_fp_test_t; + +static vector unsigned int vec_out, vec_inA, vec_inB, vec_inC; + +static Bool do_dot; +static void test_xvcmpeqdp(void) +{ + if (do_dot) + __asm__ __volatile__ ("xvcmpeqdp. %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvcmpeqdp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvcmpgedp(void) +{ + if (do_dot) + __asm__ __volatile__ ("xvcmpgedp. %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvcmpgedp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvcmpgtdp(void) +{ + if (do_dot) + __asm__ __volatile__ ("xvcmpgtdp. %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvcmpgtdp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvcmpeqsp(void) +{ + if (do_dot) + __asm__ __volatile__ ("xvcmpeqsp. %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvcmpeqsp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvcmpgesp(void) +{ + if (do_dot) + __asm__ __volatile__ ("xvcmpgesp. %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvcmpgesp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvcmpgtsp(void) +{ + if (do_dot) + __asm__ __volatile__ ("xvcmpgtsp. %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvcmpgtsp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static Bool do_aXp; +static Bool do_dp; +static void test_xsnmsub(void) +{ + if (do_aXp) + __asm__ __volatile__ ("xsnmsubadp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xsnmsubmdp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvmadd(void) +{ + if (do_aXp) + if (do_dp) + __asm__ __volatile__ ("xvmaddadp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvmaddasp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + if (do_dp) + __asm__ __volatile__ ("xvmaddmdp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvmaddmsp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvnmadd(void) +{ + if (do_aXp) + if (do_dp) + __asm__ __volatile__ ("xvnmaddadp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvnmaddasp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + if (do_dp) + __asm__ __volatile__ ("xvnmaddmdp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvnmaddmsp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvnmsub(void) +{ + if (do_aXp) + if (do_dp) + __asm__ __volatile__ ("xvnmsubadp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvnmsubasp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + if (do_dp) + __asm__ __volatile__ ("xvnmsubmdp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvnmsubmsp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvmsub(void) +{ + if (do_aXp) + if (do_dp) + __asm__ __volatile__ ("xvmsubadp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvmsubasp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + if (do_dp) + __asm__ __volatile__ ("xvmsubmdp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); + else + __asm__ __volatile__ ("xvmsubmsp %x0, %x1, %x2" : "+wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xssqrtdp(void) +{ + __asm__ __volatile__ ("xssqrtdp %x0, %x1" : "=wa" (vec_out): "wa" (vec_inB)); +} + +static void test_xsrdpim(void) +{ + __asm__ __volatile__ ("xsrdpim %x0, %x1" : "=wa" (vec_out): "wa" (vec_inB)); +} + +static void test_xsrdpip(void) +{ + __asm__ __volatile__ ("xsrdpip %x0, %x1" : "=wa" (vec_out): "wa" (vec_inB)); +} + +static void test_xstdivdp(void) +{ + __asm__ __volatile__ ("xstdivdp 6, %x0, %x1" : : "wa" (vec_inA), "wa" (vec_inB)); +} + +static void test_xsmaxdp(void) +{ + __asm__ __volatile__ ("xsmaxdp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xsmindp(void) +{ + __asm__ __volatile__ ("xsmindp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvadddp(void) +{ + __asm__ __volatile__ ("xvadddp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvaddsp(void) +{ + __asm__ __volatile__ ("xvaddsp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvdivdp(void) +{ + __asm__ __volatile__ ("xvdivdp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvdivsp(void) +{ + __asm__ __volatile__ ("xvdivsp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvmuldp(void) +{ + __asm__ __volatile__ ("xvmuldp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvmulsp(void) +{ + __asm__ __volatile__ ("xvmulsp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvsubdp(void) +{ + __asm__ __volatile__ ("xvsubdp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvmaxdp(void) +{ + __asm__ __volatile__ ("xvmaxdp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvmindp(void) +{ + __asm__ __volatile__ ("xvmindp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvmaxsp(void) +{ + __asm__ __volatile__ ("xvmaxsp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvminsp(void) +{ + __asm__ __volatile__ ("xvminsp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvsubsp(void) +{ + __asm__ __volatile__ ("xvsubsp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvresp(void) +{ + __asm__ __volatile__ ("xvresp %x0, %x1" : "=wa" (vec_out): "wa" (vec_inB)); +} + +static void test_xxsel(void) +{ + unsigned long long * dst; + unsigned long long xa[] = { 0xa12bc37de56f9708ULL, 0x3894c1fddeadbeefULL}; + unsigned long long xb[] = { 0xfedc432124681235ULL, 0xf1e2d3c4e0057708ULL}; + unsigned long long xc[] = { 0xffffffff01020304ULL, 0x128934bd00000000ULL}; + + memcpy(&vec_inA, xa, 16); + memcpy(&vec_inB, xb, 16); + memcpy(&vec_inC, xc, 16); + + + __asm__ __volatile__ ("xxsel %x0, %x1, %x2, %x3" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB),"wa" (vec_inC)); + dst = (unsigned long long *) &vec_out; + printf("xxsel %016llx,%016llx,%016llx => %016llx\n", xa[0], xb[0], xc[0], *dst); + dst++; + printf("xxsel %016llx,%016llx,%016llx => %016llx\n", xa[1], xb[1], xc[1], *dst); + printf("\n"); +} + +static void test_xxspltw(void) +{ + int uim; + unsigned long long * dst = NULL; + unsigned long long xb[] = { 0xfedc432124681235ULL, 0xf1e2d3c4e0057708ULL}; + memcpy(&vec_inB, xb, 16); + + for (uim = 0; uim < 4; uim++) { + switch (uim) { + case 0: + __asm__ __volatile__ ("xxspltw %x0, %x1, 0" : "=wa" (vec_out): "wa" (vec_inB)); + break; + case 1: + __asm__ __volatile__ ("xxspltw %x0, %x1, 1" : "=wa" (vec_out): "wa" (vec_inB)); + break; + case 2: + __asm__ __volatile__ ("xxspltw %x0, %x1, 2" : "=wa" (vec_out): "wa" (vec_inB)); + break; + case 3: + __asm__ __volatile__ ("xxspltw %x0, %x1, 3" : "=wa" (vec_out): "wa" (vec_inB)); + break; + } + dst = (unsigned long long *) &vec_out; + printf("xxspltw 0x%016llx%016llx %d=> 0x%016llx", xb[0], xb[1], uim, *dst); + dst++; + printf("%016llx\n", *dst); + } + printf("\n"); +} + +static void test_xscvdpsxws(void) +{ + __asm__ __volatile__ ("xscvdpsxws %x0, %x1" : "=wa" (vec_out): "wa" (vec_inB)); +} + +static void test_xscvdpuxds(void) +{ + __asm__ __volatile__ ("xscvdpuxds %x0, %x1" : "=wa" (vec_out): "wa" (vec_inB)); +} + +static void test_xvcpsgndp(void) +{ + __asm__ __volatile__ ("xvcpsgndp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvcpsgnsp(void) +{ + __asm__ __volatile__ ("xvcpsgnsp %x0, %x1, %x2" : "=wa" (vec_out): "wa" (vec_inA),"wa" (vec_inB)); +} + +static void test_xvcvdpsxws(void) +{ + __asm__ __volatile__ ("xvcvdpsxws %x0, %x1 " : "=wa" (vec_out): "wa" (vec_inB)); +} + +static void test_xvcvspsxws(void) +{ + __asm__ __volatile__ ("xvcvspsxws %x0, %x1 " : "=wa" (vec_out): "wa" (vec_inB)); +} + +static vx_fp_test_t +vx_vector_one_fp_arg_tests[] = { + { &test_xvresp, "xvresp", NULL, 16, SINGLE_TEST, VX_BASIC_CMP, "1/x"}, + { &test_xvcvdpsxws, "xvcvdpsxws", NULL, 16, DOUBLE_TEST, VX_CONV_WORD, "conv"}, + { &test_xvcvspsxws, "xvcvspsxws", NULL, 16, SINGLE_TEST, VX_CONV_WORD, "conv"}, + { NULL, NULL, NULL, 0 , 0, 0, NULL} +}; + +static vx_fp_test_t +vx_vector_fp_tests[] = { + { &test_xvcmpeqdp, "xvcmpeqdp", fp_cmp_tests, 64, DOUBLE_TEST, VX_BASIC_CMP, "eq"}, + { &test_xvcmpgedp, "xvcmpgedp", fp_cmp_tests, 64, DOUBLE_TEST, VX_BASIC_CMP, "ge"}, + { &test_xvcmpgtdp, "xvcmpgtdp", fp_cmp_tests, 64, DOUBLE_TEST, VX_BASIC_CMP, "gt"}, + { &test_xvcmpeqsp, "xvcmpeqsp", fp_cmp_tests, 64, SINGLE_TEST, VX_BASIC_CMP, "eq"}, + { &test_xvcmpgesp, "xvcmpgesp", fp_cmp_tests, 64, SINGLE_TEST, VX_BASIC_CMP, "ge"}, + { &test_xvcmpgtsp, "xvcmpgtsp", fp_cmp_tests, 64, SINGLE_TEST, VX_BASIC_CMP, "gt"}, + { &test_xvadddp, "xvadddp", two_arg_fp_tests, 64, DOUBLE_TEST, VX_DEFAULT, "+" }, + { &test_xvaddsp, "xvaddsp", two_arg_fp_tests, 64, SINGLE_TEST, VX_DEFAULT, "+" }, + { &test_xvdivdp, "xvdivdp", two_arg_fp_tests, 64, DOUBLE_TEST, VX_DEFAULT, "/" }, + { &test_xvdivsp, "xvdivsp", two_arg_fp_tests, 64, SINGLE_TEST, VX_DEFAULT, "/" }, + { &test_xvmuldp, "xvmuldp", two_arg_fp_tests, 64, DOUBLE_TEST, VX_DEFAULT, "*" }, + { &test_xvmulsp, "xvmulsp", two_arg_fp_tests, 64, SINGLE_TEST, VX_DEFAULT, "*" }, + { &test_xvsubdp, "xvsubdp", two_arg_fp_tests, 64, DOUBLE_TEST, VX_DEFAULT, "-" }, + { &test_xvsubsp, "xvsubsp", two_arg_fp_tests, 64, SINGLE_TEST, VX_DEFAULT, "-" }, + { &test_xvmaxdp, "xvmaxdp", two_arg_fp_tests, 64, DOUBLE_TEST, VX_DEFAULT, "@max@" }, + { &test_xvmindp, "xvmindp", two_arg_fp_tests, 64, DOUBLE_TEST, VX_DEFAULT, "@min@" }, + { &test_xvmaxsp, "xvmaxsp", two_arg_fp_tests, 64, SINGLE_TEST, VX_DEFAULT, "@max@" }, + { &test_xvminsp, "xvminsp", two_arg_fp_tests, 64, SINGLE_TEST, VX_DEFAULT, "@min@" }, + { &test_xvcpsgndp, "xvcpsgndp", two_arg_fp_tests, 64, DOUBLE_TEST, VX_DEFAULT, "+-cp"}, + { &test_xvcpsgnsp, "xvcpsgnsp", two_arg_fp_tests, 64, SINGLE_TEST, VX_DEFAULT, "+-cp"}, + { NULL, NULL, NULL, 0 , 0, 0, NULL} +}; + + +static vx_fp_test_t +vx_aORm_fp_tests[] = { + { &test_xsnmsub, "xsnmsub", two_arg_fp_tests, 64, DOUBLE_TEST, VX_SCALAR_FP_NMSUB, "!*-"}, + { &test_xvmadd, "xvmadd", two_arg_fp_tests, 64, DOUBLE_TEST, VX_VECTOR_FP_MULT_AND_OP2, "*+"}, + { &test_xvmadd, "xvmadd", two_arg_fp_tests, 64, SINGLE_TEST, VX_VECTOR_FP_MULT_AND_OP2, "*+"}, + { &test_xvnmadd, "xvnmadd", two_arg_fp_tests, 64, DOUBLE_TEST, VX_VECTOR_FP_MULT_AND_OP2, "!*+"}, + { &test_xvnmadd, "xvnmadd", two_arg_fp_tests, 64, SINGLE_TEST, VX_VECTOR_FP_MULT_AND_OP2, "!*+"}, + { &test_xvmsub, "xvmsub", two_arg_fp_tests, 64, DOUBLE_TEST, VX_VECTOR_FP_MULT_AND_OP2, "*-"}, + { &test_xvmsub, "xvmsub", two_arg_fp_tests, 64, SINGLE_TEST, VX_VECTOR_FP_MULT_AND_OP2, "*-"}, + { &test_xvnmsub, "xvnmsub", two_arg_fp_tests, 64, DOUBLE_TEST, VX_VECTOR_FP_MULT_AND_OP2, "!*-"}, + { &test_xvnmsub, "xvnmsub", two_arg_fp_tests, 64, SINGLE_TEST, VX_VECTOR_FP_MULT_AND_OP2, "!*-"}, + { NULL, NULL, NULL, 0, 0, 0, NULL } +}; + +static vx_fp_test_t +vx_simple_scalar_fp_tests[] = { + { &test_xssqrtdp, "xssqrtdp", NULL, 17, DOUBLE_TEST, VX_DEFAULT, NULL}, + { &test_xsrdpim, "xsrdpim", NULL, 17, DOUBLE_TEST, VX_DEFAULT, NULL}, + { &test_xsrdpip, "xsrdpip", NULL, 17, DOUBLE_TEST, VX_DEFAULT, NULL}, + { &test_xstdivdp, "xstdivdp", two_arg_fp_tests, 64, DOUBLE_TEST, VX_DEFAULT, NULL}, + { &test_xsmaxdp, "xsmaxdp", two_arg_fp_tests, 64, DOUBLE_TEST, VX_DEFAULT, NULL}, + { &test_xsmindp, "xsmindp", two_arg_fp_tests, 64, DOUBLE_TEST, VX_DEFAULT, NULL}, + { &test_xscvdpsxws, "xscvdpsxws", NULL, 17, DOUBLE_TEST, VX_CONV_WORD, NULL}, + { &test_xscvdpuxds, "xscvdpuxds", NULL, 17, DOUBLE_TEST, VX_DEFAULT, NULL}, + { NULL, NULL, NULL, 0, 0, 0, NULL } +}; + + +#ifdef __powerpc64__ +static void test_bpermd(void) +{ + /* NOTE: Bit number is '0 . . . 63' + * + * Permuted bits are generated bit 0 -7 as follows: + * index = (r14)8*i:8*i+7 + * perm[i] = (r15)index + * + * So, for i = 0, index is (r14)8*0:8*0+7, or (r14)0:7, which is the MSB + * byte of r14, 0x1b(27/base 10). This identifies bit 27 of r15, which is '1'. + * For i = 1, index is 0x2c, identifying bit 44 of r15, which is '1'. + * So the result of the first two iterations of i are: + * perm = 0b01xxxxxx + * + */ + r15 = 0xa12bc37de56f9708ULL; + r14 = 0x1b2c31f030000001ULL; + __asm__ __volatile__ ("bpermd %0, %1, %2" : "=r" (r17) : "r" (r14),"r" (r15)); + printf("bpermd: 0x%016llx : 0x%016llx => 0x%llx\n", (unsigned long long)r14, + (unsigned long long)r15, (unsigned long long)r17); + printf("\n"); +} +#endif + +static Bool do_OE; +typedef enum { + DIV_BASE = 1, + DIV_OE = 2, + DIV_DOT = 4, +} div_type_t; +/* Possible divde type combinations are: + * - base + * - base+dot + * - base+OE + * - base+OE+dot + */ +#ifdef __powerpc64__ +static void test_divde(void) +{ + int divde_type = DIV_BASE; + if (do_OE) + divde_type |= DIV_OE; + if (do_dot) + divde_type |= DIV_DOT; + + switch (divde_type) { + case 1: + SET_CR_XER_ZERO; + __asm__ __volatile__ ("divde %0, %1, %2" : "=r" (r17) : "r" (r14),"r" (r15)); + GET_CR_XER(div_flags, div_xer); + break; + case 3: + SET_CR_XER_ZERO; + __asm__ __volatile__ ("divdeo %0, %1, %2" : "=r" (r17) : "r" (r14),"r" (r15)); + GET_CR_XER(div_flags, div_xer); + break; + case 5: + SET_CR_XER_ZERO; + __asm__ __volatile__ ("divde. %0, %1, %2" : "=r" (r17) : "r" (r14),"r" (r15)); + GET_CR_XER(div_flags, div_xer); + break; + case 7: + SET_CR_XER_ZERO; + __asm__ __volatile__ ("divdeo. %0, %1, %2" : "=r" (r17) : "r" (r14),"r" (r15)); + GET_CR_XER(div_flags, div_xer); + break; + default: + fprintf(stderr, "Invalid divde type. Exiting\n"); + exit(1); + } +} +#endif + +static void test_divweu(void) +{ + int divweu_type = DIV_BASE; + if (do_OE) + divweu_type |= DIV_OE; + if (do_dot) + divweu_type |= DIV_DOT; + + switch (divweu_type) { + case 1: + SET_CR_XER_ZERO; + __asm__ __volatile__ ("divweu %0, %1, %2" : "=r" (r17) : "r" (r14),"r" (r15)); + GET_CR_XER(div_flags, div_xer); + break; + case 3: + SET_CR_XER_ZERO; + __asm__ __volatile__ ("divweuo %0, %1, %2" : "=r" (r17) : "r" (r14),"r" (r15)); + GET_CR_XER(div_flags, div_xer); + break; + case 5: + SET_CR_XER_ZERO; + __asm__ __volatile__ ("divweu. %0, %1, %2" : "=r" (r17) : "r" (r14),"r" (r15)); + GET_CR_XER(div_flags, div_xer); + break; + case 7: + SET_CR_XER_ZERO; + __asm__ __volatile__ ("divweuo. %0, %1, %2" : "=r" (r17) : "r" (r14),"r" (r15)); + GET_CR_XER(div_flags, div_xer); + break; + default: + fprintf(stderr, "Invalid divweu type. Exiting\n"); + exit(1); + } +} + +static void test_fctiduz(void) +{ + if (do_dot) + __asm__ __volatile__ ("fctiduz. %0, %1" : "=d" (f17) : "d" (f14)); + else + __asm__ __volatile__ ("fctiduz %0, %1" : "=d" (f17) : "d" (f14)); +} + +static void test_fctidu(void) +{ + if (do_dot) + __asm__ __volatile__ ("fctidu. %0, %1" : "=d" (f17) : "d" (f14)); + else + __asm__ __volatile__ ("fctidu %0, %1" : "=d" (f17) : "d" (f14)); +} + +static void test_fctiwuz(void) +{ + if (do_dot) + __asm__ __volatile__ ("fctiwuz. %0, %1" : "=d" (f17) : "d" (f14)); + else + __asm__ __volatile__ ("fctiwuz %0, %1" : "=d" (f17) : "d" (f14)); +} + +static void test_fctiwu(void) +{ + if (do_dot) + __asm__ __volatile__ ("fctiwu. %0, %1" : "=d" (f17) : "d" (f14)); + else + __asm__ __volatile__ ("fctiwu %0, %1" : "=d" (f17) : "d" (f14)); +} + +typedef struct simple_test { + test_func_t test_func; + char * name; + precision_type_t precision; +} simple_test_t; + +static simple_test_t fct_tests[] = { + { &test_fctiduz, "fctiduz", DOUBLE_TEST }, + { &test_fctidu, "fctidu", DOUBLE_TEST }, + { &test_fctiwuz, "fctiwuz", SINGLE_TEST }, + { &test_fctiwu, "fctiwu", SINGLE_TEST }, + { NULL, NULL } +}; + +static void setup_sp_fp_args(fp_test_args_t * targs, Bool swap_inputs) +{ + int a_idx, b_idx, i; + void * inA, * inB; + void * vec_src = swap_inputs ? &vec_out : &vec_inB; + + for (i = 0; i < 4; i++) { + a_idx = targs->fra_idx; + b_idx = targs->frb_idx; + inA = (void *)&spec_sp_fargs[a_idx]; + inB = (void *)&spec_sp_fargs[b_idx]; + // copy single precision FP into vector element i + memcpy(((void *)&vec_inA) + (i * 4), inA, 4); + memcpy(vec_src + (i * 4), inB, 4); + targs++; + } +} + +static void setup_dp_fp_args(fp_test_args_t * targs, Bool swap_inputs) +{ + int a_idx, b_idx, i; + void * inA, * inB; + void * vec_src = swap_inputs ? (void *)&vec_out : (void *)&vec_inB; + + for (i = 0; i < 2; i++) { + a_idx = targs->fra_idx; + b_idx = targs->frb_idx; + inA = (void *)&spec_fargs[a_idx]; + inB = (void *)&spec_fargs[b_idx]; + // copy double precision FP into vector element i + memcpy(((void *)&vec_inA) + (i * 8), inA, 8); + memcpy(vec_src + (i * 8), inB, 8); + targs++; + } +} + +#define VX_NOT_CMP_OP 0xffffffff +static void print_vector_fp_result(unsigned int cc, vx_fp_test_t * test_group, int i) +{ + int a_idx, b_idx, k; + char * name = malloc(20); + int dp = test_group->precision == DOUBLE_TEST ? 1 : 0; + int loops = dp ? 2 : 4; + fp_test_args_t * targs = &test_group->targs[i]; + unsigned long long * frA_dp, * frB_dp, * dst_dp; + unsigned int * frA_sp, *frB_sp, * dst_sp; + strcpy(name, test_group->name); + printf("#%d: %s%s ", dp? i/2 : i/4, name, (do_dot ? "." : "")); + for (k = 0; k < loops; k++) { + a_idx = targs->fra_idx; + b_idx = targs->frb_idx; + if (k) + printf(" AND "); + if (dp) { + frA_dp = (unsigned long long *)&spec_fargs[a_idx]; + frB_dp = (unsigned long long *)&spec_fargs[b_idx]; + printf("%016llx %s %016llx", *frA_dp, test_group->op, *frB_dp); + } else { + frA_sp = (unsigned int *)&spec_sp_fargs[a_idx]; + frB_sp = (unsigned int *)&spec_sp_fargs[b_idx]; + printf("%08x %s %08x", *frA_sp, test_group->op, *frB_sp); + } + targs++; + } + if (cc != VX_NOT_CMP_OP) + printf(" ? cc=%x", cc); + + if (dp) { + dst_dp = (unsigned long long *) &vec_out; + printf(" => %016llx %016llx\n", dst_dp[0], dst_dp[1]); + } else { + dst_sp = (unsigned int *) &vec_out; + printf(" => %08x %08x %08x %08x\n", dst_sp[0], dst_sp[1], dst_sp[2], dst_sp[3]); + } + free(name); +} + + +static void print_vx_aORm_fp_result(unsigned long long * XT_arg, unsigned long long * XB_arg, + vx_fp_test_t * test_group, int i) +{ + int a_idx, k; + char * name = malloc(20); + int dp = test_group->precision == DOUBLE_TEST ? 1 : 0; + int loops = dp ? 2 : 4; + fp_test_args_t * targs = &test_group->targs[i]; + unsigned long long frA_dp, * dst_dp; + unsigned int frA_sp, * dst_sp; + + strcpy(name, test_group->name); + if (do_aXp) + if (dp) + strcat(name, "adp"); + else + strcat(name, "asp"); + else + if (dp) + strcat(name, "mdp"); + else + strcat(name, "msp"); + + printf("#%d: %s ", dp? i/2 : i/4, name); + for (k = 0; k < loops; k++) { + a_idx = targs->fra_idx; + if (k) + printf(" AND "); + if (dp) { + frA_dp = *((unsigned long long *)&spec_fargs[a_idx]); + printf("%s(%016llx,%016llx,%016llx)", test_group->op, XT_arg[k], frA_dp, XB_arg[k]); + } else { + unsigned int * xt_sp = (unsigned int *)XT_arg; + unsigned int * xb_sp = (unsigned int *)XB_arg; + frA_sp = *((unsigned int *)&spec_sp_fargs[a_idx]); + printf("%s(%08x,%08x,%08x)", test_group->op, xt_sp[k], frA_sp, xb_sp[k]); + } + targs++; + } + + if (dp) { + dst_dp = (unsigned long long *) &vec_out; + printf(" => %016llx %016llx\n", dst_dp[0], dst_dp[1]); + } else { + dst_sp = (unsigned int *) &vec_out; + printf(" => %08x %08x %08x %08x\n", dst_sp[0], dst_sp[1], dst_sp[2], dst_sp[3]); + } + free(name); +} + +/* This function currently only supports double precision input arguments. */ +static void test_vx_simple_scalar_fp_ops(void) +{ + test_func_t func; + int k = 0; + + build_special_fargs_table(); + while ((func = vx_simple_scalar_fp_tests[k].test_func)) { + unsigned long long * frap, * frbp, * dst; + unsigned int * pv; + int idx; + vx_fp_test_t test_group = vx_simple_scalar_fp_tests[k]; + Bool convToWord = (test_group.type == VX_CONV_WORD); + if (test_group.precision != DOUBLE_TEST) { + fprintf(stderr, "Unsupported single precision for scalar op in test_vx_aORm_fp_ops\n"); + exit(1); + } + pv = (unsigned int *)&vec_out; + // clear vec_out + for (idx = 0; idx < 4; idx++, pv++) + *pv = 0; + + /* If num_tests is exactly equal to nb_special_fargs, this implies the + * instruction being tested only requires one floating point argument + * (e.g. xssqrtdp). + */ + if (test_group.num_tests == nb_special_fargs && !test_group.targs) { + void * inB; + int i; + for (i = 0; i < nb_special_fargs; i++) { + inB = (void *)&spec_fargs[i]; + frbp = (unsigned long long *)&spec_fargs[i]; + memcpy(&vec_inB, inB, 8); + (*func)(); + dst = (unsigned long long *) &vec_out; + printf("#%d: %s %016llx => %016llx\n", i, test_group.name, *frbp, + convToWord ? (*dst & 0x00000000ffffffffULL) : *dst); + } + } else { + void * inA, * inB; + unsigned int condreg, flags; + int isTdiv = (strstr(test_group.name, "xstdivdp") != NULL) ? 1 : 0; + int i; + for (i = 0; i < test_group.num_tests; i++) { + fp_test_args_t aTest = test_group.targs[i]; + inA = (void *)&spec_fargs[aTest.fra_idx]; + inB = (void *)&spec_fargs[aTest.frb_idx]; + frap = (unsigned long long *)&spec_fargs[aTest.fra_idx]; + frbp = (unsigned long long *)&spec_fargs[aTest.frb_idx]; + // Only need to copy one doubleword into each vector's element 0 + memcpy(&vec_inA, inA, 8); + memcpy(&vec_inB, inB, 8); + SET_FPSCR_ZERO; + SET_CR_XER_ZERO; + (*func)(); + GET_CR(flags); + if (isTdiv) { + condreg = (flags & 0x000000f0) >> 4; + printf("#%d: %s %016llx,%016llx => cr %x\n", i, test_group.name, *frap, *frbp, condreg); + } else { + dst = (unsigned long long *) &vec_out; + printf("#%d: %s %016llx,%016llx => %016llx\n", i, test_group.name, + *frap, *frbp, *dst); + } + } + } + printf( "\n" ); + k++; + } +} + +static void test_vx_aORm_fp_ops(void) +{ + /* These ops need a third src argument, which is stored in element 0 of + * VSX[XT] -- i.e., vec_out. For the xsm{d|s}p cases, VSX[XT] holds + * src3 and VSX[XB] holds src2; for the xsa{d|s}p cases, VSX[XT] holds + * src2 and VSX[XB] holds src3. The fp_test_args_t that holds the test + * data (input args, result) contain only two inputs, so I arbitrarily + * choose some spec_fargs elements for the third source argument. + * Note that that by using the same input data for a given pair of + * a{d|s}p/m{d|s}p-type instructions (by swapping the src2 and src3 + * arguments), the expected result should be the same. + */ + + test_func_t func; + int k; + char * test_name = (char *)malloc(20); + k = 0; + do_dot = False; + + build_special_fargs_table(); + while ((func = vx_aORm_fp_tests[k].test_func)) { + int i, stride; + Bool repeat = False; + Bool scalar = False; + unsigned long long * frap, * frbp, * dst; + vx_fp_test_t test_group = vx_aORm_fp_tests[k]; + vx_fp_test_type test_type = test_group.type; + do_dp = test_group.precision == DOUBLE_TEST ? True : False; + frap = frbp = NULL; + + if (test_type < VX_VECTOR_FP_MULT_AND_OP2) { + scalar = True; + strcpy(test_name, test_group.name); + if (!repeat) { + repeat = 1; + stride = 1; + // Only support double precision scalar ops in this function + if (do_dp) { + strcat(test_name, "adp"); + } else { + fprintf(stderr, "Unsupported single precision for scalar op in test_vx_aORm_fp_ops\n"); + exit(1); + } + do_aXp = True; + } + } else if (test_type < VX_BASIC_CMP) { + // Then it must be a VX_VECTOR_xxx type + stride = do_dp ? 2 : 4; + if (!repeat) { + // No need to work up the testcase name here, since that will be done in + // the print_vx_aORm_fp_result() function we'll call for vector-type ops. + repeat = 1; + do_aXp = True; + } + } else { + printf("ERROR: Invalid VX FP test type %d\n", test_type); + exit(1); + } + +again: + for (i = 0; i < test_group.num_tests; i+=stride) { + void * inA, * inB; + int m, fp_idx[4]; + unsigned long long vsr_XT[2]; + unsigned long long vsr_XB[2]; + fp_test_args_t aTest = test_group.targs[i]; + for (m = 0; m < stride; m++) + fp_idx[m] = i % (nb_special_fargs - stride) + m; + + /* When repeat == True, we're on the first time through of one of the VX_FP_SMx + * test types, meaning we're testing a xsadp case, thus we have to swap + * inputs as described above: + * src2 <= VSX[XT] + * src3 <= VSX[XB] + */ + if (scalar) { + // For scalar op, only need to copy one doubleword into each vector's element 0 + inA = (void *)&spec_fargs[aTest.fra_idx]; + inB = (void *)&spec_fargs[aTest.frb_idx]; + frap = (unsigned long long *)&spec_fargs[aTest.fra_idx]; + memcpy(&vec_inA, inA, 8); + if (repeat) { + memcpy(&vec_out, inB, 8); // src2 + memcpy(&vec_inB, &spec_fargs[fp_idx[0]], 8); //src3 + frbp = (unsigned long long *)&spec_fargs[fp_idx[0]]; + } else { + frbp = (unsigned long long *)&spec_fargs[aTest.frb_idx]; + memcpy(&vec_inB, inB, 8); // src2 + memcpy(&vec_out, &spec_fargs[fp_idx[0]], 8); //src3 + } + memcpy(vsr_XT, &vec_out, 8); + } else { + int j, loops = do_dp ? 2 : 4; + size_t len = do_dp ? 8 : 4; + void * vec_src = repeat ? (void *)&vec_inB : (void *)&vec_out; + for (j = 0; j < loops; j++) { + if (do_dp) + memcpy(vec_src + (j * len), &spec_fargs[fp_idx[j]], len); + else + memcpy(vec_src + (j * len), &spec_sp_fargs[fp_idx[j]], len); + } + if (do_dp) + setup_dp_fp_args(&test_group.targs[i], repeat); + else + setup_sp_fp_args(&test_group.targs[i], repeat); + + memcpy(vsr_XT, &vec_out, 16); + memcpy(vsr_XB, &vec_inB, 16); + } + + (*func)(); + dst = (unsigned long long *) &vec_out; + if (test_type < VX_VECTOR_FP_MULT_AND_OP2) + printf( "#%d: %s %s(%016llx,%016llx,%016llx) = %016llx\n", i, + test_name, test_group.op, vsr_XT[0], *frap, *frbp, *dst ); + else + print_vx_aORm_fp_result(vsr_XT, vsr_XB, &test_group, i); + } + printf( "\n" ); + + if (repeat) { + repeat = 0; + if (test_type < VX_VECTOR_FP_MULT_AND_OP2) { + strcpy(test_name, test_group.name); + strcat(test_name, "mdp"); + } + do_aXp = False; + goto again; + } + k++; + } + printf( "\n" ); + free(test_name); +} + +static void test_vx_vector_one_fp_arg(void) +{ + test_func_t func; + int k; + k = 0; + build_special_fargs_table(); + + while ((func = vx_vector_one_fp_arg_tests[k].test_func)) { + int idx, i; + vx_fp_test_t test_group = vx_vector_one_fp_arg_tests[k]; + Bool convToWord = (test_group.type == VX_CONV_WORD); + Bool dp = (test_group.precision == DOUBLE_TEST) ? True : False; + Bool xvrespTest = (strstr(test_group.name , "xvresp") != NULL) ? True: False; + int stride = dp ? 2 : 4; + + for (i = 0; i < test_group.num_tests; i+=stride) { + unsigned int * pv; + void * inB; + + pv = (unsigned int *)&vec_out; + // clear vec_out + for (idx = 0; idx < 4; idx++, pv++) + *pv = 0; + + if (dp) { + int j; + unsigned long long * frB_dp, *dst_dp; + for (j = 0; j < 2; j++) { + inB = (void *)&spec_fargs[i + j]; + // copy double precision FP into vector element i + memcpy(((void *)&vec_inB) + (j * 8), inB, 8); + } + // execute test insn + (*func)(); + dst_dp = (unsigned long long *) &vec_out; + printf("#%d: %s ", i/2, test_group.name); + for (j = 0; j < 2; j++) { + if (j) + printf("; "); + frB_dp = (unsigned long long *)&spec_fargs[i + j]; + printf("%s(%016llx)", test_group.op, *frB_dp); + printf(" = %016llx", convToWord ? (dst_dp[j] & 0x00000000ffffffffULL) : dst_dp[j]); + } + printf("\n"); + } else { + int j; + unsigned int * frB_sp, * dst_sp; + + for (j = 0; j < 4; j++) { + inB = (void *)&spec_sp_fargs[i + j]; + // copy single precision FP into vector element i + memcpy(((void *)&vec_inB) + (j * 4), inB, 4); + } + // execute test insn + (*func)(); + dst_sp = (unsigned int *) &vec_out; + // print result + printf("#%d: %s ", i/4, test_group.name); + for (j = 0; j < 4; j++) { + if (j) + printf("; "); + frB_sp = (unsigned int *)&spec_sp_fargs[i + j]; + printf("%s(%08x)", test_group.op, *frB_sp); + if (xvrespTest) { + float calc_diff = fabs(spec_sp_fargs[i + j]/256); + float sp_res; + memcpy(&sp_res, &dst_sp[j], 4); + float div_result = 1/spec_sp_fargs[i + j]; + float real_diff = fabs(sp_res - div_result); + printf( " ==> %s", + ( ( sp_res == div_result ) + || ( isnan(sp_res) && isnan(div_result) ) + || ( real_diff <= calc_diff ) ) ? "PASS" + : "FAIL"); + } else { + printf(" = %08x", dst_sp[j]); + } + } + printf("\n"); + } + } + k++; + printf( "\n" ); + } + +} + +/* This function assumes the instruction being tested requires two args. */ +static void test_vx_vector_fp_ops(void) +{ + test_func_t func; + int k; + k = 0; + build_special_fargs_table(); + + while ((func = vx_vector_fp_tests[k].test_func)) { + int idx, i, repeat = 1; + vx_fp_test_t test_group = vx_vector_fp_tests[k]; + int stride = test_group.precision == DOUBLE_TEST ? 2 : 4; + do_dot = False; + +again: + for (i = 0; i < test_group.num_tests; i+=stride) { + unsigned int * pv, condreg; + unsigned int flags; + + pv = (unsigned int *)&vec_out; + if (test_group.precision == DOUBLE_TEST) + setup_dp_fp_args(&test_group.targs[i], False); + else + setup_sp_fp_args(&test_group.targs[i], False); + + // clear vec_out + for (idx = 0; idx < 4; idx++, pv++) + *pv = 0; + + // execute test insn + SET_FPSCR_ZERO; + SET_CR_XER_ZERO; + (*func)(); + GET_CR(flags); + if (test_group.type == VX_BASIC_CMP) { + condreg = (flags & 0x000000f0) >> 4; + } else { + condreg = VX_NOT_CMP_OP; + } + print_vector_fp_result(condreg, &test_group, i); + } + printf("\n"); + if (repeat && test_group.type == VX_BASIC_CMP) { + repeat = 0; + do_dot = True; + goto again; + } + k++; + printf( "\n" ); + } +} + + +// The div doubleword test data +signed long long div_dw_tdata[13][2] = { + { 4, -4 }, + { 4, -3 }, + { 4, 4 }, + { 4, -5 }, + { 3, 8 }, + { 0x8000000000000000, 0xa }, + { 0x50c, -1 }, + { 0x50c, -4096 }, + { 0x1234fedc, 0x8000a873 }, + { 0xabcd87651234fedc, 0xa123b893 }, + { 0x123456789abdc, 0 }, + { 0, 2 }, + { 0x77, 0xa3499 } +}; +#define dw_tdata_len (sizeof(div_dw_tdata)/sizeof(signed long long)/2) + +// The div word test data +unsigned int div_w_tdata[6][2] = { + { 0, 2 }, + { 2, 0 }, + { 0x7abc1234, 0xf0000000 }, + { 0xfabc1234, 5 }, + { 77, 66 }, + { 5, 0xfabc1234 }, +}; +#define w_tdata_len (sizeof(div_w_tdata)/sizeof(unsigned int)/2) + +typedef struct div_ext_test +{ + test_func_t test_func; + const char *name; + int num_tests; + div_type_t div_type; + precision_type_t precision; +} div_ext_test_t; + +static div_ext_test_t div_tests[] = { +#ifdef __powerpc64__ + { &test_divde, "divde", dw_tdata_len, DIV_BASE, DOUBLE_TEST }, + { &test_divde, "divdeo", dw_tdata_len, DIV_OE, DOUBLE_TEST }, +#endif + { &test_divweu, "divweu", w_tdata_len, DIV_BASE, SINGLE_TEST }, + { &test_divweu, "divweuo", w_tdata_len, DIV_OE, SINGLE_TEST }, + { NULL, NULL, 0, 0, 0 } +}; + +static void test_div_extensions(void) +{ + test_func_t func; + int k; + k = 0; + + while ((func = div_tests[k].test_func)) { + int i, repeat = 1; + div_ext_test_t test_group = div_tests[k]; + do_dot = False; + +again: + for (i = 0; i < test_group.num_tests; i++) { + unsigned int condreg; + + if (test_group.div_type == DIV_OE) + do_OE = True; + else + do_OE = False; + + if (test_group.precision == DOUBLE_TEST) { + r14 = div_dw_tdata[i][0]; + r15 = div_dw_tdata[i][1]; + } else { + r14 = div_w_tdata[i][0]; + r15 = div_w_tdata[i][1]; + } + // execute test insn + (*func)(); + condreg = (div_flags & 0xf0000000) >> 28; + printf("#%d: %s%s: ", i, test_group.name, do_dot ? "." : ""); + if (test_group.precision == DOUBLE_TEST) { + printf("0x%016llx / 0x%016llx = 0x%016llx;", + div_dw_tdata[i][0], div_dw_tdata[i][1], (signed long long) r17); + } else { + printf("0x%08x / 0x%08x = 0x%08x;", + div_w_tdata[i][0], div_w_tdata[i][1], (unsigned int) r17); + } + printf(" CR=%x; XER=%x\n", condreg, div_xer); + } + printf("\n"); + if (repeat) { + repeat = 0; + do_dot = True; + goto again; + } + k++; + printf( "\n" ); + } + +} + +static void test_fct_ops(void) +{ + test_func_t func; + int k; + k = 0; + + while ((func = fct_tests[k].test_func)) { + int i, repeat = 1; + simple_test_t test_group = fct_tests[k]; + do_dot = False; + +again: + for (i = 0; i < nb_special_fargs; i++) { + double result; +#define SINGLE_MASK 0x00000000FFFFFFFFULL + + f14 = spec_fargs[i]; + // execute test insn + SET_FPSCR_ZERO; + (*func)(); + result = f17; + printf("#%d: %s%s: ", i, test_group.name, do_dot ? "." : ""); + printf("0x%016llx (%e) ==> 0x%016llx\n", + *((unsigned long long *)(&spec_fargs[i])), spec_fargs[i], + test_group.precision == SINGLE_TEST ? (SINGLE_MASK & + *((unsigned long long *)(&result))) : + *((unsigned long long *)(&result))); + } + printf("\n"); + if (repeat) { + repeat = 0; + do_dot = True; + goto again; + } + k++; + printf( "\n" ); + } +} + +#ifdef __powerpc64__ +void test_stdbrx(void) +{ + unsigned long long store, val = 0xdeadbacf12345678ULL; + printf("stdbrx: 0x%llx ==> ", val); + r17 = (HWord_t)val; + r14 = (HWord_t)&store; + __asm__ __volatile__ ("stdbrx %0, 0, %1" : : "r"(r17), "r"(r14)); + printf("0x%llx\n", store); + printf( "\n" ); +} +#endif + +static test_table_t + all_tests[] = +{ + { &test_vx_vector_one_fp_arg, + "Test VSX vector single arg instructions"}, + { &test_vx_vector_fp_ops, + "Test VSX floating point compare and basic arithmetic instructions" }, +#ifdef __powerpc64__ + { &test_bpermd, + "Test bit permute double"}, +#endif + { &test_xxsel, + "Test xxsel instruction" }, + { &test_xxspltw, + "Test xxspltw instruction" }, + { &test_div_extensions, + "Test div extensions" }, + { &test_fct_ops, + "Test floating point convert [word | doubleword] unsigned, with round toward zero" }, +#ifdef __powerpc64__ + { &test_stdbrx, + "Test stdbrx instruction"}, +#endif + { &test_vx_aORm_fp_ops, + "Test floating point arithmetic instructions -- with a{d|s}p or m{d|s}p"}, + { &test_vx_simple_scalar_fp_ops, + "Test scalar floating point arithmetic instructions"}, + { NULL, NULL } +}; +#endif // HAS_VSX + +int main(int argc, char *argv[]) +{ +#ifdef HAS_VSX + + test_table_t aTest; + test_func_t func; + int i = 0; + + while ((func = all_tests[i].test_category)) { + aTest = all_tests[i]; + printf( "%s\n", aTest.name ); + (*func)(); + i++; + } + if (spec_fargs) + free(spec_fargs); + if (spec_sp_fargs) + free(spec_sp_fargs); + +#endif // HAS _VSX + + return 0; +} diff --git a/none/tests/ppc32/test_isa_2_06_part2.stderr.exp b/none/tests/ppc32/test_isa_2_06_part2.stderr.exp new file mode 100644 index 0000000000..139597f9cb --- /dev/null +++ b/none/tests/ppc32/test_isa_2_06_part2.stderr.exp @@ -0,0 +1,2 @@ + + diff --git a/none/tests/ppc32/test_isa_2_06_part2.stdout.exp b/none/tests/ppc32/test_isa_2_06_part2.stdout.exp new file mode 100644 index 0000000000..92bbbf262c --- /dev/null +++ b/none/tests/ppc32/test_isa_2_06_part2.stdout.exp @@ -0,0 +1,1699 @@ +Test VSX vector single arg instructions +#0: xvresp 1/x(3ec00000) ==> PASS; 1/x(42780000) ==> PASS; 1/x(00000000) ==> PASS; 1/x(7f800000) ==> PASS +#1: xvresp 1/x(00000000) ==> PASS; 1/x(00000000) ==> PASS; 1/x(80000000) ==> PASS; 1/x(7f800000) ==> PASS +#2: xvresp 1/x(ff800000) ==> PASS; 1/x(7fffffff) ==> PASS; 1/x(ffffffff) ==> PASS; 1/x(7fc00000) ==> PASS +#3: xvresp 1/x(ffc00000) ==> PASS; 1/x(80000000) ==> PASS; 1/x(c683287b) ==> PASS; 1/x(49192c2d) ==> PASS + +#0: xvcvdpsxws conv(3fd8000000000000) = 0000000000000000; conv(404f000000000000) = 000000000000003e +#1: xvcvdpsxws conv(0018000000b77501) = 0000000000000000; conv(7fe800000000051b) = 000000007fffffff +#2: xvcvdpsxws conv(0123214569900000) = 0000000000000000; conv(0000000000000000) = 0000000000000000 +#3: xvcvdpsxws conv(8000000000000000) = 0000000000000000; conv(7ff0000000000000) = 000000007fffffff +#4: xvcvdpsxws conv(fff0000000000000) = 0000000080000000; conv(7ff7ffffffffffff) = 0000000080000000 +#5: xvcvdpsxws conv(fff7ffffffffffff) = 0000000080000000; conv(7ff8000000000000) = 0000000080000000 +#6: xvcvdpsxws conv(fff8000000000000) = 0000000080000000; conv(8008340000078000) = 0000000000000000 +#7: xvcvdpsxws conv(c0d0650f5a07b353) = 00000000ffffbe6c; conv(41232585a9900000) = 00000000000992c2 + +#0: xvcvspsxws conv(3ec00000) = 00000000; conv(42780000) = 0000003e; conv(00000000) = 00000000; conv(7f800000) = 7fffffff +#1: xvcvspsxws conv(00000000) = 00000000; conv(00000000) = 00000000; conv(80000000) = 00000000; conv(7f800000) = 7fffffff +#2: xvcvspsxws conv(ff800000) = 80000000; conv(7fffffff) = 80000000; conv(ffffffff) = 80000000; conv(7fc00000) = 80000000 +#3: xvcvspsxws conv(ffc00000) = 80000000; conv(80000000) = 00000000; conv(c683287b) = ffffbe6c; conv(49192c2d) = 000992c2 + +Test VSX floating point compare and basic arithmetic instructions +#0: xvcmpeqdp fff0000000000000 eq fff0000000000000 AND fff0000000000000 eq c0d0650f5a07b353 ? cc=0 => ffffffffffffffff 0000000000000000 +#1: xvcmpeqdp fff0000000000000 eq 8000000000000000 AND fff0000000000000 eq 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#2: xvcmpeqdp fff0000000000000 eq 0123214569900000 AND fff0000000000000 eq 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#3: xvcmpeqdp fff0000000000000 eq 7ff7ffffffffffff AND fff0000000000000 eq 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#4: xvcmpeqdp c0d0650f5a07b353 eq fff0000000000000 AND c0d0650f5a07b353 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 ffffffffffffffff +#5: xvcmpeqdp c0d0650f5a07b353 eq 8000000000000000 AND c0d0650f5a07b353 eq 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#6: xvcmpeqdp c0d0650f5a07b353 eq 0123214569900000 AND c0d0650f5a07b353 eq 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#7: xvcmpeqdp c0d0650f5a07b353 eq 7ff7ffffffffffff AND c0d0650f5a07b353 eq 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#8: xvcmpeqdp 8000000000000000 eq fff0000000000000 AND 8000000000000000 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#9: xvcmpeqdp 8000000000000000 eq 8000000000000000 AND 8000000000000000 eq 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#10: xvcmpeqdp 8000000000000000 eq 0123214569900000 AND 8000000000000000 eq 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#11: xvcmpeqdp 8000000000000000 eq 7ff7ffffffffffff AND 8000000000000000 eq 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#12: xvcmpeqdp 0000000000000000 eq fff0000000000000 AND 0000000000000000 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#13: xvcmpeqdp 0000000000000000 eq 8000000000000000 AND 0000000000000000 eq 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#14: xvcmpeqdp 0000000000000000 eq 0123214569900000 AND 0000000000000000 eq 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#15: xvcmpeqdp 0000000000000000 eq 7ff7ffffffffffff AND 0000000000000000 eq 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#16: xvcmpeqdp 0123214569900000 eq fff0000000000000 AND 0123214569900000 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#17: xvcmpeqdp 0123214569900000 eq 8000000000000000 AND 0123214569900000 eq 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#18: xvcmpeqdp 0123214569900000 eq 404f000000000000 AND 0123214569900000 eq 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#19: xvcmpeqdp 0123214569900000 eq 7ff7ffffffffffff AND 0123214569900000 eq 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#20: xvcmpeqdp 7ff0000000000000 eq fff0000000000000 AND 7ff0000000000000 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#21: xvcmpeqdp 7ff0000000000000 eq 8000000000000000 AND 7ff0000000000000 eq 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#22: xvcmpeqdp 7ff0000000000000 eq 0123214569900000 AND 7ff0000000000000 eq 7ff0000000000000 ? cc=0 => 0000000000000000 ffffffffffffffff +#23: xvcmpeqdp 7ff0000000000000 eq 7ff7ffffffffffff AND 7ff0000000000000 eq 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#24: xvcmpeqdp fff7ffffffffffff eq fff0000000000000 AND fff7ffffffffffff eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#25: xvcmpeqdp fff7ffffffffffff eq 8000000000000000 AND fff7ffffffffffff eq 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#26: xvcmpeqdp fff7ffffffffffff eq 0123214569900000 AND fff7ffffffffffff eq 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#27: xvcmpeqdp fff7ffffffffffff eq 7ff7ffffffffffff AND fff7ffffffffffff eq fff7ffffffffffff ? cc=0 => 0000000000000000 0000000000000000 +#28: xvcmpeqdp fff8000000000000 eq fff0000000000000 AND fff8000000000000 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#29: xvcmpeqdp fff8000000000000 eq 8000000000000000 AND fff8000000000000 eq 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#30: xvcmpeqdp 404f000000000000 eq 404f000000000000 AND 0018000000b77501 eq 0018000000b77501 ? cc=0 => ffffffffffffffff ffffffffffffffff +#31: xvcmpeqdp 7fe800000000051b eq 7fe800000000051b AND 0123214569900000 eq 0123214569900000 ? cc=0 => ffffffffffffffff ffffffffffffffff + +#0: xvcmpeqdp. fff0000000000000 eq fff0000000000000 AND fff0000000000000 eq c0d0650f5a07b353 ? cc=0 => ffffffffffffffff 0000000000000000 +#1: xvcmpeqdp. fff0000000000000 eq 8000000000000000 AND fff0000000000000 eq 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#2: xvcmpeqdp. fff0000000000000 eq 0123214569900000 AND fff0000000000000 eq 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#3: xvcmpeqdp. fff0000000000000 eq 7ff7ffffffffffff AND fff0000000000000 eq 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#4: xvcmpeqdp. c0d0650f5a07b353 eq fff0000000000000 AND c0d0650f5a07b353 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 ffffffffffffffff +#5: xvcmpeqdp. c0d0650f5a07b353 eq 8000000000000000 AND c0d0650f5a07b353 eq 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#6: xvcmpeqdp. c0d0650f5a07b353 eq 0123214569900000 AND c0d0650f5a07b353 eq 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#7: xvcmpeqdp. c0d0650f5a07b353 eq 7ff7ffffffffffff AND c0d0650f5a07b353 eq 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#8: xvcmpeqdp. 8000000000000000 eq fff0000000000000 AND 8000000000000000 eq c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#9: xvcmpeqdp. 8000000000000000 eq 8000000000000000 AND 8000000000000000 eq 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#10: xvcmpeqdp. 8000000000000000 eq 0123214569900000 AND 8000000000000000 eq 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#11: xvcmpeqdp. 8000000000000000 eq 7ff7ffffffffffff AND 8000000000000000 eq 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#12: xvcmpeqdp. 0000000000000000 eq fff0000000000000 AND 0000000000000000 eq c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#13: xvcmpeqdp. 0000000000000000 eq 8000000000000000 AND 0000000000000000 eq 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#14: xvcmpeqdp. 0000000000000000 eq 0123214569900000 AND 0000000000000000 eq 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#15: xvcmpeqdp. 0000000000000000 eq 7ff7ffffffffffff AND 0000000000000000 eq 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#16: xvcmpeqdp. 0123214569900000 eq fff0000000000000 AND 0123214569900000 eq c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#17: xvcmpeqdp. 0123214569900000 eq 8000000000000000 AND 0123214569900000 eq 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#18: xvcmpeqdp. 0123214569900000 eq 404f000000000000 AND 0123214569900000 eq 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#19: xvcmpeqdp. 0123214569900000 eq 7ff7ffffffffffff AND 0123214569900000 eq 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#20: xvcmpeqdp. 7ff0000000000000 eq fff0000000000000 AND 7ff0000000000000 eq c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#21: xvcmpeqdp. 7ff0000000000000 eq 8000000000000000 AND 7ff0000000000000 eq 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#22: xvcmpeqdp. 7ff0000000000000 eq 0123214569900000 AND 7ff0000000000000 eq 7ff0000000000000 ? cc=0 => 0000000000000000 ffffffffffffffff +#23: xvcmpeqdp. 7ff0000000000000 eq 7ff7ffffffffffff AND 7ff0000000000000 eq 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#24: xvcmpeqdp. fff7ffffffffffff eq fff0000000000000 AND fff7ffffffffffff eq c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#25: xvcmpeqdp. fff7ffffffffffff eq 8000000000000000 AND fff7ffffffffffff eq 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#26: xvcmpeqdp. fff7ffffffffffff eq 0123214569900000 AND fff7ffffffffffff eq 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#27: xvcmpeqdp. fff7ffffffffffff eq 7ff7ffffffffffff AND fff7ffffffffffff eq fff7ffffffffffff ? cc=2 => 0000000000000000 0000000000000000 +#28: xvcmpeqdp. fff8000000000000 eq fff0000000000000 AND fff8000000000000 eq c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#29: xvcmpeqdp. fff8000000000000 eq 8000000000000000 AND fff8000000000000 eq 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#30: xvcmpeqdp. 404f000000000000 eq 404f000000000000 AND 0018000000b77501 eq 0018000000b77501 ? cc=8 => ffffffffffffffff ffffffffffffffff +#31: xvcmpeqdp. 7fe800000000051b eq 7fe800000000051b AND 0123214569900000 eq 0123214569900000 ? cc=8 => ffffffffffffffff ffffffffffffffff + + +#0: xvcmpgedp fff0000000000000 ge fff0000000000000 AND fff0000000000000 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff 0000000000000000 +#1: xvcmpgedp fff0000000000000 ge 8000000000000000 AND fff0000000000000 ge 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#2: xvcmpgedp fff0000000000000 ge 0123214569900000 AND fff0000000000000 ge 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#3: xvcmpgedp fff0000000000000 ge 7ff7ffffffffffff AND fff0000000000000 ge 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#4: xvcmpgedp c0d0650f5a07b353 ge fff0000000000000 AND c0d0650f5a07b353 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#5: xvcmpgedp c0d0650f5a07b353 ge 8000000000000000 AND c0d0650f5a07b353 ge 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#6: xvcmpgedp c0d0650f5a07b353 ge 0123214569900000 AND c0d0650f5a07b353 ge 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#7: xvcmpgedp c0d0650f5a07b353 ge 7ff7ffffffffffff AND c0d0650f5a07b353 ge 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#8: xvcmpgedp 8000000000000000 ge fff0000000000000 AND 8000000000000000 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#9: xvcmpgedp 8000000000000000 ge 8000000000000000 AND 8000000000000000 ge 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#10: xvcmpgedp 8000000000000000 ge 0123214569900000 AND 8000000000000000 ge 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#11: xvcmpgedp 8000000000000000 ge 7ff7ffffffffffff AND 8000000000000000 ge 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#12: xvcmpgedp 0000000000000000 ge fff0000000000000 AND 0000000000000000 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#13: xvcmpgedp 0000000000000000 ge 8000000000000000 AND 0000000000000000 ge 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#14: xvcmpgedp 0000000000000000 ge 0123214569900000 AND 0000000000000000 ge 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#15: xvcmpgedp 0000000000000000 ge 7ff7ffffffffffff AND 0000000000000000 ge 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#16: xvcmpgedp 0123214569900000 ge fff0000000000000 AND 0123214569900000 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#17: xvcmpgedp 0123214569900000 ge 8000000000000000 AND 0123214569900000 ge 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#18: xvcmpgedp 0123214569900000 ge 404f000000000000 AND 0123214569900000 ge 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#19: xvcmpgedp 0123214569900000 ge 7ff7ffffffffffff AND 0123214569900000 ge 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#20: xvcmpgedp 7ff0000000000000 ge fff0000000000000 AND 7ff0000000000000 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#21: xvcmpgedp 7ff0000000000000 ge 8000000000000000 AND 7ff0000000000000 ge 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#22: xvcmpgedp 7ff0000000000000 ge 0123214569900000 AND 7ff0000000000000 ge 7ff0000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#23: xvcmpgedp 7ff0000000000000 ge 7ff7ffffffffffff AND 7ff0000000000000 ge 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#24: xvcmpgedp fff7ffffffffffff ge fff0000000000000 AND fff7ffffffffffff ge c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#25: xvcmpgedp fff7ffffffffffff ge 8000000000000000 AND fff7ffffffffffff ge 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#26: xvcmpgedp fff7ffffffffffff ge 0123214569900000 AND fff7ffffffffffff ge 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#27: xvcmpgedp fff7ffffffffffff ge 7ff7ffffffffffff AND fff7ffffffffffff ge fff7ffffffffffff ? cc=0 => 0000000000000000 0000000000000000 +#28: xvcmpgedp fff8000000000000 ge fff0000000000000 AND fff8000000000000 ge c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#29: xvcmpgedp fff8000000000000 ge 8000000000000000 AND fff8000000000000 ge 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#30: xvcmpgedp 404f000000000000 ge 404f000000000000 AND 0018000000b77501 ge 0018000000b77501 ? cc=0 => ffffffffffffffff ffffffffffffffff +#31: xvcmpgedp 7fe800000000051b ge 7fe800000000051b AND 0123214569900000 ge 0123214569900000 ? cc=0 => ffffffffffffffff ffffffffffffffff + +#0: xvcmpgedp. fff0000000000000 ge fff0000000000000 AND fff0000000000000 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff 0000000000000000 +#1: xvcmpgedp. fff0000000000000 ge 8000000000000000 AND fff0000000000000 ge 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#2: xvcmpgedp. fff0000000000000 ge 0123214569900000 AND fff0000000000000 ge 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#3: xvcmpgedp. fff0000000000000 ge 7ff7ffffffffffff AND fff0000000000000 ge 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#4: xvcmpgedp. c0d0650f5a07b353 ge fff0000000000000 AND c0d0650f5a07b353 ge c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#5: xvcmpgedp. c0d0650f5a07b353 ge 8000000000000000 AND c0d0650f5a07b353 ge 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#6: xvcmpgedp. c0d0650f5a07b353 ge 0123214569900000 AND c0d0650f5a07b353 ge 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#7: xvcmpgedp. c0d0650f5a07b353 ge 7ff7ffffffffffff AND c0d0650f5a07b353 ge 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#8: xvcmpgedp. 8000000000000000 ge fff0000000000000 AND 8000000000000000 ge c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#9: xvcmpgedp. 8000000000000000 ge 8000000000000000 AND 8000000000000000 ge 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#10: xvcmpgedp. 8000000000000000 ge 0123214569900000 AND 8000000000000000 ge 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#11: xvcmpgedp. 8000000000000000 ge 7ff7ffffffffffff AND 8000000000000000 ge 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#12: xvcmpgedp. 0000000000000000 ge fff0000000000000 AND 0000000000000000 ge c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#13: xvcmpgedp. 0000000000000000 ge 8000000000000000 AND 0000000000000000 ge 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#14: xvcmpgedp. 0000000000000000 ge 0123214569900000 AND 0000000000000000 ge 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#15: xvcmpgedp. 0000000000000000 ge 7ff7ffffffffffff AND 0000000000000000 ge 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#16: xvcmpgedp. 0123214569900000 ge fff0000000000000 AND 0123214569900000 ge c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#17: xvcmpgedp. 0123214569900000 ge 8000000000000000 AND 0123214569900000 ge 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#18: xvcmpgedp. 0123214569900000 ge 404f000000000000 AND 0123214569900000 ge 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#19: xvcmpgedp. 0123214569900000 ge 7ff7ffffffffffff AND 0123214569900000 ge 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#20: xvcmpgedp. 7ff0000000000000 ge fff0000000000000 AND 7ff0000000000000 ge c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#21: xvcmpgedp. 7ff0000000000000 ge 8000000000000000 AND 7ff0000000000000 ge 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#22: xvcmpgedp. 7ff0000000000000 ge 0123214569900000 AND 7ff0000000000000 ge 7ff0000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#23: xvcmpgedp. 7ff0000000000000 ge 7ff7ffffffffffff AND 7ff0000000000000 ge 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#24: xvcmpgedp. fff7ffffffffffff ge fff0000000000000 AND fff7ffffffffffff ge c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#25: xvcmpgedp. fff7ffffffffffff ge 8000000000000000 AND fff7ffffffffffff ge 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#26: xvcmpgedp. fff7ffffffffffff ge 0123214569900000 AND fff7ffffffffffff ge 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#27: xvcmpgedp. fff7ffffffffffff ge 7ff7ffffffffffff AND fff7ffffffffffff ge fff7ffffffffffff ? cc=2 => 0000000000000000 0000000000000000 +#28: xvcmpgedp. fff8000000000000 ge fff0000000000000 AND fff8000000000000 ge c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#29: xvcmpgedp. fff8000000000000 ge 8000000000000000 AND fff8000000000000 ge 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#30: xvcmpgedp. 404f000000000000 ge 404f000000000000 AND 0018000000b77501 ge 0018000000b77501 ? cc=8 => ffffffffffffffff ffffffffffffffff +#31: xvcmpgedp. 7fe800000000051b ge 7fe800000000051b AND 0123214569900000 ge 0123214569900000 ? cc=8 => ffffffffffffffff ffffffffffffffff + + +#0: xvcmpgtdp fff0000000000000 gt fff0000000000000 AND fff0000000000000 gt c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#1: xvcmpgtdp fff0000000000000 gt 8000000000000000 AND fff0000000000000 gt 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#2: xvcmpgtdp fff0000000000000 gt 0123214569900000 AND fff0000000000000 gt 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#3: xvcmpgtdp fff0000000000000 gt 7ff7ffffffffffff AND fff0000000000000 gt 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#4: xvcmpgtdp c0d0650f5a07b353 gt fff0000000000000 AND c0d0650f5a07b353 gt c0d0650f5a07b353 ? cc=0 => ffffffffffffffff 0000000000000000 +#5: xvcmpgtdp c0d0650f5a07b353 gt 8000000000000000 AND c0d0650f5a07b353 gt 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#6: xvcmpgtdp c0d0650f5a07b353 gt 0123214569900000 AND c0d0650f5a07b353 gt 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#7: xvcmpgtdp c0d0650f5a07b353 gt 7ff7ffffffffffff AND c0d0650f5a07b353 gt 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#8: xvcmpgtdp 8000000000000000 gt fff0000000000000 AND 8000000000000000 gt c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#9: xvcmpgtdp 8000000000000000 gt 8000000000000000 AND 8000000000000000 gt 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#10: xvcmpgtdp 8000000000000000 gt 0123214569900000 AND 8000000000000000 gt 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#11: xvcmpgtdp 8000000000000000 gt 7ff7ffffffffffff AND 8000000000000000 gt 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#12: xvcmpgtdp 0000000000000000 gt fff0000000000000 AND 0000000000000000 gt c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#13: xvcmpgtdp 0000000000000000 gt 8000000000000000 AND 0000000000000000 gt 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#14: xvcmpgtdp 0000000000000000 gt 0123214569900000 AND 0000000000000000 gt 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#15: xvcmpgtdp 0000000000000000 gt 7ff7ffffffffffff AND 0000000000000000 gt 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#16: xvcmpgtdp 0123214569900000 gt fff0000000000000 AND 0123214569900000 gt c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#17: xvcmpgtdp 0123214569900000 gt 8000000000000000 AND 0123214569900000 gt 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#18: xvcmpgtdp 0123214569900000 gt 404f000000000000 AND 0123214569900000 gt 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#19: xvcmpgtdp 0123214569900000 gt 7ff7ffffffffffff AND 0123214569900000 gt 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#20: xvcmpgtdp 7ff0000000000000 gt fff0000000000000 AND 7ff0000000000000 gt c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#21: xvcmpgtdp 7ff0000000000000 gt 8000000000000000 AND 7ff0000000000000 gt 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#22: xvcmpgtdp 7ff0000000000000 gt 0123214569900000 AND 7ff0000000000000 gt 7ff0000000000000 ? cc=0 => ffffffffffffffff 0000000000000000 +#23: xvcmpgtdp 7ff0000000000000 gt 7ff7ffffffffffff AND 7ff0000000000000 gt 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#24: xvcmpgtdp fff7ffffffffffff gt fff0000000000000 AND fff7ffffffffffff gt c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#25: xvcmpgtdp fff7ffffffffffff gt 8000000000000000 AND fff7ffffffffffff gt 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#26: xvcmpgtdp fff7ffffffffffff gt 0123214569900000 AND fff7ffffffffffff gt 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#27: xvcmpgtdp fff7ffffffffffff gt 7ff7ffffffffffff AND fff7ffffffffffff gt fff7ffffffffffff ? cc=0 => 0000000000000000 0000000000000000 +#28: xvcmpgtdp fff8000000000000 gt fff0000000000000 AND fff8000000000000 gt c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#29: xvcmpgtdp fff8000000000000 gt 8000000000000000 AND fff8000000000000 gt 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#30: xvcmpgtdp 404f000000000000 gt 404f000000000000 AND 0018000000b77501 gt 0018000000b77501 ? cc=0 => 0000000000000000 0000000000000000 +#31: xvcmpgtdp 7fe800000000051b gt 7fe800000000051b AND 0123214569900000 gt 0123214569900000 ? cc=0 => 0000000000000000 0000000000000000 + +#0: xvcmpgtdp. fff0000000000000 gt fff0000000000000 AND fff0000000000000 gt c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#1: xvcmpgtdp. fff0000000000000 gt 8000000000000000 AND fff0000000000000 gt 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#2: xvcmpgtdp. fff0000000000000 gt 0123214569900000 AND fff0000000000000 gt 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#3: xvcmpgtdp. fff0000000000000 gt 7ff7ffffffffffff AND fff0000000000000 gt 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#4: xvcmpgtdp. c0d0650f5a07b353 gt fff0000000000000 AND c0d0650f5a07b353 gt c0d0650f5a07b353 ? cc=0 => ffffffffffffffff 0000000000000000 +#5: xvcmpgtdp. c0d0650f5a07b353 gt 8000000000000000 AND c0d0650f5a07b353 gt 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#6: xvcmpgtdp. c0d0650f5a07b353 gt 0123214569900000 AND c0d0650f5a07b353 gt 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#7: xvcmpgtdp. c0d0650f5a07b353 gt 7ff7ffffffffffff AND c0d0650f5a07b353 gt 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#8: xvcmpgtdp. 8000000000000000 gt fff0000000000000 AND 8000000000000000 gt c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#9: xvcmpgtdp. 8000000000000000 gt 8000000000000000 AND 8000000000000000 gt 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#10: xvcmpgtdp. 8000000000000000 gt 0123214569900000 AND 8000000000000000 gt 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#11: xvcmpgtdp. 8000000000000000 gt 7ff7ffffffffffff AND 8000000000000000 gt 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#12: xvcmpgtdp. 0000000000000000 gt fff0000000000000 AND 0000000000000000 gt c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#13: xvcmpgtdp. 0000000000000000 gt 8000000000000000 AND 0000000000000000 gt 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#14: xvcmpgtdp. 0000000000000000 gt 0123214569900000 AND 0000000000000000 gt 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#15: xvcmpgtdp. 0000000000000000 gt 7ff7ffffffffffff AND 0000000000000000 gt 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#16: xvcmpgtdp. 0123214569900000 gt fff0000000000000 AND 0123214569900000 gt c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#17: xvcmpgtdp. 0123214569900000 gt 8000000000000000 AND 0123214569900000 gt 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#18: xvcmpgtdp. 0123214569900000 gt 404f000000000000 AND 0123214569900000 gt 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#19: xvcmpgtdp. 0123214569900000 gt 7ff7ffffffffffff AND 0123214569900000 gt 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#20: xvcmpgtdp. 7ff0000000000000 gt fff0000000000000 AND 7ff0000000000000 gt c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#21: xvcmpgtdp. 7ff0000000000000 gt 8000000000000000 AND 7ff0000000000000 gt 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#22: xvcmpgtdp. 7ff0000000000000 gt 0123214569900000 AND 7ff0000000000000 gt 7ff0000000000000 ? cc=0 => ffffffffffffffff 0000000000000000 +#23: xvcmpgtdp. 7ff0000000000000 gt 7ff7ffffffffffff AND 7ff0000000000000 gt 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#24: xvcmpgtdp. fff7ffffffffffff gt fff0000000000000 AND fff7ffffffffffff gt c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#25: xvcmpgtdp. fff7ffffffffffff gt 8000000000000000 AND fff7ffffffffffff gt 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#26: xvcmpgtdp. fff7ffffffffffff gt 0123214569900000 AND fff7ffffffffffff gt 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#27: xvcmpgtdp. fff7ffffffffffff gt 7ff7ffffffffffff AND fff7ffffffffffff gt fff7ffffffffffff ? cc=2 => 0000000000000000 0000000000000000 +#28: xvcmpgtdp. fff8000000000000 gt fff0000000000000 AND fff8000000000000 gt c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#29: xvcmpgtdp. fff8000000000000 gt 8000000000000000 AND fff8000000000000 gt 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#30: xvcmpgtdp. 404f000000000000 gt 404f000000000000 AND 0018000000b77501 gt 0018000000b77501 ? cc=2 => 0000000000000000 0000000000000000 +#31: xvcmpgtdp. 7fe800000000051b gt 7fe800000000051b AND 0123214569900000 gt 0123214569900000 ? cc=2 => 0000000000000000 0000000000000000 + + +#0: xvcmpeqsp ff800000 eq ff800000 AND ff800000 eq c683287b AND ff800000 eq 80000000 AND ff800000 eq 00000000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#1: xvcmpeqsp ff800000 eq 00000000 AND ff800000 eq 7f800000 AND ff800000 eq 7fffffff AND ff800000 eq 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#2: xvcmpeqsp c683287b eq ff800000 AND c683287b eq c683287b AND c683287b eq 80000000 AND c683287b eq 00000000 ? cc=0 => 00000000 ffffffff 00000000 00000000 +#3: xvcmpeqsp c683287b eq 00000000 AND c683287b eq 7f800000 AND c683287b eq 7fffffff AND c683287b eq 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#4: xvcmpeqsp 80000000 eq ff800000 AND 80000000 eq c683287b AND 80000000 eq 80000000 AND 80000000 eq 00000000 ? cc=0 => 00000000 00000000 ffffffff ffffffff +#5: xvcmpeqsp 80000000 eq 00000000 AND 80000000 eq 7f800000 AND 80000000 eq 7fffffff AND 80000000 eq 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#6: xvcmpeqsp 00000000 eq ff800000 AND 00000000 eq c683287b AND 00000000 eq 80000000 AND 00000000 eq 00000000 ? cc=0 => 00000000 00000000 ffffffff ffffffff +#7: xvcmpeqsp 00000000 eq 00000000 AND 00000000 eq 7f800000 AND 00000000 eq 7fffffff AND 00000000 eq 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#8: xvcmpeqsp 00000000 eq ff800000 AND 00000000 eq c683287b AND 00000000 eq 80000000 AND 00000000 eq 00000000 ? cc=0 => 00000000 00000000 ffffffff ffffffff +#9: xvcmpeqsp 00000000 eq 42780000 AND 00000000 eq 7f800000 AND 00000000 eq 7fffffff AND 00000000 eq 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#10: xvcmpeqsp 7f800000 eq ff800000 AND 7f800000 eq c683287b AND 7f800000 eq 80000000 AND 7f800000 eq 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#11: xvcmpeqsp 7f800000 eq 00000000 AND 7f800000 eq 7f800000 AND 7f800000 eq 7fffffff AND 7f800000 eq 7fc00000 ? cc=0 => 00000000 ffffffff 00000000 00000000 +#12: xvcmpeqsp ffffffff eq ff800000 AND ffffffff eq c683287b AND ffffffff eq 80000000 AND ffffffff eq 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#13: xvcmpeqsp ffffffff eq 00000000 AND ffffffff eq 7f800000 AND ffffffff eq 7fffffff AND ffffffff eq ffffffff ? cc=0 => 00000000 00000000 00000000 00000000 +#14: xvcmpeqsp ffc00000 eq ff800000 AND ffc00000 eq c683287b AND ffc00000 eq 80000000 AND ffc00000 eq 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#15: xvcmpeqsp 42780000 eq 42780000 AND 00000000 eq 00000000 AND 7f800000 eq 7f800000 AND 00000000 eq 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff + +#0: xvcmpeqsp. ff800000 eq ff800000 AND ff800000 eq c683287b AND ff800000 eq 80000000 AND ff800000 eq 00000000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#1: xvcmpeqsp. ff800000 eq 00000000 AND ff800000 eq 7f800000 AND ff800000 eq 7fffffff AND ff800000 eq 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#2: xvcmpeqsp. c683287b eq ff800000 AND c683287b eq c683287b AND c683287b eq 80000000 AND c683287b eq 00000000 ? cc=0 => 00000000 ffffffff 00000000 00000000 +#3: xvcmpeqsp. c683287b eq 00000000 AND c683287b eq 7f800000 AND c683287b eq 7fffffff AND c683287b eq 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#4: xvcmpeqsp. 80000000 eq ff800000 AND 80000000 eq c683287b AND 80000000 eq 80000000 AND 80000000 eq 00000000 ? cc=0 => 00000000 00000000 ffffffff ffffffff +#5: xvcmpeqsp. 80000000 eq 00000000 AND 80000000 eq 7f800000 AND 80000000 eq 7fffffff AND 80000000 eq 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#6: xvcmpeqsp. 00000000 eq ff800000 AND 00000000 eq c683287b AND 00000000 eq 80000000 AND 00000000 eq 00000000 ? cc=0 => 00000000 00000000 ffffffff ffffffff +#7: xvcmpeqsp. 00000000 eq 00000000 AND 00000000 eq 7f800000 AND 00000000 eq 7fffffff AND 00000000 eq 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#8: xvcmpeqsp. 00000000 eq ff800000 AND 00000000 eq c683287b AND 00000000 eq 80000000 AND 00000000 eq 00000000 ? cc=0 => 00000000 00000000 ffffffff ffffffff +#9: xvcmpeqsp. 00000000 eq 42780000 AND 00000000 eq 7f800000 AND 00000000 eq 7fffffff AND 00000000 eq 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#10: xvcmpeqsp. 7f800000 eq ff800000 AND 7f800000 eq c683287b AND 7f800000 eq 80000000 AND 7f800000 eq 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#11: xvcmpeqsp. 7f800000 eq 00000000 AND 7f800000 eq 7f800000 AND 7f800000 eq 7fffffff AND 7f800000 eq 7fc00000 ? cc=0 => 00000000 ffffffff 00000000 00000000 +#12: xvcmpeqsp. ffffffff eq ff800000 AND ffffffff eq c683287b AND ffffffff eq 80000000 AND ffffffff eq 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#13: xvcmpeqsp. ffffffff eq 00000000 AND ffffffff eq 7f800000 AND ffffffff eq 7fffffff AND ffffffff eq ffffffff ? cc=2 => 00000000 00000000 00000000 00000000 +#14: xvcmpeqsp. ffc00000 eq ff800000 AND ffc00000 eq c683287b AND ffc00000 eq 80000000 AND ffc00000 eq 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#15: xvcmpeqsp. 42780000 eq 42780000 AND 00000000 eq 00000000 AND 7f800000 eq 7f800000 AND 00000000 eq 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff + + +#0: xvcmpgesp ff800000 ge ff800000 AND ff800000 ge c683287b AND ff800000 ge 80000000 AND ff800000 ge 00000000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#1: xvcmpgesp ff800000 ge 00000000 AND ff800000 ge 7f800000 AND ff800000 ge 7fffffff AND ff800000 ge 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#2: xvcmpgesp c683287b ge ff800000 AND c683287b ge c683287b AND c683287b ge 80000000 AND c683287b ge 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#3: xvcmpgesp c683287b ge 00000000 AND c683287b ge 7f800000 AND c683287b ge 7fffffff AND c683287b ge 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#4: xvcmpgesp 80000000 ge ff800000 AND 80000000 ge c683287b AND 80000000 ge 80000000 AND 80000000 ge 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff +#5: xvcmpgesp 80000000 ge 00000000 AND 80000000 ge 7f800000 AND 80000000 ge 7fffffff AND 80000000 ge 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#6: xvcmpgesp 00000000 ge ff800000 AND 00000000 ge c683287b AND 00000000 ge 80000000 AND 00000000 ge 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff +#7: xvcmpgesp 00000000 ge 00000000 AND 00000000 ge 7f800000 AND 00000000 ge 7fffffff AND 00000000 ge 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#8: xvcmpgesp 00000000 ge ff800000 AND 00000000 ge c683287b AND 00000000 ge 80000000 AND 00000000 ge 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff +#9: xvcmpgesp 00000000 ge 42780000 AND 00000000 ge 7f800000 AND 00000000 ge 7fffffff AND 00000000 ge 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#10: xvcmpgesp 7f800000 ge ff800000 AND 7f800000 ge c683287b AND 7f800000 ge 80000000 AND 7f800000 ge 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff +#11: xvcmpgesp 7f800000 ge 00000000 AND 7f800000 ge 7f800000 AND 7f800000 ge 7fffffff AND 7f800000 ge 7fc00000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#12: xvcmpgesp ffffffff ge ff800000 AND ffffffff ge c683287b AND ffffffff ge 80000000 AND ffffffff ge 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#13: xvcmpgesp ffffffff ge 00000000 AND ffffffff ge 7f800000 AND ffffffff ge 7fffffff AND ffffffff ge ffffffff ? cc=0 => 00000000 00000000 00000000 00000000 +#14: xvcmpgesp ffc00000 ge ff800000 AND ffc00000 ge c683287b AND ffc00000 ge 80000000 AND ffc00000 ge 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#15: xvcmpgesp 42780000 ge 42780000 AND 00000000 ge 00000000 AND 7f800000 ge 7f800000 AND 00000000 ge 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff + +#0: xvcmpgesp. ff800000 ge ff800000 AND ff800000 ge c683287b AND ff800000 ge 80000000 AND ff800000 ge 00000000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#1: xvcmpgesp. ff800000 ge 00000000 AND ff800000 ge 7f800000 AND ff800000 ge 7fffffff AND ff800000 ge 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#2: xvcmpgesp. c683287b ge ff800000 AND c683287b ge c683287b AND c683287b ge 80000000 AND c683287b ge 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#3: xvcmpgesp. c683287b ge 00000000 AND c683287b ge 7f800000 AND c683287b ge 7fffffff AND c683287b ge 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#4: xvcmpgesp. 80000000 ge ff800000 AND 80000000 ge c683287b AND 80000000 ge 80000000 AND 80000000 ge 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff +#5: xvcmpgesp. 80000000 ge 00000000 AND 80000000 ge 7f800000 AND 80000000 ge 7fffffff AND 80000000 ge 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#6: xvcmpgesp. 00000000 ge ff800000 AND 00000000 ge c683287b AND 00000000 ge 80000000 AND 00000000 ge 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff +#7: xvcmpgesp. 00000000 ge 00000000 AND 00000000 ge 7f800000 AND 00000000 ge 7fffffff AND 00000000 ge 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#8: xvcmpgesp. 00000000 ge ff800000 AND 00000000 ge c683287b AND 00000000 ge 80000000 AND 00000000 ge 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff +#9: xvcmpgesp. 00000000 ge 42780000 AND 00000000 ge 7f800000 AND 00000000 ge 7fffffff AND 00000000 ge 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#10: xvcmpgesp. 7f800000 ge ff800000 AND 7f800000 ge c683287b AND 7f800000 ge 80000000 AND 7f800000 ge 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff +#11: xvcmpgesp. 7f800000 ge 00000000 AND 7f800000 ge 7f800000 AND 7f800000 ge 7fffffff AND 7f800000 ge 7fc00000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#12: xvcmpgesp. ffffffff ge ff800000 AND ffffffff ge c683287b AND ffffffff ge 80000000 AND ffffffff ge 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#13: xvcmpgesp. ffffffff ge 00000000 AND ffffffff ge 7f800000 AND ffffffff ge 7fffffff AND ffffffff ge ffffffff ? cc=2 => 00000000 00000000 00000000 00000000 +#14: xvcmpgesp. ffc00000 ge ff800000 AND ffc00000 ge c683287b AND ffc00000 ge 80000000 AND ffc00000 ge 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#15: xvcmpgesp. 42780000 ge 42780000 AND 00000000 ge 00000000 AND 7f800000 ge 7f800000 AND 00000000 ge 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff + + +#0: xvcmpgtsp ff800000 gt ff800000 AND ff800000 gt c683287b AND ff800000 gt 80000000 AND ff800000 gt 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#1: xvcmpgtsp ff800000 gt 00000000 AND ff800000 gt 7f800000 AND ff800000 gt 7fffffff AND ff800000 gt 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#2: xvcmpgtsp c683287b gt ff800000 AND c683287b gt c683287b AND c683287b gt 80000000 AND c683287b gt 00000000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#3: xvcmpgtsp c683287b gt 00000000 AND c683287b gt 7f800000 AND c683287b gt 7fffffff AND c683287b gt 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#4: xvcmpgtsp 80000000 gt ff800000 AND 80000000 gt c683287b AND 80000000 gt 80000000 AND 80000000 gt 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#5: xvcmpgtsp 80000000 gt 00000000 AND 80000000 gt 7f800000 AND 80000000 gt 7fffffff AND 80000000 gt 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#6: xvcmpgtsp 00000000 gt ff800000 AND 00000000 gt c683287b AND 00000000 gt 80000000 AND 00000000 gt 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#7: xvcmpgtsp 00000000 gt 00000000 AND 00000000 gt 7f800000 AND 00000000 gt 7fffffff AND 00000000 gt 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#8: xvcmpgtsp 00000000 gt ff800000 AND 00000000 gt c683287b AND 00000000 gt 80000000 AND 00000000 gt 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#9: xvcmpgtsp 00000000 gt 42780000 AND 00000000 gt 7f800000 AND 00000000 gt 7fffffff AND 00000000 gt 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#10: xvcmpgtsp 7f800000 gt ff800000 AND 7f800000 gt c683287b AND 7f800000 gt 80000000 AND 7f800000 gt 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff +#11: xvcmpgtsp 7f800000 gt 00000000 AND 7f800000 gt 7f800000 AND 7f800000 gt 7fffffff AND 7f800000 gt 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#12: xvcmpgtsp ffffffff gt ff800000 AND ffffffff gt c683287b AND ffffffff gt 80000000 AND ffffffff gt 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#13: xvcmpgtsp ffffffff gt 00000000 AND ffffffff gt 7f800000 AND ffffffff gt 7fffffff AND ffffffff gt ffffffff ? cc=0 => 00000000 00000000 00000000 00000000 +#14: xvcmpgtsp ffc00000 gt ff800000 AND ffc00000 gt c683287b AND ffc00000 gt 80000000 AND ffc00000 gt 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#15: xvcmpgtsp 42780000 gt 42780000 AND 00000000 gt 00000000 AND 7f800000 gt 7f800000 AND 00000000 gt 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 + +#0: xvcmpgtsp. ff800000 gt ff800000 AND ff800000 gt c683287b AND ff800000 gt 80000000 AND ff800000 gt 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#1: xvcmpgtsp. ff800000 gt 00000000 AND ff800000 gt 7f800000 AND ff800000 gt 7fffffff AND ff800000 gt 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#2: xvcmpgtsp. c683287b gt ff800000 AND c683287b gt c683287b AND c683287b gt 80000000 AND c683287b gt 00000000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#3: xvcmpgtsp. c683287b gt 00000000 AND c683287b gt 7f800000 AND c683287b gt 7fffffff AND c683287b gt 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#4: xvcmpgtsp. 80000000 gt ff800000 AND 80000000 gt c683287b AND 80000000 gt 80000000 AND 80000000 gt 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#5: xvcmpgtsp. 80000000 gt 00000000 AND 80000000 gt 7f800000 AND 80000000 gt 7fffffff AND 80000000 gt 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#6: xvcmpgtsp. 00000000 gt ff800000 AND 00000000 gt c683287b AND 00000000 gt 80000000 AND 00000000 gt 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#7: xvcmpgtsp. 00000000 gt 00000000 AND 00000000 gt 7f800000 AND 00000000 gt 7fffffff AND 00000000 gt 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#8: xvcmpgtsp. 00000000 gt ff800000 AND 00000000 gt c683287b AND 00000000 gt 80000000 AND 00000000 gt 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#9: xvcmpgtsp. 00000000 gt 42780000 AND 00000000 gt 7f800000 AND 00000000 gt 7fffffff AND 00000000 gt 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#10: xvcmpgtsp. 7f800000 gt ff800000 AND 7f800000 gt c683287b AND 7f800000 gt 80000000 AND 7f800000 gt 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff +#11: xvcmpgtsp. 7f800000 gt 00000000 AND 7f800000 gt 7f800000 AND 7f800000 gt 7fffffff AND 7f800000 gt 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#12: xvcmpgtsp. ffffffff gt ff800000 AND ffffffff gt c683287b AND ffffffff gt 80000000 AND ffffffff gt 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#13: xvcmpgtsp. ffffffff gt 00000000 AND ffffffff gt 7f800000 AND ffffffff gt 7fffffff AND ffffffff gt ffffffff ? cc=2 => 00000000 00000000 00000000 00000000 +#14: xvcmpgtsp. ffc00000 gt ff800000 AND ffc00000 gt c683287b AND ffc00000 gt 80000000 AND ffc00000 gt 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#15: xvcmpgtsp. 42780000 gt 42780000 AND 00000000 gt 00000000 AND 7f800000 gt 7f800000 AND 00000000 gt 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 + + +#0: xvadddp fff0000000000000 + fff0000000000000 AND fff0000000000000 + c0d0650f5a07b353 => fff0000000000000 fff0000000000000 +#1: xvadddp 41232585a9900000 + 41382511a2000000 AND fff0000000000000 + 0000000000000000 => 4140dbea3b640000 fff0000000000000 +#2: xvadddp fff0000000000000 + 0123214569900000 AND fff0000000000000 + 7ff0000000000000 => fff0000000000000 7ff8000000000000 +#3: xvadddp fff0000000000000 + 7ff7ffffffffffff AND fff0000000000000 + 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#4: xvadddp c0d0650f5a07b353 + fff0000000000000 AND c0d0650f5a07b353 + c0d0650f5a07b353 => fff0000000000000 c0e0650f5a07b353 +#5: xvadddp c0d0650f5a07b353 + 8000000000000000 AND c0d0650f5a07b353 + 0000000000000000 => c0d0650f5a07b353 c0d0650f5a07b353 +#6: xvadddp c0d0650f5a07b353 + 0123214569900000 AND c0d0650f5a07b353 + 7ff0000000000000 => c0d0650f5a07b353 7ff0000000000000 +#7: xvadddp c0d0650f5a07b353 + 7ff7ffffffffffff AND c0d0650f5a07b353 + 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#8: xvadddp 8000000000000000 + fff0000000000000 AND 8000000000000000 + c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#9: xvadddp 8000000000000000 + 8000000000000000 AND 8000000000000000 + 0000000000000000 => 8000000000000000 0000000000000000 +#10: xvadddp 8000000000000000 + 0123214569900000 AND 8000000000000000 + 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#11: xvadddp 8000000000000000 + 7ff7ffffffffffff AND 8000000000000000 + 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#12: xvadddp 0000000000000000 + fff0000000000000 AND 0000000000000000 + c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#13: xvadddp 0000000000000000 + 8000000000000000 AND 0000000000000000 + 0000000000000000 => 0000000000000000 0000000000000000 +#14: xvadddp 0000000000000000 + 0123214569900000 AND 0000000000000000 + 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#15: xvadddp 0000000000000000 + 7ff7ffffffffffff AND 0000000000000000 + 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#16: xvadddp 0123214569900000 + fff0000000000000 AND 0123214569900000 + c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#17: xvadddp 0123214569900000 + 8000000000000000 AND 0123214569900000 + 0000000000000000 => 0123214569900000 0123214569900000 +#18: xvadddp 0123214569900000 + 404f000000000000 AND 0123214569900000 + 7ff0000000000000 => 404f000000000000 7ff0000000000000 +#19: xvadddp 0123214569900000 + 7ff7ffffffffffff AND 0123214569900000 + 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#20: xvadddp 7ff0000000000000 + fff0000000000000 AND 7ff0000000000000 + c0d0650f5a07b353 => 7ff8000000000000 7ff0000000000000 +#21: xvadddp 7ff0000000000000 + 8000000000000000 AND 7ff0000000000000 + 0000000000000000 => 7ff0000000000000 7ff0000000000000 +#22: xvadddp 7ff0000000000000 + 0123214569900000 AND 7ff0000000000000 + 7ff0000000000000 => 7ff0000000000000 7ff0000000000000 +#23: xvadddp 7ff0000000000000 + 7ff7ffffffffffff AND 7ff0000000000000 + 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#24: xvadddp fff7ffffffffffff + fff0000000000000 AND fff7ffffffffffff + c0d0650f5a07b353 => ffffffffffffffff ffffffffffffffff +#25: xvadddp fff8000000000000 + 8000000000000000 AND fff8000000000000 + 0000000000000000 => fff8000000000000 fff8000000000000 +#26: xvadddp fff7ffffffffffff + 0123214569900000 AND fff7ffffffffffff + 7ff0000000000000 => ffffffffffffffff ffffffffffffffff +#27: xvadddp fff7ffffffffffff + 7ff7ffffffffffff AND fff7ffffffffffff + 7ff8000000000000 => ffffffffffffffff ffffffffffffffff +#28: xvadddp fff8000000000000 + fff0000000000000 AND fff8000000000000 + c0d0650f5a07b353 => fff8000000000000 fff8000000000000 +#29: xvadddp fff8000000000000 + 8000000000000000 AND 41232585a9900000 + 41382511a2000000 => fff8000000000000 4140dbea3b640000 +#30: xvadddp 41232585a9900000 + 41382511a2000000 AND 7ff7ffffffffffff + 7ff8000000000000 => 4140dbea3b640000 7fffffffffffffff +#31: xvadddp 7ff8000000000000 + 7ff8000000000000 AND 7ff8000000000000 + fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvaddsp ff800000 + ff800000 AND ff800000 + c683287b AND 49192c2d + 49c1288d AND ff800000 + 00000000 => ff800000 ff800000 4a06df52 ff800000 +#1: xvaddsp ff800000 + 00000000 AND ff800000 + 7f800000 AND ff800000 + 7fffffff AND ff800000 + 7fc00000 => ff800000 7fc00000 7fffffff 7fc00000 +#2: xvaddsp c683287b + ff800000 AND c683287b + c683287b AND c683287b + 80000000 AND c683287b + 00000000 => ff800000 c703287b c683287b c683287b +#3: xvaddsp c683287b + 00000000 AND c683287b + 7f800000 AND c683287b + 7fffffff AND c683287b + 7fc00000 => c683287b 7f800000 7fffffff 7fc00000 +#4: xvaddsp 80000000 + ff800000 AND 80000000 + c683287b AND 80000000 + 80000000 AND 80000000 + 00000000 => ff800000 c683287b 80000000 00000000 +#5: xvaddsp 80000000 + 00000000 AND 80000000 + 7f800000 AND 80000000 + 7fffffff AND 80000000 + 7fc00000 => 00000000 7f800000 7fffffff 7fc00000 +#6: xvaddsp 00000000 + ff800000 AND 00000000 + c683287b AND 00000000 + 80000000 AND 00000000 + 00000000 => ff800000 c683287b 00000000 00000000 +#7: xvaddsp 00000000 + 00000000 AND 00000000 + 7f800000 AND 00000000 + 7fffffff AND 00000000 + 7fc00000 => 00000000 7f800000 7fffffff 7fc00000 +#8: xvaddsp 00000000 + ff800000 AND 00000000 + c683287b AND 00000000 + 80000000 AND 00000000 + 00000000 => ff800000 c683287b 00000000 00000000 +#9: xvaddsp 00000000 + 42780000 AND 00000000 + 7f800000 AND 00000000 + 7fffffff AND 00000000 + 7fc00000 => 42780000 7f800000 7fffffff 7fc00000 +#10: xvaddsp 7f800000 + ff800000 AND 7f800000 + c683287b AND 7f800000 + 80000000 AND 7f800000 + 00000000 => 7fc00000 7f800000 7f800000 7f800000 +#11: xvaddsp 7f800000 + 00000000 AND 7f800000 + 7f800000 AND 7f800000 + 7fffffff AND 7f800000 + 7fc00000 => 7f800000 7f800000 7fffffff 7fc00000 +#12: xvaddsp ffffffff + ff800000 AND ffffffff + c683287b AND ffc00000 + 80000000 AND ffc00000 + 00000000 => ffffffff ffffffff ffc00000 ffc00000 +#13: xvaddsp ffffffff + 00000000 AND ffffffff + 7f800000 AND ffffffff + 7fffffff AND ffffffff + 7fc00000 => ffffffff ffffffff ffffffff ffffffff +#14: xvaddsp ffc00000 + ff800000 AND ffc00000 + c683287b AND ffc00000 + 80000000 AND 49192c2d + 49c1288d => ffc00000 ffc00000 ffc00000 4a06df52 +#15: xvaddsp 49192c2d + 49c1288d AND 7fffffff + 7fc00000 AND 7fc00000 + 7fc00000 AND 7fc00000 + ffc00000 => 4a06df52 7fffffff 7fc00000 7fc00000 + + +#0: xvdivdp fff0000000000000 / fff0000000000000 AND fff0000000000000 / c0d0650f5a07b353 => 7ff8000000000000 7ff0000000000000 +#1: xvdivdp 41232585a9900000 / 41382511a2000000 AND fff0000000000000 / 0000000000000000 => 3fd9602b4fe7a892 fff0000000000000 +#2: xvdivdp fff0000000000000 / 0123214569900000 AND fff0000000000000 / 7ff0000000000000 => fff0000000000000 7ff8000000000000 +#3: xvdivdp fff0000000000000 / 7ff7ffffffffffff AND fff0000000000000 / 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#4: xvdivdp c0d0650f5a07b353 / fff0000000000000 AND c0d0650f5a07b353 / c0d0650f5a07b353 => 0000000000000000 3ff0000000000000 +#5: xvdivdp c0d0650f5a07b353 / 8000000000000000 AND c0d0650f5a07b353 / 0000000000000000 => 7ff0000000000000 fff0000000000000 +#6: xvdivdp c0d0650f5a07b353 / 0123214569900000 AND c0d0650f5a07b353 / 7ff0000000000000 => ff9b6cb57ca13c00 8000000000000000 +#7: xvdivdp c0d0650f5a07b353 / 7ff7ffffffffffff AND c0d0650f5a07b353 / 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#8: xvdivdp 8000000000000000 / fff0000000000000 AND 8000000000000000 / c0d0650f5a07b353 => 0000000000000000 0000000000000000 +#9: xvdivdp 8000000000000000 / 8000000000000000 AND 8000000000000000 / 0000000000000000 => 7ff8000000000000 7ff8000000000000 +#10: xvdivdp 8000000000000000 / 0123214569900000 AND 8000000000000000 / 7ff0000000000000 => 8000000000000000 8000000000000000 +#11: xvdivdp 8000000000000000 / 7ff7ffffffffffff AND 8000000000000000 / 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#12: xvdivdp 0000000000000000 / fff0000000000000 AND 0000000000000000 / c0d0650f5a07b353 => 8000000000000000 8000000000000000 +#13: xvdivdp 0000000000000000 / 8000000000000000 AND 0000000000000000 / 0000000000000000 => 7ff8000000000000 7ff8000000000000 +#14: xvdivdp 0000000000000000 / 0123214569900000 AND 0000000000000000 / 7ff0000000000000 => 0000000000000000 0000000000000000 +#15: xvdivdp 0000000000000000 / 7ff7ffffffffffff AND 0000000000000000 / 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#16: xvdivdp 0123214569900000 / fff0000000000000 AND 0123214569900000 / c0d0650f5a07b353 => 8000000000000000 8042ab59d8b6ec87 +#17: xvdivdp 0123214569900000 / 8000000000000000 AND 0123214569900000 / 0000000000000000 => fff0000000000000 7ff0000000000000 +#18: xvdivdp 0123214569900000 / 404f000000000000 AND 0123214569900000 / 7ff0000000000000 => 00c3bf3f64b5ad6b 0000000000000000 +#19: xvdivdp 0123214569900000 / 7ff7ffffffffffff AND 0123214569900000 / 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#20: xvdivdp 7ff0000000000000 / fff0000000000000 AND 7ff0000000000000 / c0d0650f5a07b353 => 7ff8000000000000 fff0000000000000 +#21: xvdivdp 7ff0000000000000 / 8000000000000000 AND 7ff0000000000000 / 0000000000000000 => fff0000000000000 7ff0000000000000 +#22: xvdivdp 7ff0000000000000 / 0123214569900000 AND 7ff0000000000000 / 7ff0000000000000 => 7ff0000000000000 7ff8000000000000 +#23: xvdivdp 7ff0000000000000 / 7ff7ffffffffffff AND 7ff0000000000000 / 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#24: xvdivdp fff7ffffffffffff / fff0000000000000 AND fff7ffffffffffff / c0d0650f5a07b353 => ffffffffffffffff ffffffffffffffff +#25: xvdivdp fff8000000000000 / 8000000000000000 AND fff8000000000000 / 0000000000000000 => fff8000000000000 fff8000000000000 +#26: xvdivdp fff7ffffffffffff / 0123214569900000 AND fff7ffffffffffff / 7ff0000000000000 => ffffffffffffffff ffffffffffffffff +#27: xvdivdp fff7ffffffffffff / 7ff7ffffffffffff AND fff7ffffffffffff / 7ff8000000000000 => ffffffffffffffff ffffffffffffffff +#28: xvdivdp fff8000000000000 / fff0000000000000 AND fff8000000000000 / c0d0650f5a07b353 => fff8000000000000 fff8000000000000 +#29: xvdivdp fff8000000000000 / 8000000000000000 AND 41232585a9900000 / 41382511a2000000 => fff8000000000000 3fd9602b4fe7a892 +#30: xvdivdp 41232585a9900000 / 41382511a2000000 AND 7ff7ffffffffffff / 7ff8000000000000 => 3fd9602b4fe7a892 7fffffffffffffff +#31: xvdivdp 7ff8000000000000 / 7ff8000000000000 AND 7ff8000000000000 / fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvdivsp ff800000 / ff800000 AND ff800000 / c683287b AND 49192c2d / 49c1288d AND ff800000 / 00000000 => 7fc00000 7f800000 3ecb015a ff800000 +#1: xvdivsp ff800000 / 00000000 AND ff800000 / 7f800000 AND ff800000 / 7fffffff AND ff800000 / 7fc00000 => ff800000 7fc00000 7fffffff 7fc00000 +#2: xvdivsp c683287b / ff800000 AND c683287b / c683287b AND c683287b / 80000000 AND c683287b / 00000000 => 00000000 3f800000 7f800000 ff800000 +#3: xvdivsp c683287b / 00000000 AND c683287b / 7f800000 AND c683287b / 7fffffff AND c683287b / 7fc00000 => ff800000 80000000 7fffffff 7fc00000 +#4: xvdivsp 80000000 / ff800000 AND 80000000 / c683287b AND 80000000 / 80000000 AND 80000000 / 00000000 => 00000000 00000000 7fc00000 7fc00000 +#5: xvdivsp 80000000 / 00000000 AND 80000000 / 7f800000 AND 80000000 / 7fffffff AND 80000000 / 7fc00000 => 7fc00000 80000000 7fffffff 7fc00000 +#6: xvdivsp 00000000 / ff800000 AND 00000000 / c683287b AND 00000000 / 80000000 AND 00000000 / 00000000 => 80000000 80000000 7fc00000 7fc00000 +#7: xvdivsp 00000000 / 00000000 AND 00000000 / 7f800000 AND 00000000 / 7fffffff AND 00000000 / 7fc00000 => 7fc00000 00000000 7fffffff 7fc00000 +#8: xvdivsp 00000000 / ff800000 AND 00000000 / c683287b AND 00000000 / 80000000 AND 00000000 / 00000000 => 80000000 80000000 7fc00000 7fc00000 +#9: xvdivsp 00000000 / 42780000 AND 00000000 / 7f800000 AND 00000000 / 7fffffff AND 00000000 / 7fc00000 => 00000000 00000000 7fffffff 7fc00000 +#10: xvdivsp 7f800000 / ff800000 AND 7f800000 / c683287b AND 7f800000 / 80000000 AND 7f800000 / 00000000 => 7fc00000 ff800000 ff800000 7f800000 +#11: xvdivsp 7f800000 / 00000000 AND 7f800000 / 7f800000 AND 7f800000 / 7fffffff AND 7f800000 / 7fc00000 => 7f800000 7fc00000 7fffffff 7fc00000 +#12: xvdivsp ffffffff / ff800000 AND ffffffff / c683287b AND ffc00000 / 80000000 AND ffc00000 / 00000000 => ffffffff ffffffff ffc00000 ffc00000 +#13: xvdivsp ffffffff / 00000000 AND ffffffff / 7f800000 AND ffffffff / 7fffffff AND ffffffff / 7fc00000 => ffffffff ffffffff ffffffff ffffffff +#14: xvdivsp ffc00000 / ff800000 AND ffc00000 / c683287b AND ffc00000 / 80000000 AND 49192c2d / 49c1288d => ffc00000 ffc00000 ffc00000 3ecb015a +#15: xvdivsp 49192c2d / 49c1288d AND 7fffffff / 7fc00000 AND 7fc00000 / 7fc00000 AND 7fc00000 / ffc00000 => 3ecb015a 7fffffff 7fc00000 7fc00000 + + +#0: xvmuldp fff0000000000000 * fff0000000000000 AND fff0000000000000 * c0d0650f5a07b353 => 7ff0000000000000 7ff0000000000000 +#1: xvmuldp 41232585a9900000 * 41382511a2000000 AND fff0000000000000 * 0000000000000000 => 426ce4a45d2a0a7e 7ff8000000000000 +#2: xvmuldp fff0000000000000 * 0123214569900000 AND fff0000000000000 * 7ff0000000000000 => fff0000000000000 fff0000000000000 +#3: xvmuldp fff0000000000000 * 7ff7ffffffffffff AND fff0000000000000 * 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#4: xvmuldp c0d0650f5a07b353 * fff0000000000000 AND c0d0650f5a07b353 * c0d0650f5a07b353 => 7ff0000000000000 41b0cc9d05eec2a7 +#5: xvmuldp c0d0650f5a07b353 * 8000000000000000 AND c0d0650f5a07b353 * 0000000000000000 => 0000000000000000 8000000000000000 +#6: xvmuldp c0d0650f5a07b353 * 0123214569900000 AND c0d0650f5a07b353 * 7ff0000000000000 => 82039a19ca8fcb5f fff0000000000000 +#7: xvmuldp c0d0650f5a07b353 * 7ff7ffffffffffff AND c0d0650f5a07b353 * 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#8: xvmuldp 8000000000000000 * fff0000000000000 AND 8000000000000000 * c0d0650f5a07b353 => 7ff8000000000000 0000000000000000 +#9: xvmuldp 8000000000000000 * 8000000000000000 AND 8000000000000000 * 0000000000000000 => 0000000000000000 8000000000000000 +#10: xvmuldp 8000000000000000 * 0123214569900000 AND 8000000000000000 * 7ff0000000000000 => 8000000000000000 7ff8000000000000 +#11: xvmuldp 8000000000000000 * 7ff7ffffffffffff AND 8000000000000000 * 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#12: xvmuldp 0000000000000000 * fff0000000000000 AND 0000000000000000 * c0d0650f5a07b353 => 7ff8000000000000 8000000000000000 +#13: xvmuldp 0000000000000000 * 8000000000000000 AND 0000000000000000 * 0000000000000000 => 8000000000000000 0000000000000000 +#14: xvmuldp 0000000000000000 * 0123214569900000 AND 0000000000000000 * 7ff0000000000000 => 0000000000000000 7ff8000000000000 +#15: xvmuldp 0000000000000000 * 7ff7ffffffffffff AND 0000000000000000 * 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#16: xvmuldp 0123214569900000 * fff0000000000000 AND 0123214569900000 * c0d0650f5a07b353 => fff0000000000000 82039a19ca8fcb5f +#17: xvmuldp 0123214569900000 * 8000000000000000 AND 0123214569900000 * 0000000000000000 => 8000000000000000 0000000000000000 +#18: xvmuldp 0123214569900000 * 404f000000000000 AND 0123214569900000 * 7ff0000000000000 => 0182883b3e438000 7ff0000000000000 +#19: xvmuldp 0123214569900000 * 7ff7ffffffffffff AND 0123214569900000 * 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#20: xvmuldp 7ff0000000000000 * fff0000000000000 AND 7ff0000000000000 * c0d0650f5a07b353 => fff0000000000000 fff0000000000000 +#21: xvmuldp 7ff0000000000000 * 8000000000000000 AND 7ff0000000000000 * 0000000000000000 => 7ff8000000000000 7ff8000000000000 +#22: xvmuldp 7ff0000000000000 * 0123214569900000 AND 7ff0000000000000 * 7ff0000000000000 => 7ff0000000000000 7ff0000000000000 +#23: xvmuldp 7ff0000000000000 * 7ff7ffffffffffff AND 7ff0000000000000 * 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#24: xvmuldp fff7ffffffffffff * fff0000000000000 AND fff7ffffffffffff * c0d0650f5a07b353 => ffffffffffffffff ffffffffffffffff +#25: xvmuldp fff8000000000000 * 8000000000000000 AND fff8000000000000 * 0000000000000000 => fff8000000000000 fff8000000000000 +#26: xvmuldp fff7ffffffffffff * 0123214569900000 AND fff7ffffffffffff * 7ff0000000000000 => ffffffffffffffff ffffffffffffffff +#27: xvmuldp fff7ffffffffffff * 7ff7ffffffffffff AND fff7ffffffffffff * 7ff8000000000000 => ffffffffffffffff ffffffffffffffff +#28: xvmuldp fff8000000000000 * fff0000000000000 AND fff8000000000000 * c0d0650f5a07b353 => fff8000000000000 fff8000000000000 +#29: xvmuldp fff8000000000000 * 8000000000000000 AND 41232585a9900000 * 41382511a2000000 => fff8000000000000 426ce4a45d2a0a7e +#30: xvmuldp 41232585a9900000 * 41382511a2000000 AND 7ff7ffffffffffff * 7ff8000000000000 => 426ce4a45d2a0a7e 7fffffffffffffff +#31: xvmuldp 7ff8000000000000 * 7ff8000000000000 AND 7ff8000000000000 * fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvmulsp ff800000 * ff800000 AND ff800000 * c683287b AND 49192c2d * 49c1288d AND ff800000 * 00000000 => 7f800000 7f800000 53672522 7fc00000 +#1: xvmulsp ff800000 * 00000000 AND ff800000 * 7f800000 AND ff800000 * 7fffffff AND ff800000 * 7fc00000 => 7fc00000 ff800000 7fffffff 7fc00000 +#2: xvmulsp c683287b * ff800000 AND c683287b * c683287b AND c683287b * 80000000 AND c683287b * 00000000 => 7f800000 4d8664e9 00000000 80000000 +#3: xvmulsp c683287b * 00000000 AND c683287b * 7f800000 AND c683287b * 7fffffff AND c683287b * 7fc00000 => 80000000 ff800000 7fffffff 7fc00000 +#4: xvmulsp 80000000 * ff800000 AND 80000000 * c683287b AND 80000000 * 80000000 AND 80000000 * 00000000 => 7fc00000 00000000 00000000 80000000 +#5: xvmulsp 80000000 * 00000000 AND 80000000 * 7f800000 AND 80000000 * 7fffffff AND 80000000 * 7fc00000 => 80000000 7fc00000 7fffffff 7fc00000 +#6: xvmulsp 00000000 * ff800000 AND 00000000 * c683287b AND 00000000 * 80000000 AND 00000000 * 00000000 => 7fc00000 80000000 80000000 00000000 +#7: xvmulsp 00000000 * 00000000 AND 00000000 * 7f800000 AND 00000000 * 7fffffff AND 00000000 * 7fc00000 => 00000000 7fc00000 7fffffff 7fc00000 +#8: xvmulsp 00000000 * ff800000 AND 00000000 * c683287b AND 00000000 * 80000000 AND 00000000 * 00000000 => 7fc00000 80000000 80000000 00000000 +#9: xvmulsp 00000000 * 42780000 AND 00000000 * 7f800000 AND 00000000 * 7fffffff AND 00000000 * 7fc00000 => 00000000 7fc00000 7fffffff 7fc00000 +#10: xvmulsp 7f800000 * ff800000 AND 7f800000 * c683287b AND 7f800000 * 80000000 AND 7f800000 * 00000000 => ff800000 ff800000 7fc00000 7fc00000 +#11: xvmulsp 7f800000 * 00000000 AND 7f800000 * 7f800000 AND 7f800000 * 7fffffff AND 7f800000 * 7fc00000 => 7fc00000 7f800000 7fffffff 7fc00000 +#12: xvmulsp ffffffff * ff800000 AND ffffffff * c683287b AND ffc00000 * 80000000 AND ffc00000 * 00000000 => ffffffff ffffffff ffc00000 ffc00000 +#13: xvmulsp ffffffff * 00000000 AND ffffffff * 7f800000 AND ffffffff * 7fffffff AND ffffffff * 7fc00000 => ffffffff ffffffff ffffffff ffffffff +#14: xvmulsp ffc00000 * ff800000 AND ffc00000 * c683287b AND ffc00000 * 80000000 AND 49192c2d * 49c1288d => ffc00000 ffc00000 ffc00000 53672522 +#15: xvmulsp 49192c2d * 49c1288d AND 7fffffff * 7fc00000 AND 7fc00000 * 7fc00000 AND 7fc00000 * ffc00000 => 53672522 7fffffff 7fc00000 7fc00000 + + +#0: xvsubdp fff0000000000000 - fff0000000000000 AND fff0000000000000 - c0d0650f5a07b353 => 7ff8000000000000 fff0000000000000 +#1: xvsubdp 41232585a9900000 - 41382511a2000000 AND fff0000000000000 - 0000000000000000 => c12d249d9a700000 fff0000000000000 +#2: xvsubdp fff0000000000000 - 0123214569900000 AND fff0000000000000 - 7ff0000000000000 => fff0000000000000 fff0000000000000 +#3: xvsubdp fff0000000000000 - 7ff7ffffffffffff AND fff0000000000000 - 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#4: xvsubdp c0d0650f5a07b353 - fff0000000000000 AND c0d0650f5a07b353 - c0d0650f5a07b353 => 7ff0000000000000 0000000000000000 +#5: xvsubdp c0d0650f5a07b353 - 8000000000000000 AND c0d0650f5a07b353 - 0000000000000000 => c0d0650f5a07b353 c0d0650f5a07b353 +#6: xvsubdp c0d0650f5a07b353 - 0123214569900000 AND c0d0650f5a07b353 - 7ff0000000000000 => c0d0650f5a07b353 fff0000000000000 +#7: xvsubdp c0d0650f5a07b353 - 7ff7ffffffffffff AND c0d0650f5a07b353 - 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#8: xvsubdp 8000000000000000 - fff0000000000000 AND 8000000000000000 - c0d0650f5a07b353 => 7ff0000000000000 40d0650f5a07b353 +#9: xvsubdp 8000000000000000 - 8000000000000000 AND 8000000000000000 - 0000000000000000 => 0000000000000000 8000000000000000 +#10: xvsubdp 8000000000000000 - 0123214569900000 AND 8000000000000000 - 7ff0000000000000 => 8123214569900000 fff0000000000000 +#11: xvsubdp 8000000000000000 - 7ff7ffffffffffff AND 8000000000000000 - 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#12: xvsubdp 0000000000000000 - fff0000000000000 AND 0000000000000000 - c0d0650f5a07b353 => 7ff0000000000000 40d0650f5a07b353 +#13: xvsubdp 0000000000000000 - 8000000000000000 AND 0000000000000000 - 0000000000000000 => 0000000000000000 0000000000000000 +#14: xvsubdp 0000000000000000 - 0123214569900000 AND 0000000000000000 - 7ff0000000000000 => 8123214569900000 fff0000000000000 +#15: xvsubdp 0000000000000000 - 7ff7ffffffffffff AND 0000000000000000 - 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#16: xvsubdp 0123214569900000 - fff0000000000000 AND 0123214569900000 - c0d0650f5a07b353 => 7ff0000000000000 40d0650f5a07b353 +#17: xvsubdp 0123214569900000 - 8000000000000000 AND 0123214569900000 - 0000000000000000 => 0123214569900000 0123214569900000 +#18: xvsubdp 0123214569900000 - 404f000000000000 AND 0123214569900000 - 7ff0000000000000 => c04f000000000000 fff0000000000000 +#19: xvsubdp 0123214569900000 - 7ff7ffffffffffff AND 0123214569900000 - 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#20: xvsubdp 7ff0000000000000 - fff0000000000000 AND 7ff0000000000000 - c0d0650f5a07b353 => 7ff0000000000000 7ff0000000000000 +#21: xvsubdp 7ff0000000000000 - 8000000000000000 AND 7ff0000000000000 - 0000000000000000 => 7ff0000000000000 7ff0000000000000 +#22: xvsubdp 7ff0000000000000 - 0123214569900000 AND 7ff0000000000000 - 7ff0000000000000 => 7ff0000000000000 7ff8000000000000 +#23: xvsubdp 7ff0000000000000 - 7ff7ffffffffffff AND 7ff0000000000000 - 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#24: xvsubdp fff7ffffffffffff - fff0000000000000 AND fff7ffffffffffff - c0d0650f5a07b353 => ffffffffffffffff ffffffffffffffff +#25: xvsubdp fff8000000000000 - 8000000000000000 AND fff8000000000000 - 0000000000000000 => fff8000000000000 fff8000000000000 +#26: xvsubdp fff7ffffffffffff - 0123214569900000 AND fff7ffffffffffff - 7ff0000000000000 => ffffffffffffffff ffffffffffffffff +#27: xvsubdp fff7ffffffffffff - 7ff7ffffffffffff AND fff7ffffffffffff - 7ff8000000000000 => ffffffffffffffff ffffffffffffffff +#28: xvsubdp fff8000000000000 - fff0000000000000 AND fff8000000000000 - c0d0650f5a07b353 => fff8000000000000 fff8000000000000 +#29: xvsubdp fff8000000000000 - 8000000000000000 AND 41232585a9900000 - 41382511a2000000 => fff8000000000000 c12d249d9a700000 +#30: xvsubdp 41232585a9900000 - 41382511a2000000 AND 7ff7ffffffffffff - 7ff8000000000000 => c12d249d9a700000 7fffffffffffffff +#31: xvsubdp 7ff8000000000000 - 7ff8000000000000 AND 7ff8000000000000 - fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvsubsp ff800000 - ff800000 AND ff800000 - c683287b AND 49192c2d - 49c1288d AND ff800000 - 00000000 => 7fc00000 ff800000 c96924ed ff800000 +#1: xvsubsp ff800000 - 00000000 AND ff800000 - 7f800000 AND ff800000 - 7fffffff AND ff800000 - 7fc00000 => ff800000 ff800000 7fffffff 7fc00000 +#2: xvsubsp c683287b - ff800000 AND c683287b - c683287b AND c683287b - 80000000 AND c683287b - 00000000 => 7f800000 00000000 c683287b c683287b +#3: xvsubsp c683287b - 00000000 AND c683287b - 7f800000 AND c683287b - 7fffffff AND c683287b - 7fc00000 => c683287b ff800000 7fffffff 7fc00000 +#4: xvsubsp 80000000 - ff800000 AND 80000000 - c683287b AND 80000000 - 80000000 AND 80000000 - 00000000 => 7f800000 4683287b 00000000 80000000 +#5: xvsubsp 80000000 - 00000000 AND 80000000 - 7f800000 AND 80000000 - 7fffffff AND 80000000 - 7fc00000 => 80000000 ff800000 7fffffff 7fc00000 +#6: xvsubsp 00000000 - ff800000 AND 00000000 - c683287b AND 00000000 - 80000000 AND 00000000 - 00000000 => 7f800000 4683287b 00000000 00000000 +#7: xvsubsp 00000000 - 00000000 AND 00000000 - 7f800000 AND 00000000 - 7fffffff AND 00000000 - 7fc00000 => 00000000 ff800000 7fffffff 7fc00000 +#8: xvsubsp 00000000 - ff800000 AND 00000000 - c683287b AND 00000000 - 80000000 AND 00000000 - 00000000 => 7f800000 4683287b 00000000 00000000 +#9: xvsubsp 00000000 - 42780000 AND 00000000 - 7f800000 AND 00000000 - 7fffffff AND 00000000 - 7fc00000 => c2780000 ff800000 7fffffff 7fc00000 +#10: xvsubsp 7f800000 - ff800000 AND 7f800000 - c683287b AND 7f800000 - 80000000 AND 7f800000 - 00000000 => 7f800000 7f800000 7f800000 7f800000 +#11: xvsubsp 7f800000 - 00000000 AND 7f800000 - 7f800000 AND 7f800000 - 7fffffff AND 7f800000 - 7fc00000 => 7f800000 7fc00000 7fffffff 7fc00000 +#12: xvsubsp ffffffff - ff800000 AND ffffffff - c683287b AND ffc00000 - 80000000 AND ffc00000 - 00000000 => ffffffff ffffffff ffc00000 ffc00000 +#13: xvsubsp ffffffff - 00000000 AND ffffffff - 7f800000 AND ffffffff - 7fffffff AND ffffffff - 7fc00000 => ffffffff ffffffff ffffffff ffffffff +#14: xvsubsp ffc00000 - ff800000 AND ffc00000 - c683287b AND ffc00000 - 80000000 AND 49192c2d - 49c1288d => ffc00000 ffc00000 ffc00000 c96924ed +#15: xvsubsp 49192c2d - 49c1288d AND 7fffffff - 7fc00000 AND 7fc00000 - 7fc00000 AND 7fc00000 - ffc00000 => c96924ed 7fffffff 7fc00000 7fc00000 + + +#0: xvmaxdp fff0000000000000 @max@ fff0000000000000 AND fff0000000000000 @max@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#1: xvmaxdp 41232585a9900000 @max@ 41382511a2000000 AND fff0000000000000 @max@ 0000000000000000 => 41382511a2000000 0000000000000000 +#2: xvmaxdp fff0000000000000 @max@ 0123214569900000 AND fff0000000000000 @max@ 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#3: xvmaxdp fff0000000000000 @max@ 7ff7ffffffffffff AND fff0000000000000 @max@ 7ff8000000000000 => 7fffffffffffffff fff0000000000000 +#4: xvmaxdp c0d0650f5a07b353 @max@ fff0000000000000 AND c0d0650f5a07b353 @max@ c0d0650f5a07b353 => c0d0650f5a07b353 c0d0650f5a07b353 +#5: xvmaxdp c0d0650f5a07b353 @max@ 8000000000000000 AND c0d0650f5a07b353 @max@ 0000000000000000 => 8000000000000000 0000000000000000 +#6: xvmaxdp c0d0650f5a07b353 @max@ 0123214569900000 AND c0d0650f5a07b353 @max@ 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#7: xvmaxdp c0d0650f5a07b353 @max@ 7ff7ffffffffffff AND c0d0650f5a07b353 @max@ 7ff8000000000000 => 7fffffffffffffff c0d0650f5a07b353 +#8: xvmaxdp 8000000000000000 @max@ fff0000000000000 AND 8000000000000000 @max@ c0d0650f5a07b353 => 8000000000000000 8000000000000000 +#9: xvmaxdp 8000000000000000 @max@ 8000000000000000 AND 8000000000000000 @max@ 0000000000000000 => 8000000000000000 0000000000000000 +#10: xvmaxdp 8000000000000000 @max@ 0123214569900000 AND 8000000000000000 @max@ 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#11: xvmaxdp 8000000000000000 @max@ 7ff7ffffffffffff AND 8000000000000000 @max@ 7ff8000000000000 => 7fffffffffffffff 8000000000000000 +#12: xvmaxdp 0000000000000000 @max@ fff0000000000000 AND 0000000000000000 @max@ c0d0650f5a07b353 => 0000000000000000 0000000000000000 +#13: xvmaxdp 0000000000000000 @max@ 8000000000000000 AND 0000000000000000 @max@ 0000000000000000 => 0000000000000000 0000000000000000 +#14: xvmaxdp 0000000000000000 @max@ 0123214569900000 AND 0000000000000000 @max@ 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#15: xvmaxdp 0000000000000000 @max@ 7ff7ffffffffffff AND 0000000000000000 @max@ 7ff8000000000000 => 7fffffffffffffff 0000000000000000 +#16: xvmaxdp 0123214569900000 @max@ fff0000000000000 AND 0123214569900000 @max@ c0d0650f5a07b353 => 0123214569900000 0123214569900000 +#17: xvmaxdp 0123214569900000 @max@ 8000000000000000 AND 0123214569900000 @max@ 0000000000000000 => 0123214569900000 0123214569900000 +#18: xvmaxdp 0123214569900000 @max@ 404f000000000000 AND 0123214569900000 @max@ 7ff0000000000000 => 404f000000000000 7ff0000000000000 +#19: xvmaxdp 0123214569900000 @max@ 7ff7ffffffffffff AND 0123214569900000 @max@ 7ff8000000000000 => 7fffffffffffffff 0123214569900000 +#20: xvmaxdp 7ff0000000000000 @max@ fff0000000000000 AND 7ff0000000000000 @max@ c0d0650f5a07b353 => 7ff0000000000000 7ff0000000000000 +#21: xvmaxdp 7ff0000000000000 @max@ 8000000000000000 AND 7ff0000000000000 @max@ 0000000000000000 => 7ff0000000000000 7ff0000000000000 +#22: xvmaxdp 7ff0000000000000 @max@ 0123214569900000 AND 7ff0000000000000 @max@ 7ff0000000000000 => 7ff0000000000000 7ff0000000000000 +#23: xvmaxdp 7ff0000000000000 @max@ 7ff7ffffffffffff AND 7ff0000000000000 @max@ 7ff8000000000000 => 7fffffffffffffff 7ff0000000000000 +#24: xvmaxdp fff7ffffffffffff @max@ fff0000000000000 AND fff7ffffffffffff @max@ c0d0650f5a07b353 => ffffffffffffffff ffffffffffffffff +#25: xvmaxdp fff8000000000000 @max@ 8000000000000000 AND fff8000000000000 @max@ 0000000000000000 => 8000000000000000 0000000000000000 +#26: xvmaxdp fff7ffffffffffff @max@ 0123214569900000 AND fff7ffffffffffff @max@ 7ff0000000000000 => ffffffffffffffff ffffffffffffffff +#27: xvmaxdp fff7ffffffffffff @max@ 7ff7ffffffffffff AND fff7ffffffffffff @max@ 7ff8000000000000 => ffffffffffffffff ffffffffffffffff +#28: xvmaxdp fff8000000000000 @max@ fff0000000000000 AND fff8000000000000 @max@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#29: xvmaxdp fff8000000000000 @max@ 8000000000000000 AND 41232585a9900000 @max@ 41382511a2000000 => 8000000000000000 41382511a2000000 +#30: xvmaxdp 41232585a9900000 @max@ 41382511a2000000 AND 7ff7ffffffffffff @max@ 7ff8000000000000 => 41382511a2000000 7fffffffffffffff +#31: xvmaxdp 7ff8000000000000 @max@ 7ff8000000000000 AND 7ff8000000000000 @max@ fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvmindp fff0000000000000 @min@ fff0000000000000 AND fff0000000000000 @min@ c0d0650f5a07b353 => fff0000000000000 fff0000000000000 +#1: xvmindp 41232585a9900000 @min@ 41382511a2000000 AND fff0000000000000 @min@ 0000000000000000 => 41232585a9900000 fff0000000000000 +#2: xvmindp fff0000000000000 @min@ 0123214569900000 AND fff0000000000000 @min@ 7ff0000000000000 => fff0000000000000 fff0000000000000 +#3: xvmindp fff0000000000000 @min@ 7ff7ffffffffffff AND fff0000000000000 @min@ 7ff8000000000000 => 7fffffffffffffff fff0000000000000 +#4: xvmindp c0d0650f5a07b353 @min@ fff0000000000000 AND c0d0650f5a07b353 @min@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#5: xvmindp c0d0650f5a07b353 @min@ 8000000000000000 AND c0d0650f5a07b353 @min@ 0000000000000000 => c0d0650f5a07b353 c0d0650f5a07b353 +#6: xvmindp c0d0650f5a07b353 @min@ 0123214569900000 AND c0d0650f5a07b353 @min@ 7ff0000000000000 => c0d0650f5a07b353 c0d0650f5a07b353 +#7: xvmindp c0d0650f5a07b353 @min@ 7ff7ffffffffffff AND c0d0650f5a07b353 @min@ 7ff8000000000000 => 7fffffffffffffff c0d0650f5a07b353 +#8: xvmindp 8000000000000000 @min@ fff0000000000000 AND 8000000000000000 @min@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#9: xvmindp 8000000000000000 @min@ 8000000000000000 AND 8000000000000000 @min@ 0000000000000000 => 8000000000000000 8000000000000000 +#10: xvmindp 8000000000000000 @min@ 0123214569900000 AND 8000000000000000 @min@ 7ff0000000000000 => 8000000000000000 8000000000000000 +#11: xvmindp 8000000000000000 @min@ 7ff7ffffffffffff AND 8000000000000000 @min@ 7ff8000000000000 => 7fffffffffffffff 8000000000000000 +#12: xvmindp 0000000000000000 @min@ fff0000000000000 AND 0000000000000000 @min@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#13: xvmindp 0000000000000000 @min@ 8000000000000000 AND 0000000000000000 @min@ 0000000000000000 => 8000000000000000 0000000000000000 +#14: xvmindp 0000000000000000 @min@ 0123214569900000 AND 0000000000000000 @min@ 7ff0000000000000 => 0000000000000000 0000000000000000 +#15: xvmindp 0000000000000000 @min@ 7ff7ffffffffffff AND 0000000000000000 @min@ 7ff8000000000000 => 7fffffffffffffff 0000000000000000 +#16: xvmindp 0123214569900000 @min@ fff0000000000000 AND 0123214569900000 @min@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#17: xvmindp 0123214569900000 @min@ 8000000000000000 AND 0123214569900000 @min@ 0000000000000000 => 8000000000000000 0000000000000000 +#18: xvmindp 0123214569900000 @min@ 404f000000000000 AND 0123214569900000 @min@ 7ff0000000000000 => 0123214569900000 0123214569900000 +#19: xvmindp 0123214569900000 @min@ 7ff7ffffffffffff AND 0123214569900000 @min@ 7ff8000000000000 => 7fffffffffffffff 0123214569900000 +#20: xvmindp 7ff0000000000000 @min@ fff0000000000000 AND 7ff0000000000000 @min@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#21: xvmindp 7ff0000000000000 @min@ 8000000000000000 AND 7ff0000000000000 @min@ 0000000000000000 => 8000000000000000 0000000000000000 +#22: xvmindp 7ff0000000000000 @min@ 0123214569900000 AND 7ff0000000000000 @min@ 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#23: xvmindp 7ff0000000000000 @min@ 7ff7ffffffffffff AND 7ff0000000000000 @min@ 7ff8000000000000 => 7fffffffffffffff 7ff0000000000000 +#24: xvmindp fff7ffffffffffff @min@ fff0000000000000 AND fff7ffffffffffff @min@ c0d0650f5a07b353 => ffffffffffffffff ffffffffffffffff +#25: xvmindp fff8000000000000 @min@ 8000000000000000 AND fff8000000000000 @min@ 0000000000000000 => 8000000000000000 0000000000000000 +#26: xvmindp fff7ffffffffffff @min@ 0123214569900000 AND fff7ffffffffffff @min@ 7ff0000000000000 => ffffffffffffffff ffffffffffffffff +#27: xvmindp fff7ffffffffffff @min@ 7ff7ffffffffffff AND fff7ffffffffffff @min@ 7ff8000000000000 => ffffffffffffffff ffffffffffffffff +#28: xvmindp fff8000000000000 @min@ fff0000000000000 AND fff8000000000000 @min@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#29: xvmindp fff8000000000000 @min@ 8000000000000000 AND 41232585a9900000 @min@ 41382511a2000000 => 8000000000000000 41232585a9900000 +#30: xvmindp 41232585a9900000 @min@ 41382511a2000000 AND 7ff7ffffffffffff @min@ 7ff8000000000000 => 41232585a9900000 7fffffffffffffff +#31: xvmindp 7ff8000000000000 @min@ 7ff8000000000000 AND 7ff8000000000000 @min@ fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvmaxsp ff800000 @max@ ff800000 AND ff800000 @max@ c683287b AND 49192c2d @max@ 49c1288d AND ff800000 @max@ 00000000 => ff800000 c683287b 49c1288d 00000000 +#1: xvmaxsp ff800000 @max@ 00000000 AND ff800000 @max@ 7f800000 AND ff800000 @max@ 7fffffff AND ff800000 @max@ 7fc00000 => 00000000 7f800000 ff800000 ff800000 +#2: xvmaxsp c683287b @max@ ff800000 AND c683287b @max@ c683287b AND c683287b @max@ 80000000 AND c683287b @max@ 00000000 => c683287b c683287b 80000000 00000000 +#3: xvmaxsp c683287b @max@ 00000000 AND c683287b @max@ 7f800000 AND c683287b @max@ 7fffffff AND c683287b @max@ 7fc00000 => 00000000 7f800000 c683287b c683287b +#4: xvmaxsp 80000000 @max@ ff800000 AND 80000000 @max@ c683287b AND 80000000 @max@ 80000000 AND 80000000 @max@ 00000000 => 80000000 80000000 80000000 00000000 +#5: xvmaxsp 80000000 @max@ 00000000 AND 80000000 @max@ 7f800000 AND 80000000 @max@ 7fffffff AND 80000000 @max@ 7fc00000 => 00000000 7f800000 80000000 80000000 +#6: xvmaxsp 00000000 @max@ ff800000 AND 00000000 @max@ c683287b AND 00000000 @max@ 80000000 AND 00000000 @max@ 00000000 => 00000000 00000000 00000000 00000000 +#7: xvmaxsp 00000000 @max@ 00000000 AND 00000000 @max@ 7f800000 AND 00000000 @max@ 7fffffff AND 00000000 @max@ 7fc00000 => 00000000 7f800000 00000000 00000000 +#8: xvmaxsp 00000000 @max@ ff800000 AND 00000000 @max@ c683287b AND 00000000 @max@ 80000000 AND 00000000 @max@ 00000000 => 00000000 00000000 00000000 00000000 +#9: xvmaxsp 00000000 @max@ 42780000 AND 00000000 @max@ 7f800000 AND 00000000 @max@ 7fffffff AND 00000000 @max@ 7fc00000 => 42780000 7f800000 00000000 00000000 +#10: xvmaxsp 7f800000 @max@ ff800000 AND 7f800000 @max@ c683287b AND 7f800000 @max@ 80000000 AND 7f800000 @max@ 00000000 => 7f800000 7f800000 7f800000 7f800000 +#11: xvmaxsp 7f800000 @max@ 00000000 AND 7f800000 @max@ 7f800000 AND 7f800000 @max@ 7fffffff AND 7f800000 @max@ 7fc00000 => 7f800000 7f800000 7f800000 7f800000 +#12: xvmaxsp ffffffff @max@ ff800000 AND ffffffff @max@ c683287b AND ffc00000 @max@ 80000000 AND ffc00000 @max@ 00000000 => ff800000 c683287b 80000000 00000000 +#13: xvmaxsp ffffffff @max@ 00000000 AND ffffffff @max@ 7f800000 AND ffffffff @max@ 7fffffff AND ffffffff @max@ 7fc00000 => 00000000 7f800000 ffffffff ffffffff +#14: xvmaxsp ffc00000 @max@ ff800000 AND ffc00000 @max@ c683287b AND ffc00000 @max@ 80000000 AND 49192c2d @max@ 49c1288d => ff800000 c683287b 80000000 49c1288d +#15: xvmaxsp 49192c2d @max@ 49c1288d AND 7fffffff @max@ 7fc00000 AND 7fc00000 @max@ 7fc00000 AND 7fc00000 @max@ ffc00000 => 49c1288d 7fffffff 7fc00000 7fc00000 + + +#0: xvminsp ff800000 @min@ ff800000 AND ff800000 @min@ c683287b AND 49192c2d @min@ 49c1288d AND ff800000 @min@ 00000000 => ff800000 ff800000 49192c2d ff800000 +#1: xvminsp ff800000 @min@ 00000000 AND ff800000 @min@ 7f800000 AND ff800000 @min@ 7fffffff AND ff800000 @min@ 7fc00000 => ff800000 ff800000 ff800000 ff800000 +#2: xvminsp c683287b @min@ ff800000 AND c683287b @min@ c683287b AND c683287b @min@ 80000000 AND c683287b @min@ 00000000 => ff800000 c683287b c683287b c683287b +#3: xvminsp c683287b @min@ 00000000 AND c683287b @min@ 7f800000 AND c683287b @min@ 7fffffff AND c683287b @min@ 7fc00000 => c683287b c683287b c683287b c683287b +#4: xvminsp 80000000 @min@ ff800000 AND 80000000 @min@ c683287b AND 80000000 @min@ 80000000 AND 80000000 @min@ 00000000 => ff800000 c683287b 80000000 80000000 +#5: xvminsp 80000000 @min@ 00000000 AND 80000000 @min@ 7f800000 AND 80000000 @min@ 7fffffff AND 80000000 @min@ 7fc00000 => 80000000 80000000 80000000 80000000 +#6: xvminsp 00000000 @min@ ff800000 AND 00000000 @min@ c683287b AND 00000000 @min@ 80000000 AND 00000000 @min@ 00000000 => ff800000 c683287b 80000000 00000000 +#7: xvminsp 00000000 @min@ 00000000 AND 00000000 @min@ 7f800000 AND 00000000 @min@ 7fffffff AND 00000000 @min@ 7fc00000 => 00000000 00000000 00000000 00000000 +#8: xvminsp 00000000 @min@ ff800000 AND 00000000 @min@ c683287b AND 00000000 @min@ 80000000 AND 00000000 @min@ 00000000 => ff800000 c683287b 80000000 00000000 +#9: xvminsp 00000000 @min@ 42780000 AND 00000000 @min@ 7f800000 AND 00000000 @min@ 7fffffff AND 00000000 @min@ 7fc00000 => 00000000 00000000 00000000 00000000 +#10: xvminsp 7f800000 @min@ ff800000 AND 7f800000 @min@ c683287b AND 7f800000 @min@ 80000000 AND 7f800000 @min@ 00000000 => ff800000 c683287b 80000000 00000000 +#11: xvminsp 7f800000 @min@ 00000000 AND 7f800000 @min@ 7f800000 AND 7f800000 @min@ 7fffffff AND 7f800000 @min@ 7fc00000 => 00000000 7f800000 7f800000 7f800000 +#12: xvminsp ffffffff @min@ ff800000 AND ffffffff @min@ c683287b AND ffc00000 @min@ 80000000 AND ffc00000 @min@ 00000000 => ff800000 c683287b 80000000 00000000 +#13: xvminsp ffffffff @min@ 00000000 AND ffffffff @min@ 7f800000 AND ffffffff @min@ 7fffffff AND ffffffff @min@ 7fc00000 => 00000000 7f800000 ffffffff ffffffff +#14: xvminsp ffc00000 @min@ ff800000 AND ffc00000 @min@ c683287b AND ffc00000 @min@ 80000000 AND 49192c2d @min@ 49c1288d => ff800000 c683287b 80000000 49192c2d +#15: xvminsp 49192c2d @min@ 49c1288d AND 7fffffff @min@ 7fc00000 AND 7fc00000 @min@ 7fc00000 AND 7fc00000 @min@ ffc00000 => 49192c2d 7fffffff 7fc00000 7fc00000 + + +#0: xvcpsgndp fff0000000000000 +-cp fff0000000000000 AND fff0000000000000 +-cp c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#1: xvcpsgndp 41232585a9900000 +-cp 41382511a2000000 AND fff0000000000000 +-cp 0000000000000000 => 41382511a2000000 8000000000000000 +#2: xvcpsgndp fff0000000000000 +-cp 0123214569900000 AND fff0000000000000 +-cp 7ff0000000000000 => 8123214569900000 fff0000000000000 +#3: xvcpsgndp fff0000000000000 +-cp 7ff7ffffffffffff AND fff0000000000000 +-cp 7ff8000000000000 => fff7ffffffffffff fff8000000000000 +#4: xvcpsgndp c0d0650f5a07b353 +-cp fff0000000000000 AND c0d0650f5a07b353 +-cp c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#5: xvcpsgndp c0d0650f5a07b353 +-cp 8000000000000000 AND c0d0650f5a07b353 +-cp 0000000000000000 => 8000000000000000 8000000000000000 +#6: xvcpsgndp c0d0650f5a07b353 +-cp 0123214569900000 AND c0d0650f5a07b353 +-cp 7ff0000000000000 => 8123214569900000 fff0000000000000 +#7: xvcpsgndp c0d0650f5a07b353 +-cp 7ff7ffffffffffff AND c0d0650f5a07b353 +-cp 7ff8000000000000 => fff7ffffffffffff fff8000000000000 +#8: xvcpsgndp 8000000000000000 +-cp fff0000000000000 AND 8000000000000000 +-cp c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#9: xvcpsgndp 8000000000000000 +-cp 8000000000000000 AND 8000000000000000 +-cp 0000000000000000 => 8000000000000000 8000000000000000 +#10: xvcpsgndp 8000000000000000 +-cp 0123214569900000 AND 8000000000000000 +-cp 7ff0000000000000 => 8123214569900000 fff0000000000000 +#11: xvcpsgndp 8000000000000000 +-cp 7ff7ffffffffffff AND 8000000000000000 +-cp 7ff8000000000000 => fff7ffffffffffff fff8000000000000 +#12: xvcpsgndp 0000000000000000 +-cp fff0000000000000 AND 0000000000000000 +-cp c0d0650f5a07b353 => 7ff0000000000000 40d0650f5a07b353 +#13: xvcpsgndp 0000000000000000 +-cp 8000000000000000 AND 0000000000000000 +-cp 0000000000000000 => 0000000000000000 0000000000000000 +#14: xvcpsgndp 0000000000000000 +-cp 0123214569900000 AND 0000000000000000 +-cp 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#15: xvcpsgndp 0000000000000000 +-cp 7ff7ffffffffffff AND 0000000000000000 +-cp 7ff8000000000000 => 7ff7ffffffffffff 7ff8000000000000 +#16: xvcpsgndp 0123214569900000 +-cp fff0000000000000 AND 0123214569900000 +-cp c0d0650f5a07b353 => 7ff0000000000000 40d0650f5a07b353 +#17: xvcpsgndp 0123214569900000 +-cp 8000000000000000 AND 0123214569900000 +-cp 0000000000000000 => 0000000000000000 0000000000000000 +#18: xvcpsgndp 0123214569900000 +-cp 404f000000000000 AND 0123214569900000 +-cp 7ff0000000000000 => 404f000000000000 7ff0000000000000 +#19: xvcpsgndp 0123214569900000 +-cp 7ff7ffffffffffff AND 0123214569900000 +-cp 7ff8000000000000 => 7ff7ffffffffffff 7ff8000000000000 +#20: xvcpsgndp 7ff0000000000000 +-cp fff0000000000000 AND 7ff0000000000000 +-cp c0d0650f5a07b353 => 7ff0000000000000 40d0650f5a07b353 +#21: xvcpsgndp 7ff0000000000000 +-cp 8000000000000000 AND 7ff0000000000000 +-cp 0000000000000000 => 0000000000000000 0000000000000000 +#22: xvcpsgndp 7ff0000000000000 +-cp 0123214569900000 AND 7ff0000000000000 +-cp 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#23: xvcpsgndp 7ff0000000000000 +-cp 7ff7ffffffffffff AND 7ff0000000000000 +-cp 7ff8000000000000 => 7ff7ffffffffffff 7ff8000000000000 +#24: xvcpsgndp fff7ffffffffffff +-cp fff0000000000000 AND fff7ffffffffffff +-cp c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#25: xvcpsgndp fff8000000000000 +-cp 8000000000000000 AND fff8000000000000 +-cp 0000000000000000 => 8000000000000000 8000000000000000 +#26: xvcpsgndp fff7ffffffffffff +-cp 0123214569900000 AND fff7ffffffffffff +-cp 7ff0000000000000 => 8123214569900000 fff0000000000000 +#27: xvcpsgndp fff7ffffffffffff +-cp 7ff7ffffffffffff AND fff7ffffffffffff +-cp 7ff8000000000000 => fff7ffffffffffff fff8000000000000 +#28: xvcpsgndp fff8000000000000 +-cp fff0000000000000 AND fff8000000000000 +-cp c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#29: xvcpsgndp fff8000000000000 +-cp 8000000000000000 AND 41232585a9900000 +-cp 41382511a2000000 => 8000000000000000 41382511a2000000 +#30: xvcpsgndp 41232585a9900000 +-cp 41382511a2000000 AND 7ff7ffffffffffff +-cp 7ff8000000000000 => 41382511a2000000 7ff8000000000000 +#31: xvcpsgndp 7ff8000000000000 +-cp 7ff8000000000000 AND 7ff8000000000000 +-cp fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvcpsgnsp ff800000 +-cp ff800000 AND ff800000 +-cp c683287b AND 49192c2d +-cp 49c1288d AND ff800000 +-cp 00000000 => ff800000 c683287b 49c1288d 80000000 +#1: xvcpsgnsp ff800000 +-cp 00000000 AND ff800000 +-cp 7f800000 AND ff800000 +-cp 7fffffff AND ff800000 +-cp 7fc00000 => 80000000 ff800000 ffffffff ffc00000 +#2: xvcpsgnsp c683287b +-cp ff800000 AND c683287b +-cp c683287b AND c683287b +-cp 80000000 AND c683287b +-cp 00000000 => ff800000 c683287b 80000000 80000000 +#3: xvcpsgnsp c683287b +-cp 00000000 AND c683287b +-cp 7f800000 AND c683287b +-cp 7fffffff AND c683287b +-cp 7fc00000 => 80000000 ff800000 ffffffff ffc00000 +#4: xvcpsgnsp 80000000 +-cp ff800000 AND 80000000 +-cp c683287b AND 80000000 +-cp 80000000 AND 80000000 +-cp 00000000 => ff800000 c683287b 80000000 80000000 +#5: xvcpsgnsp 80000000 +-cp 00000000 AND 80000000 +-cp 7f800000 AND 80000000 +-cp 7fffffff AND 80000000 +-cp 7fc00000 => 80000000 ff800000 ffffffff ffc00000 +#6: xvcpsgnsp 00000000 +-cp ff800000 AND 00000000 +-cp c683287b AND 00000000 +-cp 80000000 AND 00000000 +-cp 00000000 => 7f800000 4683287b 00000000 00000000 +#7: xvcpsgnsp 00000000 +-cp 00000000 AND 00000000 +-cp 7f800000 AND 00000000 +-cp 7fffffff AND 00000000 +-cp 7fc00000 => 00000000 7f800000 7fffffff 7fc00000 +#8: xvcpsgnsp 00000000 +-cp ff800000 AND 00000000 +-cp c683287b AND 00000000 +-cp 80000000 AND 00000000 +-cp 00000000 => 7f800000 4683287b 00000000 00000000 +#9: xvcpsgnsp 00000000 +-cp 42780000 AND 00000000 +-cp 7f800000 AND 00000000 +-cp 7fffffff AND 00000000 +-cp 7fc00000 => 42780000 7f800000 7fffffff 7fc00000 +#10: xvcpsgnsp 7f800000 +-cp ff800000 AND 7f800000 +-cp c683287b AND 7f800000 +-cp 80000000 AND 7f800000 +-cp 00000000 => 7f800000 4683287b 00000000 00000000 +#11: xvcpsgnsp 7f800000 +-cp 00000000 AND 7f800000 +-cp 7f800000 AND 7f800000 +-cp 7fffffff AND 7f800000 +-cp 7fc00000 => 00000000 7f800000 7fffffff 7fc00000 +#12: xvcpsgnsp ffffffff +-cp ff800000 AND ffffffff +-cp c683287b AND ffc00000 +-cp 80000000 AND ffc00000 +-cp 00000000 => ff800000 c683287b 80000000 80000000 +#13: xvcpsgnsp ffffffff +-cp 00000000 AND ffffffff +-cp 7f800000 AND ffffffff +-cp 7fffffff AND ffffffff +-cp 7fc00000 => 80000000 ff800000 ffffffff ffc00000 +#14: xvcpsgnsp ffc00000 +-cp ff800000 AND ffc00000 +-cp c683287b AND ffc00000 +-cp 80000000 AND 49192c2d +-cp 49c1288d => ff800000 c683287b 80000000 49c1288d +#15: xvcpsgnsp 49192c2d +-cp 49c1288d AND 7fffffff +-cp 7fc00000 AND 7fc00000 +-cp 7fc00000 AND 7fc00000 +-cp ffc00000 => 49c1288d 7fc00000 7fc00000 7fc00000 + + +Test xxsel instruction +xxsel a12bc37de56f9708,fedc432124681235,ffffffff01020304 => fedc4321e46d960c +xxsel 3894c1fddeadbeef,f1e2d3c4e0057708,128934bd00000000 => 3894d1c4deadbeef + +Test xxspltw instruction +xxspltw 0xfedc432124681235f1e2d3c4e0057708 0=> 0xfedc4321fedc4321fedc4321fedc4321 +xxspltw 0xfedc432124681235f1e2d3c4e0057708 1=> 0x24681235246812352468123524681235 +xxspltw 0xfedc432124681235f1e2d3c4e0057708 2=> 0xf1e2d3c4f1e2d3c4f1e2d3c4f1e2d3c4 +xxspltw 0xfedc432124681235f1e2d3c4e0057708 3=> 0xe0057708e0057708e0057708e0057708 + +Test div extensions +#0: divweu: 0x00000000 / 0x00000002 = 0x00000000; CR=0; XER=0 +#1: divweu: 0x00000002 / 0x00000000 = 0x00000000; CR=0; XER=0 +#2: divweu: 0x7abc1234 / 0xf0000000 = 0x82eabe15; CR=0; XER=0 +#3: divweu: 0xfabc1234 / 0x00000005 = 0x00000000; CR=0; XER=0 +#4: divweu: 0x0000004d / 0x00000042 = 0x00000000; CR=0; XER=0 +#5: divweu: 0x00000005 / 0xfabc1234 = 0x00000005; CR=0; XER=0 + +#0: divweu.: 0x00000000 / 0x00000002 = 0x00000000; CR=2; XER=0 +#1: divweu.: 0x00000002 / 0x00000000 = 0x00000000; CR=2; XER=0 +#2: divweu.: 0x7abc1234 / 0xf0000000 = 0x82eabe15; CR=8; XER=0 +#3: divweu.: 0xfabc1234 / 0x00000005 = 0x00000000; CR=2; XER=0 +#4: divweu.: 0x0000004d / 0x00000042 = 0x00000000; CR=2; XER=0 +#5: divweu.: 0x00000005 / 0xfabc1234 = 0x00000005; CR=4; XER=0 + + +#0: divweuo: 0x00000000 / 0x00000002 = 0x00000000; CR=0; XER=0 +#1: divweuo: 0x00000002 / 0x00000000 = 0x00000000; CR=0; XER=c0000000 +#2: divweuo: 0x7abc1234 / 0xf0000000 = 0x82eabe15; CR=0; XER=0 +#3: divweuo: 0xfabc1234 / 0x00000005 = 0x00000000; CR=0; XER=c0000000 +#4: divweuo: 0x0000004d / 0x00000042 = 0x00000000; CR=0; XER=c0000000 +#5: divweuo: 0x00000005 / 0xfabc1234 = 0x00000005; CR=0; XER=0 + +#0: divweuo.: 0x00000000 / 0x00000002 = 0x00000000; CR=2; XER=0 +#1: divweuo.: 0x00000002 / 0x00000000 = 0x00000000; CR=3; XER=c0000000 +#2: divweuo.: 0x7abc1234 / 0xf0000000 = 0x82eabe15; CR=8; XER=0 +#3: divweuo.: 0xfabc1234 / 0x00000005 = 0x00000000; CR=3; XER=c0000000 +#4: divweuo.: 0x0000004d / 0x00000042 = 0x00000000; CR=3; XER=c0000000 +#5: divweuo.: 0x00000005 / 0xfabc1234 = 0x00000005; CR=4; XER=0 + + +Test floating point convert [word | doubleword] unsigned, with round toward zero +#0: fctiduz: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctiduz: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctiduz: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctiduz: 0x7fe800000000051b (1.348270e+308) ==> 0xffffffffffffffff +#4: fctiduz: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctiduz: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctiduz: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctiduz: 0x7ff0000000000000 (inf) ==> 0xffffffffffffffff +#8: fctiduz: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctiduz: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctiduz: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctiduz: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctiduz: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctiduz: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctiduz: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctiduz: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c2 +#16: fctiduz: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182511 + +#0: fctiduz.: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctiduz.: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctiduz.: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctiduz.: 0x7fe800000000051b (1.348270e+308) ==> 0xffffffffffffffff +#4: fctiduz.: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctiduz.: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctiduz.: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctiduz.: 0x7ff0000000000000 (inf) ==> 0xffffffffffffffff +#8: fctiduz.: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctiduz.: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctiduz.: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctiduz.: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctiduz.: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctiduz.: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctiduz.: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctiduz.: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c2 +#16: fctiduz.: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182511 + + +#0: fctidu: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctidu: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctidu: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctidu: 0x7fe800000000051b (1.348270e+308) ==> 0xffffffffffffffff +#4: fctidu: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctidu: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctidu: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctidu: 0x7ff0000000000000 (inf) ==> 0xffffffffffffffff +#8: fctidu: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctidu: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctidu: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctidu: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctidu: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctidu: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctidu: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctidu: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c3 +#16: fctidu: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182512 + +#0: fctidu.: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctidu.: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctidu.: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctidu.: 0x7fe800000000051b (1.348270e+308) ==> 0xffffffffffffffff +#4: fctidu.: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctidu.: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctidu.: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctidu.: 0x7ff0000000000000 (inf) ==> 0xffffffffffffffff +#8: fctidu.: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctidu.: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctidu.: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctidu.: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctidu.: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctidu.: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctidu.: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctidu.: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c3 +#16: fctidu.: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182512 + + +#0: fctiwuz: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctiwuz: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctiwuz: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctiwuz: 0x7fe800000000051b (1.348270e+308) ==> 0x00000000ffffffff +#4: fctiwuz: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctiwuz: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctiwuz: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctiwuz: 0x7ff0000000000000 (inf) ==> 0x00000000ffffffff +#8: fctiwuz: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctiwuz: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctiwuz: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctiwuz: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctiwuz: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctiwuz: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctiwuz: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctiwuz: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c2 +#16: fctiwuz: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182511 + +#0: fctiwuz.: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctiwuz.: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctiwuz.: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctiwuz.: 0x7fe800000000051b (1.348270e+308) ==> 0x00000000ffffffff +#4: fctiwuz.: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctiwuz.: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctiwuz.: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctiwuz.: 0x7ff0000000000000 (inf) ==> 0x00000000ffffffff +#8: fctiwuz.: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctiwuz.: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctiwuz.: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctiwuz.: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctiwuz.: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctiwuz.: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctiwuz.: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctiwuz.: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c2 +#16: fctiwuz.: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182511 + + +#0: fctiwu: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctiwu: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctiwu: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctiwu: 0x7fe800000000051b (1.348270e+308) ==> 0x00000000ffffffff +#4: fctiwu: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctiwu: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctiwu: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctiwu: 0x7ff0000000000000 (inf) ==> 0x00000000ffffffff +#8: fctiwu: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctiwu: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctiwu: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctiwu: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctiwu: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctiwu: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctiwu: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctiwu: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c3 +#16: fctiwu: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182512 + +#0: fctiwu.: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctiwu.: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctiwu.: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctiwu.: 0x7fe800000000051b (1.348270e+308) ==> 0x00000000ffffffff +#4: fctiwu.: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctiwu.: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctiwu.: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctiwu.: 0x7ff0000000000000 (inf) ==> 0x00000000ffffffff +#8: fctiwu.: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctiwu.: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctiwu.: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctiwu.: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctiwu.: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctiwu.: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctiwu.: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctiwu.: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c3 +#16: fctiwu.: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182512 + + +Test floating point arithmetic instructions -- with a{d|s}p or m{d|s}p +#0: xsnmsubadp !*-(fff0000000000000,fff0000000000000,3fd8000000000000) = 7ff8000000000000 +#1: xsnmsubadp !*-(c0d0650f5a07b353,fff0000000000000,404f000000000000) = 7ff0000000000000 +#2: xsnmsubadp !*-(41382511a2000000,41232585a9900000,0018000000b77501) = 41382511a2000000 +#3: xsnmsubadp !*-(0000000000000000,fff0000000000000,7fe800000000051b) = 7ff0000000000000 +#4: xsnmsubadp !*-(0123214569900000,fff0000000000000,0123214569900000) = 7ff0000000000000 +#5: xsnmsubadp !*-(7ff0000000000000,fff0000000000000,0000000000000000) = 7ff8000000000000 +#6: xsnmsubadp !*-(7ff7ffffffffffff,fff0000000000000,8000000000000000) = 7fffffffffffffff +#7: xsnmsubadp !*-(7ff8000000000000,fff0000000000000,7ff0000000000000) = 7ff8000000000000 +#8: xsnmsubadp !*-(fff0000000000000,c0d0650f5a07b353,fff0000000000000) = fff0000000000000 +#9: xsnmsubadp !*-(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) = 7fffffffffffffff +#10: xsnmsubadp !*-(8000000000000000,c0d0650f5a07b353,fff7ffffffffffff) = ffffffffffffffff +#11: xsnmsubadp !*-(0000000000000000,c0d0650f5a07b353,7ff8000000000000) = 7ff8000000000000 +#12: xsnmsubadp !*-(0123214569900000,c0d0650f5a07b353,fff8000000000000) = fff8000000000000 +#13: xsnmsubadp !*-(7ff0000000000000,c0d0650f5a07b353,8008340000078000) = 7ff0000000000000 +#14: xsnmsubadp !*-(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) = 7fffffffffffffff +#15: xsnmsubadp !*-(7ff8000000000000,c0d0650f5a07b353,41232585a9900000) = 7ff8000000000000 +#16: xsnmsubadp !*-(fff0000000000000,8000000000000000,3fd8000000000000) = fff0000000000000 +#17: xsnmsubadp !*-(c0d0650f5a07b353,8000000000000000,404f000000000000) = c0d0650f5a07b353 +#18: xsnmsubadp !*-(8000000000000000,8000000000000000,0018000000b77501) = 8000000000000000 +#19: xsnmsubadp !*-(0000000000000000,8000000000000000,7fe800000000051b) = 0000000000000000 +#20: xsnmsubadp !*-(0123214569900000,8000000000000000,0123214569900000) = 0123214569900000 +#21: xsnmsubadp !*-(7ff0000000000000,8000000000000000,0000000000000000) = 7ff0000000000000 +#22: xsnmsubadp !*-(7ff7ffffffffffff,8000000000000000,8000000000000000) = 7fffffffffffffff +#23: xsnmsubadp !*-(7ff8000000000000,8000000000000000,7ff0000000000000) = 7ff8000000000000 +#24: xsnmsubadp !*-(fff0000000000000,0000000000000000,fff0000000000000) = 7ff8000000000000 +#25: xsnmsubadp !*-(c0d0650f5a07b353,0000000000000000,7ff7ffffffffffff) = 7fffffffffffffff +#26: xsnmsubadp !*-(8000000000000000,0000000000000000,fff7ffffffffffff) = ffffffffffffffff +#27: xsnmsubadp !*-(0000000000000000,0000000000000000,7ff8000000000000) = 7ff8000000000000 +#28: xsnmsubadp !*-(0123214569900000,0000000000000000,fff8000000000000) = fff8000000000000 +#29: xsnmsubadp !*-(7ff0000000000000,0000000000000000,8008340000078000) = 7ff0000000000000 +#30: xsnmsubadp !*-(7ff7ffffffffffff,0000000000000000,c0d0650f5a07b353) = 7fffffffffffffff +#31: xsnmsubadp !*-(7ff8000000000000,0000000000000000,41232585a9900000) = 7ff8000000000000 +#32: xsnmsubadp !*-(fff0000000000000,0123214569900000,3fd8000000000000) = fff0000000000000 +#33: xsnmsubadp !*-(c0d0650f5a07b353,0123214569900000,404f000000000000) = c0d0650f5a07b353 +#34: xsnmsubadp !*-(8000000000000000,0123214569900000,0018000000b77501) = 8000000000000000 +#35: xsnmsubadp !*-(0000000000000000,0123214569900000,7fe800000000051b) = c11cb1e81e58061b +#36: xsnmsubadp !*-(404f000000000000,0123214569900000,0123214569900000) = 404f000000000000 +#37: xsnmsubadp !*-(7ff0000000000000,0123214569900000,0000000000000000) = 7ff0000000000000 +#38: xsnmsubadp !*-(7ff7ffffffffffff,0123214569900000,8000000000000000) = 7fffffffffffffff +#39: xsnmsubadp !*-(7ff8000000000000,0123214569900000,7ff0000000000000) = 7ff8000000000000 +#40: xsnmsubadp !*-(fff0000000000000,7ff0000000000000,fff0000000000000) = 7ff8000000000000 +#41: xsnmsubadp !*-(c0d0650f5a07b353,7ff0000000000000,7ff7ffffffffffff) = 7fffffffffffffff +#42: xsnmsubadp !*-(8000000000000000,7ff0000000000000,fff7ffffffffffff) = ffffffffffffffff +#43: xsnmsubadp !*-(0000000000000000,7ff0000000000000,7ff8000000000000) = 7ff8000000000000 +#44: xsnmsubadp !*-(0123214569900000,7ff0000000000000,fff8000000000000) = fff8000000000000 +#45: xsnmsubadp !*-(7ff0000000000000,7ff0000000000000,8008340000078000) = 7ff0000000000000 +#46: xsnmsubadp !*-(7ff7ffffffffffff,7ff0000000000000,c0d0650f5a07b353) = 7fffffffffffffff +#47: xsnmsubadp !*-(7ff8000000000000,7ff0000000000000,41232585a9900000) = 7ff8000000000000 +#48: xsnmsubadp !*-(fff0000000000000,fff7ffffffffffff,3fd8000000000000) = ffffffffffffffff +#49: xsnmsubadp !*-(c0d0650f5a07b353,fff7ffffffffffff,404f000000000000) = ffffffffffffffff +#50: xsnmsubadp !*-(8000000000000000,fff8000000000000,0018000000b77501) = fff8000000000000 +#51: xsnmsubadp !*-(0000000000000000,fff8000000000000,7fe800000000051b) = fff8000000000000 +#52: xsnmsubadp !*-(0123214569900000,fff7ffffffffffff,0123214569900000) = ffffffffffffffff +#53: xsnmsubadp !*-(7ff0000000000000,fff7ffffffffffff,0000000000000000) = ffffffffffffffff +#54: xsnmsubadp !*-(7ff7ffffffffffff,fff7ffffffffffff,8000000000000000) = ffffffffffffffff +#55: xsnmsubadp !*-(7ff8000000000000,fff7ffffffffffff,7ff0000000000000) = ffffffffffffffff +#56: xsnmsubadp !*-(fff0000000000000,fff8000000000000,fff0000000000000) = fff8000000000000 +#57: xsnmsubadp !*-(c0d0650f5a07b353,fff8000000000000,7ff7ffffffffffff) = fff8000000000000 +#58: xsnmsubadp !*-(8000000000000000,fff8000000000000,fff7ffffffffffff) = fff8000000000000 +#59: xsnmsubadp !*-(41382511a2000000,41232585a9900000,7ff8000000000000) = 7ff8000000000000 +#60: xsnmsubadp !*-(41382511a2000000,41232585a9900000,fff8000000000000) = fff8000000000000 +#61: xsnmsubadp !*-(7ff8000000000000,7ff7ffffffffffff,8008340000078000) = 7fffffffffffffff +#62: xsnmsubadp !*-(7ff8000000000000,7ff8000000000000,c0d0650f5a07b353) = 7ff8000000000000 +#63: xsnmsubadp !*-(fff8000000000000,7ff8000000000000,41232585a9900000) = 7ff8000000000000 + +#0: xsnmsubmdp !*-(3fd8000000000000,fff0000000000000,fff0000000000000) = 7ff8000000000000 +#1: xsnmsubmdp !*-(404f000000000000,fff0000000000000,c0d0650f5a07b353) = 7ff0000000000000 +#2: xsnmsubmdp !*-(0018000000b77501,41232585a9900000,41382511a2000000) = 41382511a2000000 +#3: xsnmsubmdp !*-(7fe800000000051b,fff0000000000000,0000000000000000) = 7ff0000000000000 +#4: xsnmsubmdp !*-(0123214569900000,fff0000000000000,0123214569900000) = 7ff0000000000000 +#5: xsnmsubmdp !*-(0000000000000000,fff0000000000000,7ff0000000000000) = 7ff8000000000000 +#6: xsnmsubmdp !*-(8000000000000000,fff0000000000000,7ff7ffffffffffff) = 7fffffffffffffff +#7: xsnmsubmdp !*-(7ff0000000000000,fff0000000000000,7ff8000000000000) = 7ff8000000000000 +#8: xsnmsubmdp !*-(fff0000000000000,c0d0650f5a07b353,fff0000000000000) = fff0000000000000 +#9: xsnmsubmdp !*-(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) = 7fffffffffffffff +#10: xsnmsubmdp !*-(fff7ffffffffffff,c0d0650f5a07b353,8000000000000000) = ffffffffffffffff +#11: xsnmsubmdp !*-(7ff8000000000000,c0d0650f5a07b353,0000000000000000) = 7ff8000000000000 +#12: xsnmsubmdp !*-(fff8000000000000,c0d0650f5a07b353,0123214569900000) = fff8000000000000 +#13: xsnmsubmdp !*-(8008340000078000,c0d0650f5a07b353,7ff0000000000000) = 7ff0000000000000 +#14: xsnmsubmdp !*-(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) = 7fffffffffffffff +#15: xsnmsubmdp !*-(41232585a9900000,c0d0650f5a07b353,7ff8000000000000) = 7ff8000000000000 +#16: xsnmsubmdp !*-(3fd8000000000000,8000000000000000,fff0000000000000) = fff0000000000000 +#17: xsnmsubmdp !*-(404f000000000000,8000000000000000,c0d0650f5a07b353) = c0d0650f5a07b353 +#18: xsnmsubmdp !*-(0018000000b77501,8000000000000000,8000000000000000) = 8000000000000000 +#19: xsnmsubmdp !*-(7fe800000000051b,8000000000000000,0000000000000000) = 0000000000000000 +#20: xsnmsubmdp !*-(0123214569900000,8000000000000000,0123214569900000) = 0123214569900000 +#21: xsnmsubmdp !*-(0000000000000000,8000000000000000,7ff0000000000000) = 7ff0000000000000 +#22: xsnmsubmdp !*-(8000000000000000,8000000000000000,7ff7ffffffffffff) = 7fffffffffffffff +#23: xsnmsubmdp !*-(7ff0000000000000,8000000000000000,7ff8000000000000) = 7ff8000000000000 +#24: xsnmsubmdp !*-(fff0000000000000,0000000000000000,fff0000000000000) = 7ff8000000000000 +#25: xsnmsubmdp !*-(7ff7ffffffffffff,0000000000000000,c0d0650f5a07b353) = 7fffffffffffffff +#26: xsnmsubmdp !*-(fff7ffffffffffff,0000000000000000,8000000000000000) = ffffffffffffffff +#27: xsnmsubmdp !*-(7ff8000000000000,0000000000000000,0000000000000000) = 7ff8000000000000 +#28: xsnmsubmdp !*-(fff8000000000000,0000000000000000,0123214569900000) = fff8000000000000 +#29: xsnmsubmdp !*-(8008340000078000,0000000000000000,7ff0000000000000) = 7ff0000000000000 +#30: xsnmsubmdp !*-(c0d0650f5a07b353,0000000000000000,7ff7ffffffffffff) = 7fffffffffffffff +#31: xsnmsubmdp !*-(41232585a9900000,0000000000000000,7ff8000000000000) = 7ff8000000000000 +#32: xsnmsubmdp !*-(3fd8000000000000,0123214569900000,fff0000000000000) = fff0000000000000 +#33: xsnmsubmdp !*-(404f000000000000,0123214569900000,c0d0650f5a07b353) = c0d0650f5a07b353 +#34: xsnmsubmdp !*-(0018000000b77501,0123214569900000,8000000000000000) = 8000000000000000 +#35: xsnmsubmdp !*-(7fe800000000051b,0123214569900000,0000000000000000) = c11cb1e81e58061b +#36: xsnmsubmdp !*-(0123214569900000,0123214569900000,404f000000000000) = 404f000000000000 +#37: xsnmsubmdp !*-(0000000000000000,0123214569900000,7ff0000000000000) = 7ff0000000000000 +#38: xsnmsubmdp !*-(8000000000000000,0123214569900000,7ff7ffffffffffff) = 7fffffffffffffff +#39: xsnmsubmdp !*-(7ff0000000000000,0123214569900000,7ff8000000000000) = 7ff8000000000000 +#40: xsnmsubmdp !*-(fff0000000000000,7ff0000000000000,fff0000000000000) = 7ff8000000000000 +#41: xsnmsubmdp !*-(7ff7ffffffffffff,7ff0000000000000,c0d0650f5a07b353) = 7fffffffffffffff +#42: xsnmsubmdp !*-(fff7ffffffffffff,7ff0000000000000,8000000000000000) = ffffffffffffffff +#43: xsnmsubmdp !*-(7ff8000000000000,7ff0000000000000,0000000000000000) = 7ff8000000000000 +#44: xsnmsubmdp !*-(fff8000000000000,7ff0000000000000,0123214569900000) = fff8000000000000 +#45: xsnmsubmdp !*-(8008340000078000,7ff0000000000000,7ff0000000000000) = 7ff0000000000000 +#46: xsnmsubmdp !*-(c0d0650f5a07b353,7ff0000000000000,7ff7ffffffffffff) = 7fffffffffffffff +#47: xsnmsubmdp !*-(41232585a9900000,7ff0000000000000,7ff8000000000000) = 7ff8000000000000 +#48: xsnmsubmdp !*-(3fd8000000000000,fff7ffffffffffff,fff0000000000000) = ffffffffffffffff +#49: xsnmsubmdp !*-(404f000000000000,fff7ffffffffffff,c0d0650f5a07b353) = ffffffffffffffff +#50: xsnmsubmdp !*-(0018000000b77501,fff8000000000000,8000000000000000) = fff8000000000000 +#51: xsnmsubmdp !*-(7fe800000000051b,fff8000000000000,0000000000000000) = fff8000000000000 +#52: xsnmsubmdp !*-(0123214569900000,fff7ffffffffffff,0123214569900000) = ffffffffffffffff +#53: xsnmsubmdp !*-(0000000000000000,fff7ffffffffffff,7ff0000000000000) = ffffffffffffffff +#54: xsnmsubmdp !*-(8000000000000000,fff7ffffffffffff,7ff7ffffffffffff) = ffffffffffffffff +#55: xsnmsubmdp !*-(7ff0000000000000,fff7ffffffffffff,7ff8000000000000) = ffffffffffffffff +#56: xsnmsubmdp !*-(fff0000000000000,fff8000000000000,fff0000000000000) = fff8000000000000 +#57: xsnmsubmdp !*-(7ff7ffffffffffff,fff8000000000000,c0d0650f5a07b353) = fff8000000000000 +#58: xsnmsubmdp !*-(fff7ffffffffffff,fff8000000000000,8000000000000000) = fff8000000000000 +#59: xsnmsubmdp !*-(7ff8000000000000,41232585a9900000,41382511a2000000) = 7ff8000000000000 +#60: xsnmsubmdp !*-(fff8000000000000,41232585a9900000,41382511a2000000) = fff8000000000000 +#61: xsnmsubmdp !*-(8008340000078000,7ff7ffffffffffff,7ff8000000000000) = 7fffffffffffffff +#62: xsnmsubmdp !*-(c0d0650f5a07b353,7ff8000000000000,7ff8000000000000) = 7ff8000000000000 +#63: xsnmsubmdp !*-(41232585a9900000,7ff8000000000000,fff8000000000000) = 7ff8000000000000 + +#0: xvmaddadp *+(fff0000000000000,fff0000000000000,3fd8000000000000) AND *+(c0d0650f5a07b353,fff0000000000000,404f000000000000) => fff0000000000000 fff0000000000000 +#1: xvmaddadp *+(41382511a2000000,41232585a9900000,0018000000b77501) AND *+(0000000000000000,fff0000000000000,7fe800000000051b) => 41382511a2000000 fff0000000000000 +#2: xvmaddadp *+(0123214569900000,fff0000000000000,0123214569900000) AND *+(7ff0000000000000,fff0000000000000,0000000000000000) => fff0000000000000 7ff8000000000000 +#3: xvmaddadp *+(7ff7ffffffffffff,fff0000000000000,8000000000000000) AND *+(7ff8000000000000,fff0000000000000,7ff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvmaddadp *+(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND *+(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) => 7ff8000000000000 7fffffffffffffff +#5: xvmaddadp *+(8000000000000000,c0d0650f5a07b353,fff7ffffffffffff) AND *+(0000000000000000,c0d0650f5a07b353,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvmaddadp *+(0123214569900000,c0d0650f5a07b353,fff8000000000000) AND *+(7ff0000000000000,c0d0650f5a07b353,8008340000078000) => fff8000000000000 7ff0000000000000 +#7: xvmaddadp *+(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) AND *+(7ff8000000000000,c0d0650f5a07b353,41232585a9900000) => 7fffffffffffffff 7ff8000000000000 +#8: xvmaddadp *+(fff0000000000000,8000000000000000,404f000000000000) AND *+(c0d0650f5a07b353,8000000000000000,0018000000b77501) => fff0000000000000 c0d0650f5a07b353 +#9: xvmaddadp *+(8000000000000000,8000000000000000,7fe800000000051b) AND *+(0000000000000000,8000000000000000,0123214569900000) => 8000000000000000 0000000000000000 +#10: xvmaddadp *+(0123214569900000,8000000000000000,0000000000000000) AND *+(7ff0000000000000,8000000000000000,8000000000000000) => 0123214569900000 7ff0000000000000 +#11: xvmaddadp *+(7ff7ffffffffffff,8000000000000000,7ff0000000000000) AND *+(7ff8000000000000,8000000000000000,fff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvmaddadp *+(fff0000000000000,0000000000000000,7ff7ffffffffffff) AND *+(c0d0650f5a07b353,0000000000000000,fff7ffffffffffff) => 7fffffffffffffff ffffffffffffffff +#13: xvmaddadp *+(8000000000000000,0000000000000000,7ff8000000000000) AND *+(0000000000000000,0000000000000000,fff8000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvmaddadp *+(0123214569900000,0000000000000000,8008340000078000) AND *+(7ff0000000000000,0000000000000000,c0d0650f5a07b353) => 0123214569900000 7ff0000000000000 +#15: xvmaddadp *+(7ff7ffffffffffff,0000000000000000,3fd8000000000000) AND *+(7ff8000000000000,0000000000000000,404f000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvmaddadp *+(fff0000000000000,0123214569900000,0018000000b77501) AND *+(c0d0650f5a07b353,0123214569900000,7fe800000000051b) => fff0000000000000 411bab9728b78ae5 +#17: xvmaddadp *+(8000000000000000,0123214569900000,0123214569900000) AND *+(0000000000000000,0123214569900000,0000000000000000) => 0000000000000000 0000000000000000 +#18: xvmaddadp *+(404f000000000000,0123214569900000,8000000000000000) AND *+(7ff0000000000000,0123214569900000,7ff0000000000000) => 404f000000000000 7ff0000000000000 +#19: xvmaddadp *+(7ff7ffffffffffff,0123214569900000,fff0000000000000) AND *+(7ff8000000000000,0123214569900000,7ff7ffffffffffff) => 7fffffffffffffff 7ff8000000000000 +#20: xvmaddadp *+(fff0000000000000,7ff0000000000000,fff7ffffffffffff) AND *+(c0d0650f5a07b353,7ff0000000000000,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#21: xvmaddadp *+(8000000000000000,7ff0000000000000,fff8000000000000) AND *+(0000000000000000,7ff0000000000000,8008340000078000) => fff8000000000000 fff0000000000000 +#22: xvmaddadp *+(0123214569900000,7ff0000000000000,c0d0650f5a07b353) AND *+(7ff0000000000000,7ff0000000000000,41232585a9900000) => fff0000000000000 7ff0000000000000 +#23: xvmaddadp *+(7ff7ffffffffffff,7ff0000000000000,404f000000000000) AND *+(7ff8000000000000,7ff0000000000000,0018000000b77501) => 7fffffffffffffff 7ff8000000000000 +#24: xvmaddadp *+(fff0000000000000,fff7ffffffffffff,7fe800000000051b) AND *+(c0d0650f5a07b353,fff7ffffffffffff,0123214569900000) => ffffffffffffffff ffffffffffffffff +#25: xvmaddadp *+(8000000000000000,fff8000000000000,0000000000000000) AND *+(0000000000000000,fff8000000000000,8000000000000000) => fff8000000000000 fff8000000000000 +#26: xvmaddadp *+(0123214569900000,fff7ffffffffffff,7ff0000000000000) AND *+(7ff0000000000000,fff7ffffffffffff,fff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvmaddadp *+(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND *+(7ff8000000000000,fff7ffffffffffff,fff7ffffffffffff) => ffffffffffffffff ffffffffffffffff +#28: xvmaddadp *+(fff0000000000000,fff8000000000000,7ff8000000000000) AND *+(c0d0650f5a07b353,fff8000000000000,fff8000000000000) => fff8000000000000 fff8000000000000 +#29: xvmaddadp *+(8000000000000000,fff8000000000000,8008340000078000) AND *+(41382511a2000000,41232585a9900000,c0d0650f5a07b353) => fff8000000000000 c2039db3bbaae2d2 +#30: xvmaddadp *+(41382511a2000000,41232585a9900000,3fd8000000000000) AND *+(7ff8000000000000,7ff7ffffffffffff,404f000000000000) => 413bbc1ab1cb0000 7fffffffffffffff +#31: xvmaddadp *+(7ff8000000000000,7ff8000000000000,0018000000b77501) AND *+(fff8000000000000,7ff8000000000000,7fe800000000051b) => 7ff8000000000000 7ff8000000000000 + +#0: xvmaddmdp *+(3fd8000000000000,fff0000000000000,fff0000000000000) AND *+(404f000000000000,fff0000000000000,c0d0650f5a07b353) => fff0000000000000 fff0000000000000 +#1: xvmaddmdp *+(0018000000b77501,41232585a9900000,41382511a2000000) AND *+(7fe800000000051b,fff0000000000000,0000000000000000) => 41382511a2000000 fff0000000000000 +#2: xvmaddmdp *+(0123214569900000,fff0000000000000,0123214569900000) AND *+(0000000000000000,fff0000000000000,7ff0000000000000) => fff0000000000000 7ff8000000000000 +#3: xvmaddmdp *+(8000000000000000,fff0000000000000,7ff7ffffffffffff) AND *+(7ff0000000000000,fff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvmaddmdp *+(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND *+(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) => 7ff8000000000000 7fffffffffffffff +#5: xvmaddmdp *+(fff7ffffffffffff,c0d0650f5a07b353,8000000000000000) AND *+(7ff8000000000000,c0d0650f5a07b353,0000000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvmaddmdp *+(fff8000000000000,c0d0650f5a07b353,0123214569900000) AND *+(8008340000078000,c0d0650f5a07b353,7ff0000000000000) => fff8000000000000 7ff0000000000000 +#7: xvmaddmdp *+(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) AND *+(41232585a9900000,c0d0650f5a07b353,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#8: xvmaddmdp *+(404f000000000000,8000000000000000,fff0000000000000) AND *+(0018000000b77501,8000000000000000,c0d0650f5a07b353) => fff0000000000000 c0d0650f5a07b353 +#9: xvmaddmdp *+(7fe800000000051b,8000000000000000,8000000000000000) AND *+(0123214569900000,8000000000000000,0000000000000000) => 8000000000000000 0000000000000000 +#10: xvmaddmdp *+(0000000000000000,8000000000000000,0123214569900000) AND *+(8000000000000000,8000000000000000,7ff0000000000000) => 0123214569900000 7ff0000000000000 +#11: xvmaddmdp *+(7ff0000000000000,8000000000000000,7ff7ffffffffffff) AND *+(fff0000000000000,8000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvmaddmdp *+(7ff7ffffffffffff,0000000000000000,fff0000000000000) AND *+(fff7ffffffffffff,0000000000000000,c0d0650f5a07b353) => 7fffffffffffffff ffffffffffffffff +#13: xvmaddmdp *+(7ff8000000000000,0000000000000000,8000000000000000) AND *+(fff8000000000000,0000000000000000,0000000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvmaddmdp *+(8008340000078000,0000000000000000,0123214569900000) AND *+(c0d0650f5a07b353,0000000000000000,7ff0000000000000) => 0123214569900000 7ff0000000000000 +#15: xvmaddmdp *+(3fd8000000000000,0000000000000000,7ff7ffffffffffff) AND *+(404f000000000000,0000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvmaddmdp *+(0018000000b77501,0123214569900000,fff0000000000000) AND *+(7fe800000000051b,0123214569900000,c0d0650f5a07b353) => fff0000000000000 411bab9728b78ae5 +#17: xvmaddmdp *+(0123214569900000,0123214569900000,8000000000000000) AND *+(0000000000000000,0123214569900000,0000000000000000) => 0000000000000000 0000000000000000 +#18: xvmaddmdp *+(8000000000000000,0123214569900000,404f000000000000) AND *+(7ff0000000000000,0123214569900000,7ff0000000000000) => 404f000000000000 7ff0000000000000 +#19: xvmaddmdp *+(fff0000000000000,0123214569900000,7ff7ffffffffffff) AND *+(7ff7ffffffffffff,0123214569900000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#20: xvmaddmdp *+(fff7ffffffffffff,7ff0000000000000,fff0000000000000) AND *+(7ff8000000000000,7ff0000000000000,c0d0650f5a07b353) => ffffffffffffffff 7ff8000000000000 +#21: xvmaddmdp *+(fff8000000000000,7ff0000000000000,8000000000000000) AND *+(8008340000078000,7ff0000000000000,0000000000000000) => fff8000000000000 fff0000000000000 +#22: xvmaddmdp *+(c0d0650f5a07b353,7ff0000000000000,0123214569900000) AND *+(41232585a9900000,7ff0000000000000,7ff0000000000000) => fff0000000000000 7ff0000000000000 +#23: xvmaddmdp *+(404f000000000000,7ff0000000000000,7ff7ffffffffffff) AND *+(0018000000b77501,7ff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#24: xvmaddmdp *+(7fe800000000051b,fff7ffffffffffff,fff0000000000000) AND *+(0123214569900000,fff7ffffffffffff,c0d0650f5a07b353) => ffffffffffffffff ffffffffffffffff +#25: xvmaddmdp *+(0000000000000000,fff8000000000000,8000000000000000) AND *+(8000000000000000,fff8000000000000,0000000000000000) => fff8000000000000 fff8000000000000 +#26: xvmaddmdp *+(7ff0000000000000,fff7ffffffffffff,0123214569900000) AND *+(fff0000000000000,fff7ffffffffffff,7ff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvmaddmdp *+(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND *+(fff7ffffffffffff,fff7ffffffffffff,7ff8000000000000) => ffffffffffffffff ffffffffffffffff +#28: xvmaddmdp *+(7ff8000000000000,fff8000000000000,fff0000000000000) AND *+(fff8000000000000,fff8000000000000,c0d0650f5a07b353) => fff8000000000000 fff8000000000000 +#29: xvmaddmdp *+(8008340000078000,fff8000000000000,8000000000000000) AND *+(c0d0650f5a07b353,41232585a9900000,41382511a2000000) => fff8000000000000 c2039db3bbaae2d2 +#30: xvmaddmdp *+(3fd8000000000000,41232585a9900000,41382511a2000000) AND *+(404f000000000000,7ff7ffffffffffff,7ff8000000000000) => 413bbc1ab1cb0000 7fffffffffffffff +#31: xvmaddmdp *+(0018000000b77501,7ff8000000000000,7ff8000000000000) AND *+(7fe800000000051b,7ff8000000000000,fff8000000000000) => 7ff8000000000000 7ff8000000000000 + +#0: xvmaddasp *+(ff800000,ff800000,3ec00000) AND *+(c683287b,ff800000,42780000) AND *+(49c1288d,49192c2d,00000000) AND *+(00000000,ff800000,7f800000) => ff800000 ff800000 49c1288d ff800000 +#1: xvmaddasp *+(00000000,ff800000,00000000) AND *+(7f800000,ff800000,00000000) AND *+(7fffffff,ff800000,80000000) AND *+(7fc00000,ff800000,7f800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvmaddasp *+(ff800000,c683287b,ff800000) AND *+(c683287b,c683287b,7fffffff) AND *+(80000000,c683287b,ffffffff) AND *+(00000000,c683287b,7fc00000) => 7fc00000 7fffffff ffffffff 7fc00000 +#3: xvmaddasp *+(00000000,c683287b,ffc00000) AND *+(7f800000,c683287b,80000000) AND *+(7fffffff,c683287b,c683287b) AND *+(7fc00000,c683287b,49192c2d) => ffc00000 7f800000 7fffffff 7fc00000 +#4: xvmaddasp *+(ff800000,80000000,7f800000) AND *+(c683287b,80000000,00000000) AND *+(80000000,80000000,00000000) AND *+(00000000,80000000,80000000) => 7fc00000 c683287b 80000000 00000000 +#5: xvmaddasp *+(00000000,80000000,7f800000) AND *+(7f800000,80000000,ff800000) AND *+(7fffffff,80000000,7fffffff) AND *+(7fc00000,80000000,ffffffff) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvmaddasp *+(ff800000,00000000,7fc00000) AND *+(c683287b,00000000,ffc00000) AND *+(80000000,00000000,80000000) AND *+(00000000,00000000,c683287b) => 7fc00000 ffc00000 80000000 00000000 +#7: xvmaddasp *+(00000000,00000000,00000000) AND *+(7f800000,00000000,7f800000) AND *+(7fffffff,00000000,00000000) AND *+(7fc00000,00000000,00000000) => 00000000 7fc00000 7fffffff 7fc00000 +#8: xvmaddasp *+(ff800000,00000000,80000000) AND *+(c683287b,00000000,7f800000) AND *+(80000000,00000000,ff800000) AND *+(00000000,00000000,7fffffff) => ff800000 7fc00000 7fc00000 7fffffff +#9: xvmaddasp *+(42780000,00000000,ffffffff) AND *+(7f800000,00000000,7fc00000) AND *+(7fffffff,00000000,ffc00000) AND *+(7fc00000,00000000,80000000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvmaddasp *+(ff800000,7f800000,42780000) AND *+(c683287b,7f800000,00000000) AND *+(80000000,7f800000,7f800000) AND *+(00000000,7f800000,00000000) => 7fc00000 7fc00000 7f800000 7fc00000 +#11: xvmaddasp *+(00000000,7f800000,00000000) AND *+(7f800000,7f800000,80000000) AND *+(7fffffff,7f800000,7f800000) AND *+(7fc00000,7f800000,ff800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvmaddasp *+(ff800000,ffffffff,7fffffff) AND *+(c683287b,ffffffff,ffffffff) AND *+(80000000,ffc00000,7fc00000) AND *+(00000000,ffc00000,ffc00000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvmaddasp *+(00000000,ffffffff,3ec00000) AND *+(7f800000,ffffffff,42780000) AND *+(7fffffff,ffffffff,00000000) AND *+(7fc00000,ffffffff,7f800000) => ffffffff ffffffff ffffffff ffffffff +#14: xvmaddasp *+(ff800000,ffc00000,00000000) AND *+(c683287b,ffc00000,00000000) AND *+(80000000,ffc00000,80000000) AND *+(49c1288d,49192c2d,7f800000) => ffc00000 ffc00000 ffc00000 7f800000 +#15: xvmaddasp *+(49c1288d,49192c2d,ff800000) AND *+(7fc00000,7fffffff,7fffffff) AND *+(7fc00000,7fc00000,ffffffff) AND *+(ffc00000,7fc00000,7fc00000) => ff800000 7fffffff 7fc00000 7fc00000 + +#0: xvmaddmsp *+(3ec00000,ff800000,ff800000) AND *+(42780000,ff800000,c683287b) AND *+(00000000,49192c2d,49c1288d) AND *+(7f800000,ff800000,00000000) => ff800000 ff800000 49c1288d ff800000 +#1: xvmaddmsp *+(00000000,ff800000,00000000) AND *+(00000000,ff800000,7f800000) AND *+(80000000,ff800000,7fffffff) AND *+(7f800000,ff800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvmaddmsp *+(ff800000,c683287b,ff800000) AND *+(7fffffff,c683287b,c683287b) AND *+(ffffffff,c683287b,80000000) AND *+(7fc00000,c683287b,00000000) => 7fc00000 7fffffff ffffffff 7fc00000 +#3: xvmaddmsp *+(ffc00000,c683287b,00000000) AND *+(80000000,c683287b,7f800000) AND *+(c683287b,c683287b,7fffffff) AND *+(49192c2d,c683287b,7fc00000) => ffc00000 7f800000 7fffffff 7fc00000 +#4: xvmaddmsp *+(7f800000,80000000,ff800000) AND *+(00000000,80000000,c683287b) AND *+(00000000,80000000,80000000) AND *+(80000000,80000000,00000000) => 7fc00000 c683287b 80000000 00000000 +#5: xvmaddmsp *+(7f800000,80000000,00000000) AND *+(ff800000,80000000,7f800000) AND *+(7fffffff,80000000,7fffffff) AND *+(ffffffff,80000000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvmaddmsp *+(7fc00000,00000000,ff800000) AND *+(ffc00000,00000000,c683287b) AND *+(80000000,00000000,80000000) AND *+(c683287b,00000000,00000000) => 7fc00000 ffc00000 80000000 00000000 +#7: xvmaddmsp *+(00000000,00000000,00000000) AND *+(7f800000,00000000,7f800000) AND *+(00000000,00000000,7fffffff) AND *+(00000000,00000000,7fc00000) => 00000000 7fc00000 7fffffff 7fc00000 +#8: xvmaddmsp *+(80000000,00000000,ff800000) AND *+(7f800000,00000000,c683287b) AND *+(ff800000,00000000,80000000) AND *+(7fffffff,00000000,00000000) => ff800000 7fc00000 7fc00000 7fffffff +#9: xvmaddmsp *+(ffffffff,00000000,42780000) AND *+(7fc00000,00000000,7f800000) AND *+(ffc00000,00000000,7fffffff) AND *+(80000000,00000000,7fc00000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvmaddmsp *+(42780000,7f800000,ff800000) AND *+(00000000,7f800000,c683287b) AND *+(7f800000,7f800000,80000000) AND *+(00000000,7f800000,00000000) => 7fc00000 7fc00000 7f800000 7fc00000 +#11: xvmaddmsp *+(00000000,7f800000,00000000) AND *+(80000000,7f800000,7f800000) AND *+(7f800000,7f800000,7fffffff) AND *+(ff800000,7f800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvmaddmsp *+(7fffffff,ffffffff,ff800000) AND *+(ffffffff,ffffffff,c683287b) AND *+(7fc00000,ffc00000,80000000) AND *+(ffc00000,ffc00000,00000000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvmaddmsp *+(3ec00000,ffffffff,00000000) AND *+(42780000,ffffffff,7f800000) AND *+(00000000,ffffffff,7fffffff) AND *+(7f800000,ffffffff,7fc00000) => ffffffff ffffffff ffffffff ffffffff +#14: xvmaddmsp *+(00000000,ffc00000,ff800000) AND *+(00000000,ffc00000,c683287b) AND *+(80000000,ffc00000,80000000) AND *+(7f800000,49192c2d,49c1288d) => ffc00000 ffc00000 ffc00000 7f800000 +#15: xvmaddmsp *+(ff800000,49192c2d,49c1288d) AND *+(7fffffff,7fffffff,7fc00000) AND *+(ffffffff,7fc00000,7fc00000) AND *+(7fc00000,7fc00000,ffc00000) => ff800000 7fffffff 7fc00000 7fc00000 + +#0: xvnmaddadp !*+(fff0000000000000,fff0000000000000,3fd8000000000000) AND !*+(c0d0650f5a07b353,fff0000000000000,404f000000000000) => 7ff0000000000000 7ff0000000000000 +#1: xvnmaddadp !*+(41382511a2000000,41232585a9900000,0018000000b77501) AND !*+(0000000000000000,fff0000000000000,7fe800000000051b) => c1382511a2000000 7ff0000000000000 +#2: xvnmaddadp !*+(0123214569900000,fff0000000000000,0123214569900000) AND !*+(7ff0000000000000,fff0000000000000,0000000000000000) => 7ff0000000000000 7ff8000000000000 +#3: xvnmaddadp !*+(7ff7ffffffffffff,fff0000000000000,8000000000000000) AND !*+(7ff8000000000000,fff0000000000000,7ff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvnmaddadp !*+(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND !*+(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) => 7ff8000000000000 7fffffffffffffff +#5: xvnmaddadp !*+(8000000000000000,c0d0650f5a07b353,fff7ffffffffffff) AND !*+(0000000000000000,c0d0650f5a07b353,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvnmaddadp !*+(0123214569900000,c0d0650f5a07b353,fff8000000000000) AND !*+(7ff0000000000000,c0d0650f5a07b353,8008340000078000) => fff8000000000000 fff0000000000000 +#7: xvnmaddadp !*+(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) AND !*+(7ff8000000000000,c0d0650f5a07b353,41232585a9900000) => 7fffffffffffffff 7ff8000000000000 +#8: xvnmaddadp !*+(fff0000000000000,8000000000000000,404f000000000000) AND !*+(c0d0650f5a07b353,8000000000000000,0018000000b77501) => 7ff0000000000000 40d0650f5a07b353 +#9: xvnmaddadp !*+(8000000000000000,8000000000000000,7fe800000000051b) AND !*+(0000000000000000,8000000000000000,0123214569900000) => 0000000000000000 8000000000000000 +#10: xvnmaddadp !*+(0123214569900000,8000000000000000,0000000000000000) AND !*+(7ff0000000000000,8000000000000000,8000000000000000) => 8123214569900000 fff0000000000000 +#11: xvnmaddadp !*+(7ff7ffffffffffff,8000000000000000,7ff0000000000000) AND !*+(7ff8000000000000,8000000000000000,fff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvnmaddadp !*+(fff0000000000000,0000000000000000,7ff7ffffffffffff) AND !*+(c0d0650f5a07b353,0000000000000000,fff7ffffffffffff) => 7fffffffffffffff ffffffffffffffff +#13: xvnmaddadp !*+(8000000000000000,0000000000000000,7ff8000000000000) AND !*+(0000000000000000,0000000000000000,fff8000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvnmaddadp !*+(0123214569900000,0000000000000000,8008340000078000) AND !*+(7ff0000000000000,0000000000000000,c0d0650f5a07b353) => 8123214569900000 fff0000000000000 +#15: xvnmaddadp !*+(7ff7ffffffffffff,0000000000000000,3fd8000000000000) AND !*+(7ff8000000000000,0000000000000000,404f000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvnmaddadp !*+(fff0000000000000,0123214569900000,0018000000b77501) AND !*+(c0d0650f5a07b353,0123214569900000,7fe800000000051b) => 7ff0000000000000 c11bab9728b78ae5 +#17: xvnmaddadp !*+(8000000000000000,0123214569900000,0123214569900000) AND !*+(0000000000000000,0123214569900000,0000000000000000) => 8000000000000000 8000000000000000 +#18: xvnmaddadp !*+(404f000000000000,0123214569900000,8000000000000000) AND !*+(7ff0000000000000,0123214569900000,7ff0000000000000) => c04f000000000000 fff0000000000000 +#19: xvnmaddadp !*+(7ff7ffffffffffff,0123214569900000,fff0000000000000) AND !*+(7ff8000000000000,0123214569900000,7ff7ffffffffffff) => 7fffffffffffffff 7ff8000000000000 +#20: xvnmaddadp !*+(fff0000000000000,7ff0000000000000,fff7ffffffffffff) AND !*+(c0d0650f5a07b353,7ff0000000000000,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#21: xvnmaddadp !*+(8000000000000000,7ff0000000000000,fff8000000000000) AND !*+(0000000000000000,7ff0000000000000,8008340000078000) => fff8000000000000 7ff0000000000000 +#22: xvnmaddadp !*+(0123214569900000,7ff0000000000000,c0d0650f5a07b353) AND !*+(7ff0000000000000,7ff0000000000000,41232585a9900000) => 7ff0000000000000 fff0000000000000 +#23: xvnmaddadp !*+(7ff7ffffffffffff,7ff0000000000000,404f000000000000) AND !*+(7ff8000000000000,7ff0000000000000,0018000000b77501) => 7fffffffffffffff 7ff8000000000000 +#24: xvnmaddadp !*+(fff0000000000000,fff7ffffffffffff,7fe800000000051b) AND !*+(c0d0650f5a07b353,fff7ffffffffffff,0123214569900000) => ffffffffffffffff ffffffffffffffff +#25: xvnmaddadp !*+(8000000000000000,fff8000000000000,0000000000000000) AND !*+(0000000000000000,fff8000000000000,8000000000000000) => fff8000000000000 fff8000000000000 +#26: xvnmaddadp !*+(0123214569900000,fff7ffffffffffff,7ff0000000000000) AND !*+(7ff0000000000000,fff7ffffffffffff,fff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvnmaddadp !*+(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND !*+(7ff8000000000000,fff7ffffffffffff,fff7ffffffffffff) => ffffffffffffffff ffffffffffffffff +#28: xvnmaddadp !*+(fff0000000000000,fff8000000000000,7ff8000000000000) AND !*+(c0d0650f5a07b353,fff8000000000000,fff8000000000000) => fff8000000000000 fff8000000000000 +#29: xvnmaddadp !*+(8000000000000000,fff8000000000000,8008340000078000) AND !*+(41382511a2000000,41232585a9900000,c0d0650f5a07b353) => fff8000000000000 42039db3bbaae2d2 +#30: xvnmaddadp !*+(41382511a2000000,41232585a9900000,3fd8000000000000) AND !*+(7ff8000000000000,7ff7ffffffffffff,404f000000000000) => c13bbc1ab1cb0000 7fffffffffffffff +#31: xvnmaddadp !*+(7ff8000000000000,7ff8000000000000,0018000000b77501) AND !*+(fff8000000000000,7ff8000000000000,7fe800000000051b) => 7ff8000000000000 7ff8000000000000 + +#0: xvnmaddmdp !*+(3fd8000000000000,fff0000000000000,fff0000000000000) AND !*+(404f000000000000,fff0000000000000,c0d0650f5a07b353) => 7ff0000000000000 7ff0000000000000 +#1: xvnmaddmdp !*+(0018000000b77501,41232585a9900000,41382511a2000000) AND !*+(7fe800000000051b,fff0000000000000,0000000000000000) => c1382511a2000000 7ff0000000000000 +#2: xvnmaddmdp !*+(0123214569900000,fff0000000000000,0123214569900000) AND !*+(0000000000000000,fff0000000000000,7ff0000000000000) => 7ff0000000000000 7ff8000000000000 +#3: xvnmaddmdp !*+(8000000000000000,fff0000000000000,7ff7ffffffffffff) AND !*+(7ff0000000000000,fff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvnmaddmdp !*+(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND !*+(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) => 7ff8000000000000 7fffffffffffffff +#5: xvnmaddmdp !*+(fff7ffffffffffff,c0d0650f5a07b353,8000000000000000) AND !*+(7ff8000000000000,c0d0650f5a07b353,0000000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvnmaddmdp !*+(fff8000000000000,c0d0650f5a07b353,0123214569900000) AND !*+(8008340000078000,c0d0650f5a07b353,7ff0000000000000) => fff8000000000000 fff0000000000000 +#7: xvnmaddmdp !*+(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) AND !*+(41232585a9900000,c0d0650f5a07b353,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#8: xvnmaddmdp !*+(404f000000000000,8000000000000000,fff0000000000000) AND !*+(0018000000b77501,8000000000000000,c0d0650f5a07b353) => 7ff0000000000000 40d0650f5a07b353 +#9: xvnmaddmdp !*+(7fe800000000051b,8000000000000000,8000000000000000) AND !*+(0123214569900000,8000000000000000,0000000000000000) => 0000000000000000 8000000000000000 +#10: xvnmaddmdp !*+(0000000000000000,8000000000000000,0123214569900000) AND !*+(8000000000000000,8000000000000000,7ff0000000000000) => 8123214569900000 fff0000000000000 +#11: xvnmaddmdp !*+(7ff0000000000000,8000000000000000,7ff7ffffffffffff) AND !*+(fff0000000000000,8000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvnmaddmdp !*+(7ff7ffffffffffff,0000000000000000,fff0000000000000) AND !*+(fff7ffffffffffff,0000000000000000,c0d0650f5a07b353) => 7fffffffffffffff ffffffffffffffff +#13: xvnmaddmdp !*+(7ff8000000000000,0000000000000000,8000000000000000) AND !*+(fff8000000000000,0000000000000000,0000000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvnmaddmdp !*+(8008340000078000,0000000000000000,0123214569900000) AND !*+(c0d0650f5a07b353,0000000000000000,7ff0000000000000) => 8123214569900000 fff0000000000000 +#15: xvnmaddmdp !*+(3fd8000000000000,0000000000000000,7ff7ffffffffffff) AND !*+(404f000000000000,0000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvnmaddmdp !*+(0018000000b77501,0123214569900000,fff0000000000000) AND !*+(7fe800000000051b,0123214569900000,c0d0650f5a07b353) => 7ff0000000000000 c11bab9728b78ae5 +#17: xvnmaddmdp !*+(0123214569900000,0123214569900000,8000000000000000) AND !*+(0000000000000000,0123214569900000,0000000000000000) => 8000000000000000 8000000000000000 +#18: xvnmaddmdp !*+(8000000000000000,0123214569900000,404f000000000000) AND !*+(7ff0000000000000,0123214569900000,7ff0000000000000) => c04f000000000000 fff0000000000000 +#19: xvnmaddmdp !*+(fff0000000000000,0123214569900000,7ff7ffffffffffff) AND !*+(7ff7ffffffffffff,0123214569900000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#20: xvnmaddmdp !*+(fff7ffffffffffff,7ff0000000000000,fff0000000000000) AND !*+(7ff8000000000000,7ff0000000000000,c0d0650f5a07b353) => ffffffffffffffff 7ff8000000000000 +#21: xvnmaddmdp !*+(fff8000000000000,7ff0000000000000,8000000000000000) AND !*+(8008340000078000,7ff0000000000000,0000000000000000) => fff8000000000000 7ff0000000000000 +#22: xvnmaddmdp !*+(c0d0650f5a07b353,7ff0000000000000,0123214569900000) AND !*+(41232585a9900000,7ff0000000000000,7ff0000000000000) => 7ff0000000000000 fff0000000000000 +#23: xvnmaddmdp !*+(404f000000000000,7ff0000000000000,7ff7ffffffffffff) AND !*+(0018000000b77501,7ff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#24: xvnmaddmdp !*+(7fe800000000051b,fff7ffffffffffff,fff0000000000000) AND !*+(0123214569900000,fff7ffffffffffff,c0d0650f5a07b353) => ffffffffffffffff ffffffffffffffff +#25: xvnmaddmdp !*+(0000000000000000,fff8000000000000,8000000000000000) AND !*+(8000000000000000,fff8000000000000,0000000000000000) => fff8000000000000 fff8000000000000 +#26: xvnmaddmdp !*+(7ff0000000000000,fff7ffffffffffff,0123214569900000) AND !*+(fff0000000000000,fff7ffffffffffff,7ff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvnmaddmdp !*+(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND !*+(fff7ffffffffffff,fff7ffffffffffff,7ff8000000000000) => ffffffffffffffff ffffffffffffffff +#28: xvnmaddmdp !*+(7ff8000000000000,fff8000000000000,fff0000000000000) AND !*+(fff8000000000000,fff8000000000000,c0d0650f5a07b353) => fff8000000000000 fff8000000000000 +#29: xvnmaddmdp !*+(8008340000078000,fff8000000000000,8000000000000000) AND !*+(c0d0650f5a07b353,41232585a9900000,41382511a2000000) => fff8000000000000 42039db3bbaae2d2 +#30: xvnmaddmdp !*+(3fd8000000000000,41232585a9900000,41382511a2000000) AND !*+(404f000000000000,7ff7ffffffffffff,7ff8000000000000) => c13bbc1ab1cb0000 7fffffffffffffff +#31: xvnmaddmdp !*+(0018000000b77501,7ff8000000000000,7ff8000000000000) AND !*+(7fe800000000051b,7ff8000000000000,fff8000000000000) => 7ff8000000000000 7ff8000000000000 + +#0: xvnmaddasp !*+(ff800000,ff800000,3ec00000) AND !*+(c683287b,ff800000,42780000) AND !*+(49c1288d,49192c2d,00000000) AND !*+(00000000,ff800000,7f800000) => 7f800000 7f800000 c9c1288d 7f800000 +#1: xvnmaddasp !*+(00000000,ff800000,00000000) AND !*+(7f800000,ff800000,00000000) AND !*+(7fffffff,ff800000,80000000) AND !*+(7fc00000,ff800000,7f800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvnmaddasp !*+(ff800000,c683287b,ff800000) AND !*+(c683287b,c683287b,7fffffff) AND !*+(80000000,c683287b,ffffffff) AND !*+(00000000,c683287b,7fc00000) => 7fc00000 7fffffff ffffffff 7fc00000 +#3: xvnmaddasp !*+(00000000,c683287b,ffc00000) AND !*+(7f800000,c683287b,80000000) AND !*+(7fffffff,c683287b,c683287b) AND !*+(7fc00000,c683287b,49192c2d) => ffc00000 ff800000 7fffffff 7fc00000 +#4: xvnmaddasp !*+(ff800000,80000000,7f800000) AND !*+(c683287b,80000000,00000000) AND !*+(80000000,80000000,00000000) AND !*+(00000000,80000000,80000000) => 7fc00000 4683287b 00000000 80000000 +#5: xvnmaddasp !*+(00000000,80000000,7f800000) AND !*+(7f800000,80000000,ff800000) AND !*+(7fffffff,80000000,7fffffff) AND !*+(7fc00000,80000000,ffffffff) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvnmaddasp !*+(ff800000,00000000,7fc00000) AND !*+(c683287b,00000000,ffc00000) AND !*+(80000000,00000000,80000000) AND !*+(00000000,00000000,c683287b) => 7fc00000 ffc00000 00000000 80000000 +#7: xvnmaddasp !*+(00000000,00000000,00000000) AND !*+(7f800000,00000000,7f800000) AND !*+(7fffffff,00000000,00000000) AND !*+(7fc00000,00000000,00000000) => 80000000 7fc00000 7fffffff 7fc00000 +#8: xvnmaddasp !*+(ff800000,00000000,80000000) AND !*+(c683287b,00000000,7f800000) AND !*+(80000000,00000000,ff800000) AND !*+(00000000,00000000,7fffffff) => 7f800000 7fc00000 7fc00000 7fffffff +#9: xvnmaddasp !*+(42780000,00000000,ffffffff) AND !*+(7f800000,00000000,7fc00000) AND !*+(7fffffff,00000000,ffc00000) AND !*+(7fc00000,00000000,80000000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvnmaddasp !*+(ff800000,7f800000,42780000) AND !*+(c683287b,7f800000,00000000) AND !*+(80000000,7f800000,7f800000) AND !*+(00000000,7f800000,00000000) => 7fc00000 7fc00000 ff800000 7fc00000 +#11: xvnmaddasp !*+(00000000,7f800000,00000000) AND !*+(7f800000,7f800000,80000000) AND !*+(7fffffff,7f800000,7f800000) AND !*+(7fc00000,7f800000,ff800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvnmaddasp !*+(ff800000,ffffffff,7fffffff) AND !*+(c683287b,ffffffff,ffffffff) AND !*+(80000000,ffc00000,7fc00000) AND !*+(00000000,ffc00000,ffc00000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvnmaddasp !*+(00000000,ffffffff,3ec00000) AND !*+(7f800000,ffffffff,42780000) AND !*+(7fffffff,ffffffff,00000000) AND !*+(7fc00000,ffffffff,7f800000) => ffffffff ffffffff ffffffff ffffffff +#14: xvnmaddasp !*+(ff800000,ffc00000,00000000) AND !*+(c683287b,ffc00000,00000000) AND !*+(80000000,ffc00000,80000000) AND !*+(49c1288d,49192c2d,7f800000) => ffc00000 ffc00000 ffc00000 ff800000 +#15: xvnmaddasp !*+(49c1288d,49192c2d,ff800000) AND !*+(7fc00000,7fffffff,7fffffff) AND !*+(7fc00000,7fc00000,ffffffff) AND !*+(ffc00000,7fc00000,7fc00000) => 7f800000 7fffffff 7fc00000 7fc00000 + +#0: xvnmaddmsp !*+(3ec00000,ff800000,ff800000) AND !*+(42780000,ff800000,c683287b) AND !*+(00000000,49192c2d,49c1288d) AND !*+(7f800000,ff800000,00000000) => 7f800000 7f800000 c9c1288d 7f800000 +#1: xvnmaddmsp !*+(00000000,ff800000,00000000) AND !*+(00000000,ff800000,7f800000) AND !*+(80000000,ff800000,7fffffff) AND !*+(7f800000,ff800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvnmaddmsp !*+(ff800000,c683287b,ff800000) AND !*+(7fffffff,c683287b,c683287b) AND !*+(ffffffff,c683287b,80000000) AND !*+(7fc00000,c683287b,00000000) => 7fc00000 7fffffff ffffffff 7fc00000 +#3: xvnmaddmsp !*+(ffc00000,c683287b,00000000) AND !*+(80000000,c683287b,7f800000) AND !*+(c683287b,c683287b,7fffffff) AND !*+(49192c2d,c683287b,7fc00000) => ffc00000 ff800000 7fffffff 7fc00000 +#4: xvnmaddmsp !*+(7f800000,80000000,ff800000) AND !*+(00000000,80000000,c683287b) AND !*+(00000000,80000000,80000000) AND !*+(80000000,80000000,00000000) => 7fc00000 4683287b 00000000 80000000 +#5: xvnmaddmsp !*+(7f800000,80000000,00000000) AND !*+(ff800000,80000000,7f800000) AND !*+(7fffffff,80000000,7fffffff) AND !*+(ffffffff,80000000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvnmaddmsp !*+(7fc00000,00000000,ff800000) AND !*+(ffc00000,00000000,c683287b) AND !*+(80000000,00000000,80000000) AND !*+(c683287b,00000000,00000000) => 7fc00000 ffc00000 00000000 80000000 +#7: xvnmaddmsp !*+(00000000,00000000,00000000) AND !*+(7f800000,00000000,7f800000) AND !*+(00000000,00000000,7fffffff) AND !*+(00000000,00000000,7fc00000) => 80000000 7fc00000 7fffffff 7fc00000 +#8: xvnmaddmsp !*+(80000000,00000000,ff800000) AND !*+(7f800000,00000000,c683287b) AND !*+(ff800000,00000000,80000000) AND !*+(7fffffff,00000000,00000000) => 7f800000 7fc00000 7fc00000 7fffffff +#9: xvnmaddmsp !*+(ffffffff,00000000,42780000) AND !*+(7fc00000,00000000,7f800000) AND !*+(ffc00000,00000000,7fffffff) AND !*+(80000000,00000000,7fc00000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvnmaddmsp !*+(42780000,7f800000,ff800000) AND !*+(00000000,7f800000,c683287b) AND !*+(7f800000,7f800000,80000000) AND !*+(00000000,7f800000,00000000) => 7fc00000 7fc00000 ff800000 7fc00000 +#11: xvnmaddmsp !*+(00000000,7f800000,00000000) AND !*+(80000000,7f800000,7f800000) AND !*+(7f800000,7f800000,7fffffff) AND !*+(ff800000,7f800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvnmaddmsp !*+(7fffffff,ffffffff,ff800000) AND !*+(ffffffff,ffffffff,c683287b) AND !*+(7fc00000,ffc00000,80000000) AND !*+(ffc00000,ffc00000,00000000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvnmaddmsp !*+(3ec00000,ffffffff,00000000) AND !*+(42780000,ffffffff,7f800000) AND !*+(00000000,ffffffff,7fffffff) AND !*+(7f800000,ffffffff,7fc00000) => ffffffff ffffffff ffffffff ffffffff +#14: xvnmaddmsp !*+(00000000,ffc00000,ff800000) AND !*+(00000000,ffc00000,c683287b) AND !*+(80000000,ffc00000,80000000) AND !*+(7f800000,49192c2d,49c1288d) => ffc00000 ffc00000 ffc00000 ff800000 +#15: xvnmaddmsp !*+(ff800000,49192c2d,49c1288d) AND !*+(7fffffff,7fffffff,7fc00000) AND !*+(ffffffff,7fc00000,7fc00000) AND !*+(7fc00000,7fc00000,ffc00000) => 7f800000 7fffffff 7fc00000 7fc00000 + +#0: xvmsubadp *-(fff0000000000000,fff0000000000000,3fd8000000000000) AND *-(c0d0650f5a07b353,fff0000000000000,404f000000000000) => 7ff8000000000000 fff0000000000000 +#1: xvmsubadp *-(41382511a2000000,41232585a9900000,0018000000b77501) AND *-(0000000000000000,fff0000000000000,7fe800000000051b) => c1382511a2000000 fff0000000000000 +#2: xvmsubadp *-(0123214569900000,fff0000000000000,0123214569900000) AND *-(7ff0000000000000,fff0000000000000,0000000000000000) => fff0000000000000 7ff8000000000000 +#3: xvmsubadp *-(7ff7ffffffffffff,fff0000000000000,8000000000000000) AND *-(7ff8000000000000,fff0000000000000,7ff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvmsubadp *-(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND *-(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) => 7ff0000000000000 7fffffffffffffff +#5: xvmsubadp *-(8000000000000000,c0d0650f5a07b353,fff7ffffffffffff) AND *-(0000000000000000,c0d0650f5a07b353,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvmsubadp *-(0123214569900000,c0d0650f5a07b353,fff8000000000000) AND *-(7ff0000000000000,c0d0650f5a07b353,8008340000078000) => fff8000000000000 fff0000000000000 +#7: xvmsubadp *-(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) AND *-(7ff8000000000000,c0d0650f5a07b353,41232585a9900000) => 7fffffffffffffff 7ff8000000000000 +#8: xvmsubadp *-(fff0000000000000,8000000000000000,404f000000000000) AND *-(c0d0650f5a07b353,8000000000000000,0018000000b77501) => 7ff0000000000000 40d0650f5a07b353 +#9: xvmsubadp *-(8000000000000000,8000000000000000,7fe800000000051b) AND *-(0000000000000000,8000000000000000,0123214569900000) => 0000000000000000 8000000000000000 +#10: xvmsubadp *-(0123214569900000,8000000000000000,0000000000000000) AND *-(7ff0000000000000,8000000000000000,8000000000000000) => 8123214569900000 fff0000000000000 +#11: xvmsubadp *-(7ff7ffffffffffff,8000000000000000,7ff0000000000000) AND *-(7ff8000000000000,8000000000000000,fff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvmsubadp *-(fff0000000000000,0000000000000000,7ff7ffffffffffff) AND *-(c0d0650f5a07b353,0000000000000000,fff7ffffffffffff) => 7fffffffffffffff ffffffffffffffff +#13: xvmsubadp *-(8000000000000000,0000000000000000,7ff8000000000000) AND *-(0000000000000000,0000000000000000,fff8000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvmsubadp *-(0123214569900000,0000000000000000,8008340000078000) AND *-(7ff0000000000000,0000000000000000,c0d0650f5a07b353) => 8123214569900000 fff0000000000000 +#15: xvmsubadp *-(7ff7ffffffffffff,0000000000000000,3fd8000000000000) AND *-(7ff8000000000000,0000000000000000,404f000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvmsubadp *-(fff0000000000000,0123214569900000,0018000000b77501) AND *-(c0d0650f5a07b353,0123214569900000,7fe800000000051b) => 7ff0000000000000 411db83913f88150 +#17: xvmsubadp *-(8000000000000000,0123214569900000,0123214569900000) AND *-(0000000000000000,0123214569900000,0000000000000000) => 0000000000000000 0000000000000000 +#18: xvmsubadp *-(404f000000000000,0123214569900000,8000000000000000) AND *-(7ff0000000000000,0123214569900000,7ff0000000000000) => c04f000000000000 7ff8000000000000 +#19: xvmsubadp *-(7ff7ffffffffffff,0123214569900000,fff0000000000000) AND *-(7ff8000000000000,0123214569900000,7ff7ffffffffffff) => 7fffffffffffffff 7ff8000000000000 +#20: xvmsubadp *-(fff0000000000000,7ff0000000000000,fff7ffffffffffff) AND *-(c0d0650f5a07b353,7ff0000000000000,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#21: xvmsubadp *-(8000000000000000,7ff0000000000000,fff8000000000000) AND *-(0000000000000000,7ff0000000000000,8008340000078000) => fff8000000000000 fff0000000000000 +#22: xvmsubadp *-(0123214569900000,7ff0000000000000,c0d0650f5a07b353) AND *-(7ff0000000000000,7ff0000000000000,41232585a9900000) => fff0000000000000 7ff8000000000000 +#23: xvmsubadp *-(7ff7ffffffffffff,7ff0000000000000,404f000000000000) AND *-(7ff8000000000000,7ff0000000000000,0018000000b77501) => 7fffffffffffffff 7ff8000000000000 +#24: xvmsubadp *-(fff0000000000000,fff7ffffffffffff,7fe800000000051b) AND *-(c0d0650f5a07b353,fff7ffffffffffff,0123214569900000) => ffffffffffffffff ffffffffffffffff +#25: xvmsubadp *-(8000000000000000,fff8000000000000,0000000000000000) AND *-(0000000000000000,fff8000000000000,8000000000000000) => fff8000000000000 fff8000000000000 +#26: xvmsubadp *-(0123214569900000,fff7ffffffffffff,7ff0000000000000) AND *-(7ff0000000000000,fff7ffffffffffff,fff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvmsubadp *-(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND *-(7ff8000000000000,fff7ffffffffffff,fff7ffffffffffff) => ffffffffffffffff ffffffffffffffff +#28: xvmsubadp *-(fff0000000000000,fff8000000000000,7ff8000000000000) AND *-(c0d0650f5a07b353,fff8000000000000,fff8000000000000) => fff8000000000000 fff8000000000000 +#29: xvmsubadp *-(8000000000000000,fff8000000000000,8008340000078000) AND *-(41382511a2000000,41232585a9900000,c0d0650f5a07b353) => fff8000000000000 c2039f360cc502d2 +#30: xvmsubadp *-(41382511a2000000,41232585a9900000,3fd8000000000000) AND *-(7ff8000000000000,7ff7ffffffffffff,404f000000000000) => c1348e0892350000 7fffffffffffffff +#31: xvmsubadp *-(7ff8000000000000,7ff8000000000000,0018000000b77501) AND *-(fff8000000000000,7ff8000000000000,7fe800000000051b) => 7ff8000000000000 7ff8000000000000 + +#0: xvmsubmdp *-(3fd8000000000000,fff0000000000000,fff0000000000000) AND *-(404f000000000000,fff0000000000000,c0d0650f5a07b353) => 7ff8000000000000 fff0000000000000 +#1: xvmsubmdp *-(0018000000b77501,41232585a9900000,41382511a2000000) AND *-(7fe800000000051b,fff0000000000000,0000000000000000) => c1382511a2000000 fff0000000000000 +#2: xvmsubmdp *-(0123214569900000,fff0000000000000,0123214569900000) AND *-(0000000000000000,fff0000000000000,7ff0000000000000) => fff0000000000000 7ff8000000000000 +#3: xvmsubmdp *-(8000000000000000,fff0000000000000,7ff7ffffffffffff) AND *-(7ff0000000000000,fff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvmsubmdp *-(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND *-(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) => 7ff0000000000000 7fffffffffffffff +#5: xvmsubmdp *-(fff7ffffffffffff,c0d0650f5a07b353,8000000000000000) AND *-(7ff8000000000000,c0d0650f5a07b353,0000000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvmsubmdp *-(fff8000000000000,c0d0650f5a07b353,0123214569900000) AND *-(8008340000078000,c0d0650f5a07b353,7ff0000000000000) => fff8000000000000 fff0000000000000 +#7: xvmsubmdp *-(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) AND *-(41232585a9900000,c0d0650f5a07b353,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#8: xvmsubmdp *-(404f000000000000,8000000000000000,fff0000000000000) AND *-(0018000000b77501,8000000000000000,c0d0650f5a07b353) => 7ff0000000000000 40d0650f5a07b353 +#9: xvmsubmdp *-(7fe800000000051b,8000000000000000,8000000000000000) AND *-(0123214569900000,8000000000000000,0000000000000000) => 0000000000000000 8000000000000000 +#10: xvmsubmdp *-(0000000000000000,8000000000000000,0123214569900000) AND *-(8000000000000000,8000000000000000,7ff0000000000000) => 8123214569900000 fff0000000000000 +#11: xvmsubmdp *-(7ff0000000000000,8000000000000000,7ff7ffffffffffff) AND *-(fff0000000000000,8000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvmsubmdp *-(7ff7ffffffffffff,0000000000000000,fff0000000000000) AND *-(fff7ffffffffffff,0000000000000000,c0d0650f5a07b353) => 7fffffffffffffff ffffffffffffffff +#13: xvmsubmdp *-(7ff8000000000000,0000000000000000,8000000000000000) AND *-(fff8000000000000,0000000000000000,0000000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvmsubmdp *-(8008340000078000,0000000000000000,0123214569900000) AND *-(c0d0650f5a07b353,0000000000000000,7ff0000000000000) => 8123214569900000 fff0000000000000 +#15: xvmsubmdp *-(3fd8000000000000,0000000000000000,7ff7ffffffffffff) AND *-(404f000000000000,0000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvmsubmdp *-(0018000000b77501,0123214569900000,fff0000000000000) AND *-(7fe800000000051b,0123214569900000,c0d0650f5a07b353) => 7ff0000000000000 411db83913f88150 +#17: xvmsubmdp *-(0123214569900000,0123214569900000,8000000000000000) AND *-(0000000000000000,0123214569900000,0000000000000000) => 0000000000000000 0000000000000000 +#18: xvmsubmdp *-(8000000000000000,0123214569900000,404f000000000000) AND *-(7ff0000000000000,0123214569900000,7ff0000000000000) => c04f000000000000 7ff8000000000000 +#19: xvmsubmdp *-(fff0000000000000,0123214569900000,7ff7ffffffffffff) AND *-(7ff7ffffffffffff,0123214569900000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#20: xvmsubmdp *-(fff7ffffffffffff,7ff0000000000000,fff0000000000000) AND *-(7ff8000000000000,7ff0000000000000,c0d0650f5a07b353) => ffffffffffffffff 7ff8000000000000 +#21: xvmsubmdp *-(fff8000000000000,7ff0000000000000,8000000000000000) AND *-(8008340000078000,7ff0000000000000,0000000000000000) => fff8000000000000 fff0000000000000 +#22: xvmsubmdp *-(c0d0650f5a07b353,7ff0000000000000,0123214569900000) AND *-(41232585a9900000,7ff0000000000000,7ff0000000000000) => fff0000000000000 7ff8000000000000 +#23: xvmsubmdp *-(404f000000000000,7ff0000000000000,7ff7ffffffffffff) AND *-(0018000000b77501,7ff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#24: xvmsubmdp *-(7fe800000000051b,fff7ffffffffffff,fff0000000000000) AND *-(0123214569900000,fff7ffffffffffff,c0d0650f5a07b353) => ffffffffffffffff ffffffffffffffff +#25: xvmsubmdp *-(0000000000000000,fff8000000000000,8000000000000000) AND *-(8000000000000000,fff8000000000000,0000000000000000) => fff8000000000000 fff8000000000000 +#26: xvmsubmdp *-(7ff0000000000000,fff7ffffffffffff,0123214569900000) AND *-(fff0000000000000,fff7ffffffffffff,7ff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvmsubmdp *-(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND *-(fff7ffffffffffff,fff7ffffffffffff,7ff8000000000000) => ffffffffffffffff ffffffffffffffff +#28: xvmsubmdp *-(7ff8000000000000,fff8000000000000,fff0000000000000) AND *-(fff8000000000000,fff8000000000000,c0d0650f5a07b353) => fff8000000000000 fff8000000000000 +#29: xvmsubmdp *-(8008340000078000,fff8000000000000,8000000000000000) AND *-(c0d0650f5a07b353,41232585a9900000,41382511a2000000) => fff8000000000000 c2039f360cc502d2 +#30: xvmsubmdp *-(3fd8000000000000,41232585a9900000,41382511a2000000) AND *-(404f000000000000,7ff7ffffffffffff,7ff8000000000000) => c1348e0892350000 7fffffffffffffff +#31: xvmsubmdp *-(0018000000b77501,7ff8000000000000,7ff8000000000000) AND *-(7fe800000000051b,7ff8000000000000,fff8000000000000) => 7ff8000000000000 7ff8000000000000 + +#0: xvmsubasp *-(ff800000,ff800000,3ec00000) AND *-(c683287b,ff800000,42780000) AND *-(49c1288d,49192c2d,00000000) AND *-(00000000,ff800000,7f800000) => 7fc00000 ff800000 c9c1288d ff800000 +#1: xvmsubasp *-(00000000,ff800000,00000000) AND *-(7f800000,ff800000,00000000) AND *-(7fffffff,ff800000,80000000) AND *-(7fc00000,ff800000,7f800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvmsubasp *-(ff800000,c683287b,ff800000) AND *-(c683287b,c683287b,7fffffff) AND *-(80000000,c683287b,ffffffff) AND *-(00000000,c683287b,7fc00000) => 7f800000 7fffffff ffffffff 7fc00000 +#3: xvmsubasp *-(00000000,c683287b,ffc00000) AND *-(7f800000,c683287b,80000000) AND *-(7fffffff,c683287b,c683287b) AND *-(7fc00000,c683287b,49192c2d) => ffc00000 ff800000 7fffffff 7fc00000 +#4: xvmsubasp *-(ff800000,80000000,7f800000) AND *-(c683287b,80000000,00000000) AND *-(80000000,80000000,00000000) AND *-(00000000,80000000,80000000) => 7fc00000 4683287b 00000000 00000000 +#5: xvmsubasp *-(00000000,80000000,7f800000) AND *-(7f800000,80000000,ff800000) AND *-(7fffffff,80000000,7fffffff) AND *-(7fc00000,80000000,ffffffff) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvmsubasp *-(ff800000,00000000,7fc00000) AND *-(c683287b,00000000,ffc00000) AND *-(80000000,00000000,80000000) AND *-(00000000,00000000,c683287b) => 7fc00000 ffc00000 00000000 80000000 +#7: xvmsubasp *-(00000000,00000000,00000000) AND *-(7f800000,00000000,7f800000) AND *-(7fffffff,00000000,00000000) AND *-(7fc00000,00000000,00000000) => 00000000 7fc00000 7fffffff 7fc00000 +#8: xvmsubasp *-(ff800000,00000000,80000000) AND *-(c683287b,00000000,7f800000) AND *-(80000000,00000000,ff800000) AND *-(00000000,00000000,7fffffff) => 7f800000 7fc00000 7fc00000 7fffffff +#9: xvmsubasp *-(42780000,00000000,ffffffff) AND *-(7f800000,00000000,7fc00000) AND *-(7fffffff,00000000,ffc00000) AND *-(7fc00000,00000000,80000000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvmsubasp *-(ff800000,7f800000,42780000) AND *-(c683287b,7f800000,00000000) AND *-(80000000,7f800000,7f800000) AND *-(00000000,7f800000,00000000) => 7f800000 7fc00000 7f800000 7fc00000 +#11: xvmsubasp *-(00000000,7f800000,00000000) AND *-(7f800000,7f800000,80000000) AND *-(7fffffff,7f800000,7f800000) AND *-(7fc00000,7f800000,ff800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvmsubasp *-(ff800000,ffffffff,7fffffff) AND *-(c683287b,ffffffff,ffffffff) AND *-(80000000,ffc00000,7fc00000) AND *-(00000000,ffc00000,ffc00000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvmsubasp *-(00000000,ffffffff,3ec00000) AND *-(7f800000,ffffffff,42780000) AND *-(7fffffff,ffffffff,00000000) AND *-(7fc00000,ffffffff,7f800000) => ffffffff ffffffff ffffffff ffffffff +#14: xvmsubasp *-(ff800000,ffc00000,00000000) AND *-(c683287b,ffc00000,00000000) AND *-(80000000,ffc00000,80000000) AND *-(49c1288d,49192c2d,7f800000) => ffc00000 ffc00000 ffc00000 7f800000 +#15: xvmsubasp *-(49c1288d,49192c2d,ff800000) AND *-(7fc00000,7fffffff,7fffffff) AND *-(7fc00000,7fc00000,ffffffff) AND *-(ffc00000,7fc00000,7fc00000) => ff800000 7fffffff 7fc00000 7fc00000 + +#0: xvmsubmsp *-(3ec00000,ff800000,ff800000) AND *-(42780000,ff800000,c683287b) AND *-(00000000,49192c2d,49c1288d) AND *-(7f800000,ff800000,00000000) => 7fc00000 ff800000 c9c1288d ff800000 +#1: xvmsubmsp *-(00000000,ff800000,00000000) AND *-(00000000,ff800000,7f800000) AND *-(80000000,ff800000,7fffffff) AND *-(7f800000,ff800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvmsubmsp *-(ff800000,c683287b,ff800000) AND *-(7fffffff,c683287b,c683287b) AND *-(ffffffff,c683287b,80000000) AND *-(7fc00000,c683287b,00000000) => 7f800000 7fffffff ffffffff 7fc00000 +#3: xvmsubmsp *-(ffc00000,c683287b,00000000) AND *-(80000000,c683287b,7f800000) AND *-(c683287b,c683287b,7fffffff) AND *-(49192c2d,c683287b,7fc00000) => ffc00000 ff800000 7fffffff 7fc00000 +#4: xvmsubmsp *-(7f800000,80000000,ff800000) AND *-(00000000,80000000,c683287b) AND *-(00000000,80000000,80000000) AND *-(80000000,80000000,00000000) => 7fc00000 4683287b 00000000 00000000 +#5: xvmsubmsp *-(7f800000,80000000,00000000) AND *-(ff800000,80000000,7f800000) AND *-(7fffffff,80000000,7fffffff) AND *-(ffffffff,80000000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvmsubmsp *-(7fc00000,00000000,ff800000) AND *-(ffc00000,00000000,c683287b) AND *-(80000000,00000000,80000000) AND *-(c683287b,00000000,00000000) => 7fc00000 ffc00000 00000000 80000000 +#7: xvmsubmsp *-(00000000,00000000,00000000) AND *-(7f800000,00000000,7f800000) AND *-(00000000,00000000,7fffffff) AND *-(00000000,00000000,7fc00000) => 00000000 7fc00000 7fffffff 7fc00000 +#8: xvmsubmsp *-(80000000,00000000,ff800000) AND *-(7f800000,00000000,c683287b) AND *-(ff800000,00000000,80000000) AND *-(7fffffff,00000000,00000000) => 7f800000 7fc00000 7fc00000 7fffffff +#9: xvmsubmsp *-(ffffffff,00000000,42780000) AND *-(7fc00000,00000000,7f800000) AND *-(ffc00000,00000000,7fffffff) AND *-(80000000,00000000,7fc00000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvmsubmsp *-(42780000,7f800000,ff800000) AND *-(00000000,7f800000,c683287b) AND *-(7f800000,7f800000,80000000) AND *-(00000000,7f800000,00000000) => 7f800000 7fc00000 7f800000 7fc00000 +#11: xvmsubmsp *-(00000000,7f800000,00000000) AND *-(80000000,7f800000,7f800000) AND *-(7f800000,7f800000,7fffffff) AND *-(ff800000,7f800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvmsubmsp *-(7fffffff,ffffffff,ff800000) AND *-(ffffffff,ffffffff,c683287b) AND *-(7fc00000,ffc00000,80000000) AND *-(ffc00000,ffc00000,00000000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvmsubmsp *-(3ec00000,ffffffff,00000000) AND *-(42780000,ffffffff,7f800000) AND *-(00000000,ffffffff,7fffffff) AND *-(7f800000,ffffffff,7fc00000) => ffffffff ffffffff ffffffff ffffffff +#14: xvmsubmsp *-(00000000,ffc00000,ff800000) AND *-(00000000,ffc00000,c683287b) AND *-(80000000,ffc00000,80000000) AND *-(7f800000,49192c2d,49c1288d) => ffc00000 ffc00000 ffc00000 7f800000 +#15: xvmsubmsp *-(ff800000,49192c2d,49c1288d) AND *-(7fffffff,7fffffff,7fc00000) AND *-(ffffffff,7fc00000,7fc00000) AND *-(7fc00000,7fc00000,ffc00000) => ff800000 7fffffff 7fc00000 7fc00000 + +#0: xvnmsubadp !*-(fff0000000000000,fff0000000000000,3fd8000000000000) AND !*-(c0d0650f5a07b353,fff0000000000000,404f000000000000) => 7ff8000000000000 7ff0000000000000 +#1: xvnmsubadp !*-(41382511a2000000,41232585a9900000,0018000000b77501) AND !*-(0000000000000000,fff0000000000000,7fe800000000051b) => 41382511a2000000 7ff0000000000000 +#2: xvnmsubadp !*-(0123214569900000,fff0000000000000,0123214569900000) AND !*-(7ff0000000000000,fff0000000000000,0000000000000000) => 7ff0000000000000 7ff8000000000000 +#3: xvnmsubadp !*-(7ff7ffffffffffff,fff0000000000000,8000000000000000) AND !*-(7ff8000000000000,fff0000000000000,7ff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvnmsubadp !*-(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND !*-(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) => fff0000000000000 7fffffffffffffff +#5: xvnmsubadp !*-(8000000000000000,c0d0650f5a07b353,fff7ffffffffffff) AND !*-(0000000000000000,c0d0650f5a07b353,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvnmsubadp !*-(0123214569900000,c0d0650f5a07b353,fff8000000000000) AND !*-(7ff0000000000000,c0d0650f5a07b353,8008340000078000) => fff8000000000000 7ff0000000000000 +#7: xvnmsubadp !*-(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) AND !*-(7ff8000000000000,c0d0650f5a07b353,41232585a9900000) => 7fffffffffffffff 7ff8000000000000 +#8: xvnmsubadp !*-(fff0000000000000,8000000000000000,404f000000000000) AND !*-(c0d0650f5a07b353,8000000000000000,0018000000b77501) => fff0000000000000 c0d0650f5a07b353 +#9: xvnmsubadp !*-(8000000000000000,8000000000000000,7fe800000000051b) AND !*-(0000000000000000,8000000000000000,0123214569900000) => 8000000000000000 0000000000000000 +#10: xvnmsubadp !*-(0123214569900000,8000000000000000,0000000000000000) AND !*-(7ff0000000000000,8000000000000000,8000000000000000) => 0123214569900000 7ff0000000000000 +#11: xvnmsubadp !*-(7ff7ffffffffffff,8000000000000000,7ff0000000000000) AND !*-(7ff8000000000000,8000000000000000,fff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvnmsubadp !*-(fff0000000000000,0000000000000000,7ff7ffffffffffff) AND !*-(c0d0650f5a07b353,0000000000000000,fff7ffffffffffff) => 7fffffffffffffff ffffffffffffffff +#13: xvnmsubadp !*-(8000000000000000,0000000000000000,7ff8000000000000) AND !*-(0000000000000000,0000000000000000,fff8000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvnmsubadp !*-(0123214569900000,0000000000000000,8008340000078000) AND !*-(7ff0000000000000,0000000000000000,c0d0650f5a07b353) => 0123214569900000 7ff0000000000000 +#15: xvnmsubadp !*-(7ff7ffffffffffff,0000000000000000,3fd8000000000000) AND !*-(7ff8000000000000,0000000000000000,404f000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvnmsubadp !*-(fff0000000000000,0123214569900000,0018000000b77501) AND !*-(c0d0650f5a07b353,0123214569900000,7fe800000000051b) => fff0000000000000 c11db83913f88150 +#17: xvnmsubadp !*-(8000000000000000,0123214569900000,0123214569900000) AND !*-(0000000000000000,0123214569900000,0000000000000000) => 8000000000000000 8000000000000000 +#18: xvnmsubadp !*-(404f000000000000,0123214569900000,8000000000000000) AND !*-(7ff0000000000000,0123214569900000,7ff0000000000000) => 404f000000000000 7ff8000000000000 +#19: xvnmsubadp !*-(7ff7ffffffffffff,0123214569900000,fff0000000000000) AND !*-(7ff8000000000000,0123214569900000,7ff7ffffffffffff) => 7fffffffffffffff 7ff8000000000000 +#20: xvnmsubadp !*-(fff0000000000000,7ff0000000000000,fff7ffffffffffff) AND !*-(c0d0650f5a07b353,7ff0000000000000,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#21: xvnmsubadp !*-(8000000000000000,7ff0000000000000,fff8000000000000) AND !*-(0000000000000000,7ff0000000000000,8008340000078000) => fff8000000000000 7ff0000000000000 +#22: xvnmsubadp !*-(0123214569900000,7ff0000000000000,c0d0650f5a07b353) AND !*-(7ff0000000000000,7ff0000000000000,41232585a9900000) => 7ff0000000000000 7ff8000000000000 +#23: xvnmsubadp !*-(7ff7ffffffffffff,7ff0000000000000,404f000000000000) AND !*-(7ff8000000000000,7ff0000000000000,0018000000b77501) => 7fffffffffffffff 7ff8000000000000 +#24: xvnmsubadp !*-(fff0000000000000,fff7ffffffffffff,7fe800000000051b) AND !*-(c0d0650f5a07b353,fff7ffffffffffff,0123214569900000) => ffffffffffffffff ffffffffffffffff +#25: xvnmsubadp !*-(8000000000000000,fff8000000000000,0000000000000000) AND !*-(0000000000000000,fff8000000000000,8000000000000000) => fff8000000000000 fff8000000000000 +#26: xvnmsubadp !*-(0123214569900000,fff7ffffffffffff,7ff0000000000000) AND !*-(7ff0000000000000,fff7ffffffffffff,fff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvnmsubadp !*-(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND !*-(7ff8000000000000,fff7ffffffffffff,fff7ffffffffffff) => ffffffffffffffff ffffffffffffffff +#28: xvnmsubadp !*-(fff0000000000000,fff8000000000000,7ff8000000000000) AND !*-(c0d0650f5a07b353,fff8000000000000,fff8000000000000) => fff8000000000000 fff8000000000000 +#29: xvnmsubadp !*-(8000000000000000,fff8000000000000,8008340000078000) AND !*-(41382511a2000000,41232585a9900000,c0d0650f5a07b353) => fff8000000000000 42039f360cc502d2 +#30: xvnmsubadp !*-(41382511a2000000,41232585a9900000,3fd8000000000000) AND !*-(7ff8000000000000,7ff7ffffffffffff,404f000000000000) => 41348e0892350000 7fffffffffffffff +#31: xvnmsubadp !*-(7ff8000000000000,7ff8000000000000,0018000000b77501) AND !*-(fff8000000000000,7ff8000000000000,7fe800000000051b) => 7ff8000000000000 7ff8000000000000 + +#0: xvnmsubmdp !*-(3fd8000000000000,fff0000000000000,fff0000000000000) AND !*-(404f000000000000,fff0000000000000,c0d0650f5a07b353) => 7ff8000000000000 7ff0000000000000 +#1: xvnmsubmdp !*-(0018000000b77501,41232585a9900000,41382511a2000000) AND !*-(7fe800000000051b,fff0000000000000,0000000000000000) => 41382511a2000000 7ff0000000000000 +#2: xvnmsubmdp !*-(0123214569900000,fff0000000000000,0123214569900000) AND !*-(0000000000000000,fff0000000000000,7ff0000000000000) => 7ff0000000000000 7ff8000000000000 +#3: xvnmsubmdp !*-(8000000000000000,fff0000000000000,7ff7ffffffffffff) AND !*-(7ff0000000000000,fff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvnmsubmdp !*-(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND !*-(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) => fff0000000000000 7fffffffffffffff +#5: xvnmsubmdp !*-(fff7ffffffffffff,c0d0650f5a07b353,8000000000000000) AND !*-(7ff8000000000000,c0d0650f5a07b353,0000000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvnmsubmdp !*-(fff8000000000000,c0d0650f5a07b353,0123214569900000) AND !*-(8008340000078000,c0d0650f5a07b353,7ff0000000000000) => fff8000000000000 7ff0000000000000 +#7: xvnmsubmdp !*-(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) AND !*-(41232585a9900000,c0d0650f5a07b353,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#8: xvnmsubmdp !*-(404f000000000000,8000000000000000,fff0000000000000) AND !*-(0018000000b77501,8000000000000000,c0d0650f5a07b353) => fff0000000000000 c0d0650f5a07b353 +#9: xvnmsubmdp !*-(7fe800000000051b,8000000000000000,8000000000000000) AND !*-(0123214569900000,8000000000000000,0000000000000000) => 8000000000000000 0000000000000000 +#10: xvnmsubmdp !*-(0000000000000000,8000000000000000,0123214569900000) AND !*-(8000000000000000,8000000000000000,7ff0000000000000) => 0123214569900000 7ff0000000000000 +#11: xvnmsubmdp !*-(7ff0000000000000,8000000000000000,7ff7ffffffffffff) AND !*-(fff0000000000000,8000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvnmsubmdp !*-(7ff7ffffffffffff,0000000000000000,fff0000000000000) AND !*-(fff7ffffffffffff,0000000000000000,c0d0650f5a07b353) => 7fffffffffffffff ffffffffffffffff +#13: xvnmsubmdp !*-(7ff8000000000000,0000000000000000,8000000000000000) AND !*-(fff8000000000000,0000000000000000,0000000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvnmsubmdp !*-(8008340000078000,0000000000000000,0123214569900000) AND !*-(c0d0650f5a07b353,0000000000000000,7ff0000000000000) => 0123214569900000 7ff0000000000000 +#15: xvnmsubmdp !*-(3fd8000000000000,0000000000000000,7ff7ffffffffffff) AND !*-(404f000000000000,0000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvnmsubmdp !*-(0018000000b77501,0123214569900000,fff0000000000000) AND !*-(7fe800000000051b,0123214569900000,c0d0650f5a07b353) => fff0000000000000 c11db83913f88150 +#17: xvnmsubmdp !*-(0123214569900000,0123214569900000,8000000000000000) AND !*-(0000000000000000,0123214569900000,0000000000000000) => 8000000000000000 8000000000000000 +#18: xvnmsubmdp !*-(8000000000000000,0123214569900000,404f000000000000) AND !*-(7ff0000000000000,0123214569900000,7ff0000000000000) => 404f000000000000 7ff8000000000000 +#19: xvnmsubmdp !*-(fff0000000000000,0123214569900000,7ff7ffffffffffff) AND !*-(7ff7ffffffffffff,0123214569900000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#20: xvnmsubmdp !*-(fff7ffffffffffff,7ff0000000000000,fff0000000000000) AND !*-(7ff8000000000000,7ff0000000000000,c0d0650f5a07b353) => ffffffffffffffff 7ff8000000000000 +#21: xvnmsubmdp !*-(fff8000000000000,7ff0000000000000,8000000000000000) AND !*-(8008340000078000,7ff0000000000000,0000000000000000) => fff8000000000000 7ff0000000000000 +#22: xvnmsubmdp !*-(c0d0650f5a07b353,7ff0000000000000,0123214569900000) AND !*-(41232585a9900000,7ff0000000000000,7ff0000000000000) => 7ff0000000000000 7ff8000000000000 +#23: xvnmsubmdp !*-(404f000000000000,7ff0000000000000,7ff7ffffffffffff) AND !*-(0018000000b77501,7ff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#24: xvnmsubmdp !*-(7fe800000000051b,fff7ffffffffffff,fff0000000000000) AND !*-(0123214569900000,fff7ffffffffffff,c0d0650f5a07b353) => ffffffffffffffff ffffffffffffffff +#25: xvnmsubmdp !*-(0000000000000000,fff8000000000000,8000000000000000) AND !*-(8000000000000000,fff8000000000000,0000000000000000) => fff8000000000000 fff8000000000000 +#26: xvnmsubmdp !*-(7ff0000000000000,fff7ffffffffffff,0123214569900000) AND !*-(fff0000000000000,fff7ffffffffffff,7ff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvnmsubmdp !*-(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND !*-(fff7ffffffffffff,fff7ffffffffffff,7ff8000000000000) => ffffffffffffffff ffffffffffffffff +#28: xvnmsubmdp !*-(7ff8000000000000,fff8000000000000,fff0000000000000) AND !*-(fff8000000000000,fff8000000000000,c0d0650f5a07b353) => fff8000000000000 fff8000000000000 +#29: xvnmsubmdp !*-(8008340000078000,fff8000000000000,8000000000000000) AND !*-(c0d0650f5a07b353,41232585a9900000,41382511a2000000) => fff8000000000000 42039f360cc502d2 +#30: xvnmsubmdp !*-(3fd8000000000000,41232585a9900000,41382511a2000000) AND !*-(404f000000000000,7ff7ffffffffffff,7ff8000000000000) => 41348e0892350000 7fffffffffffffff +#31: xvnmsubmdp !*-(0018000000b77501,7ff8000000000000,7ff8000000000000) AND !*-(7fe800000000051b,7ff8000000000000,fff8000000000000) => 7ff8000000000000 7ff8000000000000 + +#0: xvnmsubasp !*-(ff800000,ff800000,3ec00000) AND !*-(c683287b,ff800000,42780000) AND !*-(49c1288d,49192c2d,00000000) AND !*-(00000000,ff800000,7f800000) => 7fc00000 7f800000 49c1288d 7f800000 +#1: xvnmsubasp !*-(00000000,ff800000,00000000) AND !*-(7f800000,ff800000,00000000) AND !*-(7fffffff,ff800000,80000000) AND !*-(7fc00000,ff800000,7f800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvnmsubasp !*-(ff800000,c683287b,ff800000) AND !*-(c683287b,c683287b,7fffffff) AND !*-(80000000,c683287b,ffffffff) AND !*-(00000000,c683287b,7fc00000) => ff800000 7fffffff ffffffff 7fc00000 +#3: xvnmsubasp !*-(00000000,c683287b,ffc00000) AND !*-(7f800000,c683287b,80000000) AND !*-(7fffffff,c683287b,c683287b) AND !*-(7fc00000,c683287b,49192c2d) => ffc00000 7f800000 7fffffff 7fc00000 +#4: xvnmsubasp !*-(ff800000,80000000,7f800000) AND !*-(c683287b,80000000,00000000) AND !*-(80000000,80000000,00000000) AND !*-(00000000,80000000,80000000) => 7fc00000 c683287b 80000000 80000000 +#5: xvnmsubasp !*-(00000000,80000000,7f800000) AND !*-(7f800000,80000000,ff800000) AND !*-(7fffffff,80000000,7fffffff) AND !*-(7fc00000,80000000,ffffffff) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvnmsubasp !*-(ff800000,00000000,7fc00000) AND !*-(c683287b,00000000,ffc00000) AND !*-(80000000,00000000,80000000) AND !*-(00000000,00000000,c683287b) => 7fc00000 ffc00000 80000000 00000000 +#7: xvnmsubasp !*-(00000000,00000000,00000000) AND !*-(7f800000,00000000,7f800000) AND !*-(7fffffff,00000000,00000000) AND !*-(7fc00000,00000000,00000000) => 80000000 7fc00000 7fffffff 7fc00000 +#8: xvnmsubasp !*-(ff800000,00000000,80000000) AND !*-(c683287b,00000000,7f800000) AND !*-(80000000,00000000,ff800000) AND !*-(00000000,00000000,7fffffff) => ff800000 7fc00000 7fc00000 7fffffff +#9: xvnmsubasp !*-(42780000,00000000,ffffffff) AND !*-(7f800000,00000000,7fc00000) AND !*-(7fffffff,00000000,ffc00000) AND !*-(7fc00000,00000000,80000000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvnmsubasp !*-(ff800000,7f800000,42780000) AND !*-(c683287b,7f800000,00000000) AND !*-(80000000,7f800000,7f800000) AND !*-(00000000,7f800000,00000000) => ff800000 7fc00000 ff800000 7fc00000 +#11: xvnmsubasp !*-(00000000,7f800000,00000000) AND !*-(7f800000,7f800000,80000000) AND !*-(7fffffff,7f800000,7f800000) AND !*-(7fc00000,7f800000,ff800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvnmsubasp !*-(ff800000,ffffffff,7fffffff) AND !*-(c683287b,ffffffff,ffffffff) AND !*-(80000000,ffc00000,7fc00000) AND !*-(00000000,ffc00000,ffc00000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvnmsubasp !*-(00000000,ffffffff,3ec00000) AND !*-(7f800000,ffffffff,42780000) AND !*-(7fffffff,ffffffff,00000000) AND !*-(7fc00000,ffffffff,7f800000) => ffffffff ffffffff ffffffff ffffffff +#14: xvnmsubasp !*-(ff800000,ffc00000,00000000) AND !*-(c683287b,ffc00000,00000000) AND !*-(80000000,ffc00000,80000000) AND !*-(49c1288d,49192c2d,7f800000) => ffc00000 ffc00000 ffc00000 ff800000 +#15: xvnmsubasp !*-(49c1288d,49192c2d,ff800000) AND !*-(7fc00000,7fffffff,7fffffff) AND !*-(7fc00000,7fc00000,ffffffff) AND !*-(ffc00000,7fc00000,7fc00000) => 7f800000 7fffffff 7fc00000 7fc00000 + +#0: xvnmsubmsp !*-(3ec00000,ff800000,ff800000) AND !*-(42780000,ff800000,c683287b) AND !*-(00000000,49192c2d,49c1288d) AND !*-(7f800000,ff800000,00000000) => 7fc00000 7f800000 49c1288d 7f800000 +#1: xvnmsubmsp !*-(00000000,ff800000,00000000) AND !*-(00000000,ff800000,7f800000) AND !*-(80000000,ff800000,7fffffff) AND !*-(7f800000,ff800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvnmsubmsp !*-(ff800000,c683287b,ff800000) AND !*-(7fffffff,c683287b,c683287b) AND !*-(ffffffff,c683287b,80000000) AND !*-(7fc00000,c683287b,00000000) => ff800000 7fffffff ffffffff 7fc00000 +#3: xvnmsubmsp !*-(ffc00000,c683287b,00000000) AND !*-(80000000,c683287b,7f800000) AND !*-(c683287b,c683287b,7fffffff) AND !*-(49192c2d,c683287b,7fc00000) => ffc00000 7f800000 7fffffff 7fc00000 +#4: xvnmsubmsp !*-(7f800000,80000000,ff800000) AND !*-(00000000,80000000,c683287b) AND !*-(00000000,80000000,80000000) AND !*-(80000000,80000000,00000000) => 7fc00000 c683287b 80000000 80000000 +#5: xvnmsubmsp !*-(7f800000,80000000,00000000) AND !*-(ff800000,80000000,7f800000) AND !*-(7fffffff,80000000,7fffffff) AND !*-(ffffffff,80000000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvnmsubmsp !*-(7fc00000,00000000,ff800000) AND !*-(ffc00000,00000000,c683287b) AND !*-(80000000,00000000,80000000) AND !*-(c683287b,00000000,00000000) => 7fc00000 ffc00000 80000000 00000000 +#7: xvnmsubmsp !*-(00000000,00000000,00000000) AND !*-(7f800000,00000000,7f800000) AND !*-(00000000,00000000,7fffffff) AND !*-(00000000,00000000,7fc00000) => 80000000 7fc00000 7fffffff 7fc00000 +#8: xvnmsubmsp !*-(80000000,00000000,ff800000) AND !*-(7f800000,00000000,c683287b) AND !*-(ff800000,00000000,80000000) AND !*-(7fffffff,00000000,00000000) => ff800000 7fc00000 7fc00000 7fffffff +#9: xvnmsubmsp !*-(ffffffff,00000000,42780000) AND !*-(7fc00000,00000000,7f800000) AND !*-(ffc00000,00000000,7fffffff) AND !*-(80000000,00000000,7fc00000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvnmsubmsp !*-(42780000,7f800000,ff800000) AND !*-(00000000,7f800000,c683287b) AND !*-(7f800000,7f800000,80000000) AND !*-(00000000,7f800000,00000000) => ff800000 7fc00000 ff800000 7fc00000 +#11: xvnmsubmsp !*-(00000000,7f800000,00000000) AND !*-(80000000,7f800000,7f800000) AND !*-(7f800000,7f800000,7fffffff) AND !*-(ff800000,7f800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvnmsubmsp !*-(7fffffff,ffffffff,ff800000) AND !*-(ffffffff,ffffffff,c683287b) AND !*-(7fc00000,ffc00000,80000000) AND !*-(ffc00000,ffc00000,00000000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvnmsubmsp !*-(3ec00000,ffffffff,00000000) AND !*-(42780000,ffffffff,7f800000) AND !*-(00000000,ffffffff,7fffffff) AND !*-(7f800000,ffffffff,7fc00000) => ffffffff ffffffff ffffffff ffffffff +#14: xvnmsubmsp !*-(00000000,ffc00000,ff800000) AND !*-(00000000,ffc00000,c683287b) AND !*-(80000000,ffc00000,80000000) AND !*-(7f800000,49192c2d,49c1288d) => ffc00000 ffc00000 ffc00000 ff800000 +#15: xvnmsubmsp !*-(ff800000,49192c2d,49c1288d) AND !*-(7fffffff,7fffffff,7fc00000) AND !*-(ffffffff,7fc00000,7fc00000) AND !*-(7fc00000,7fc00000,ffc00000) => 7f800000 7fffffff 7fc00000 7fc00000 + + +Test scalar floating point arithmetic instructions +#0: xssqrtdp 3fd8000000000000 => 3fe3988e1409212e +#1: xssqrtdp 404f000000000000 => 401f7efbeb8d4f12 +#2: xssqrtdp 0018000000b77501 => 2003988e14540690 +#3: xssqrtdp 7fe800000000051b => 5febb67ae8584f9d +#4: xssqrtdp 0123214569900000 => 2088bde98d60ebe6 +#5: xssqrtdp 0000000000000000 => 0000000000000000 +#6: xssqrtdp 8000000000000000 => 8000000000000000 +#7: xssqrtdp 7ff0000000000000 => 7ff0000000000000 +#8: xssqrtdp fff0000000000000 => 7ff8000000000000 +#9: xssqrtdp 7ff7ffffffffffff => 7fffffffffffffff +#10: xssqrtdp fff7ffffffffffff => ffffffffffffffff +#11: xssqrtdp 7ff8000000000000 => 7ff8000000000000 +#12: xssqrtdp fff8000000000000 => fff8000000000000 +#13: xssqrtdp 8008340000078000 => 7ff8000000000000 +#14: xssqrtdp c0d0650f5a07b353 => 7ff8000000000000 +#15: xssqrtdp 41232585a9900000 => 4088c0a9258a4a8b +#16: xssqrtdp 41382511a2000000 => 4093a7aa60f34e85 + +#0: xsrdpim 3fd8000000000000 => 0000000000000000 +#1: xsrdpim 404f000000000000 => 404f000000000000 +#2: xsrdpim 0018000000b77501 => 0000000000000000 +#3: xsrdpim 7fe800000000051b => 7fe800000000051b +#4: xsrdpim 0123214569900000 => 0000000000000000 +#5: xsrdpim 0000000000000000 => 0000000000000000 +#6: xsrdpim 8000000000000000 => 8000000000000000 +#7: xsrdpim 7ff0000000000000 => 7ff0000000000000 +#8: xsrdpim fff0000000000000 => fff0000000000000 +#9: xsrdpim 7ff7ffffffffffff => 7fffffffffffffff +#10: xsrdpim fff7ffffffffffff => ffffffffffffffff +#11: xsrdpim 7ff8000000000000 => 7ff8000000000000 +#12: xsrdpim fff8000000000000 => fff8000000000000 +#13: xsrdpim 8008340000078000 => bff0000000000000 +#14: xsrdpim c0d0650f5a07b353 => c0d0654000000000 +#15: xsrdpim 41232585a9900000 => 4123258400000000 +#16: xsrdpim 41382511a2000000 => 4138251100000000 + +#0: xsrdpip 3fd8000000000000 => 3ff0000000000000 +#1: xsrdpip 404f000000000000 => 404f000000000000 +#2: xsrdpip 0018000000b77501 => 3ff0000000000000 +#3: xsrdpip 7fe800000000051b => 7fe800000000051b +#4: xsrdpip 0123214569900000 => 3ff0000000000000 +#5: xsrdpip 0000000000000000 => 0000000000000000 +#6: xsrdpip 8000000000000000 => 8000000000000000 +#7: xsrdpip 7ff0000000000000 => 7ff0000000000000 +#8: xsrdpip fff0000000000000 => fff0000000000000 +#9: xsrdpip 7ff7ffffffffffff => 7fffffffffffffff +#10: xsrdpip fff7ffffffffffff => ffffffffffffffff +#11: xsrdpip 7ff8000000000000 => 7ff8000000000000 +#12: xsrdpip fff8000000000000 => fff8000000000000 +#13: xsrdpip 8008340000078000 => 8000000000000000 +#14: xsrdpip c0d0650f5a07b353 => c0d0650000000000 +#15: xsrdpip 41232585a9900000 => 4123258600000000 +#16: xsrdpip 41382511a2000000 => 4138251200000000 + +#0: xstdivdp fff0000000000000,fff0000000000000 => cr e +#1: xstdivdp fff0000000000000,c0d0650f5a07b353 => cr e +#2: xstdivdp 41232585a9900000,41382511a2000000 => cr 8 +#3: xstdivdp fff0000000000000,0000000000000000 => cr e +#4: xstdivdp fff0000000000000,0123214569900000 => cr e +#5: xstdivdp fff0000000000000,7ff0000000000000 => cr e +#6: xstdivdp fff0000000000000,7ff7ffffffffffff => cr e +#7: xstdivdp fff0000000000000,7ff8000000000000 => cr e +#8: xstdivdp c0d0650f5a07b353,fff0000000000000 => cr e +#9: xstdivdp c0d0650f5a07b353,c0d0650f5a07b353 => cr 8 +#10: xstdivdp c0d0650f5a07b353,8000000000000000 => cr e +#11: xstdivdp c0d0650f5a07b353,0000000000000000 => cr e +#12: xstdivdp c0d0650f5a07b353,0123214569900000 => cr 8 +#13: xstdivdp c0d0650f5a07b353,7ff0000000000000 => cr e +#14: xstdivdp c0d0650f5a07b353,7ff7ffffffffffff => cr a +#15: xstdivdp c0d0650f5a07b353,7ff8000000000000 => cr a +#16: xstdivdp 8000000000000000,fff0000000000000 => cr e +#17: xstdivdp 8000000000000000,c0d0650f5a07b353 => cr 8 +#18: xstdivdp 8000000000000000,8000000000000000 => cr e +#19: xstdivdp 8000000000000000,0000000000000000 => cr e +#20: xstdivdp 8000000000000000,0123214569900000 => cr 8 +#21: xstdivdp 8000000000000000,7ff0000000000000 => cr e +#22: xstdivdp 8000000000000000,7ff7ffffffffffff => cr a +#23: xstdivdp 8000000000000000,7ff8000000000000 => cr a +#24: xstdivdp 0000000000000000,fff0000000000000 => cr e +#25: xstdivdp 0000000000000000,c0d0650f5a07b353 => cr 8 +#26: xstdivdp 0000000000000000,8000000000000000 => cr e +#27: xstdivdp 0000000000000000,0000000000000000 => cr e +#28: xstdivdp 0000000000000000,0123214569900000 => cr 8 +#29: xstdivdp 0000000000000000,7ff0000000000000 => cr e +#30: xstdivdp 0000000000000000,7ff7ffffffffffff => cr a +#31: xstdivdp 0000000000000000,7ff8000000000000 => cr a +#32: xstdivdp 0123214569900000,fff0000000000000 => cr e +#33: xstdivdp 0123214569900000,c0d0650f5a07b353 => cr a +#34: xstdivdp 0123214569900000,8000000000000000 => cr e +#35: xstdivdp 0123214569900000,0000000000000000 => cr e +#36: xstdivdp 0123214569900000,404f000000000000 => cr a +#37: xstdivdp 0123214569900000,7ff0000000000000 => cr e +#38: xstdivdp 0123214569900000,7ff7ffffffffffff => cr a +#39: xstdivdp 0123214569900000,7ff8000000000000 => cr a +#40: xstdivdp 7ff0000000000000,fff0000000000000 => cr e +#41: xstdivdp 7ff0000000000000,c0d0650f5a07b353 => cr e +#42: xstdivdp 7ff0000000000000,8000000000000000 => cr e +#43: xstdivdp 7ff0000000000000,0000000000000000 => cr e +#44: xstdivdp 7ff0000000000000,0123214569900000 => cr e +#45: xstdivdp 7ff0000000000000,7ff0000000000000 => cr e +#46: xstdivdp 7ff0000000000000,7ff7ffffffffffff => cr e +#47: xstdivdp 7ff0000000000000,7ff8000000000000 => cr e +#48: xstdivdp fff7ffffffffffff,fff0000000000000 => cr e +#49: xstdivdp fff7ffffffffffff,c0d0650f5a07b353 => cr a +#50: xstdivdp fff8000000000000,8000000000000000 => cr e +#51: xstdivdp fff8000000000000,0000000000000000 => cr e +#52: xstdivdp fff7ffffffffffff,0123214569900000 => cr a +#53: xstdivdp fff7ffffffffffff,7ff0000000000000 => cr e +#54: xstdivdp fff7ffffffffffff,7ff7ffffffffffff => cr a +#55: xstdivdp fff7ffffffffffff,7ff8000000000000 => cr a +#56: xstdivdp fff8000000000000,fff0000000000000 => cr e +#57: xstdivdp fff8000000000000,c0d0650f5a07b353 => cr a +#58: xstdivdp fff8000000000000,8000000000000000 => cr e +#59: xstdivdp 41232585a9900000,41382511a2000000 => cr 8 +#60: xstdivdp 41232585a9900000,41382511a2000000 => cr 8 +#61: xstdivdp 7ff7ffffffffffff,7ff8000000000000 => cr a +#62: xstdivdp 7ff8000000000000,7ff8000000000000 => cr a +#63: xstdivdp 7ff8000000000000,fff8000000000000 => cr a + +#0: xsmaxdp fff0000000000000,fff0000000000000 => fff0000000000000 +#1: xsmaxdp fff0000000000000,c0d0650f5a07b353 => c0d0650f5a07b353 +#2: xsmaxdp 41232585a9900000,41382511a2000000 => 41382511a2000000 +#3: xsmaxdp fff0000000000000,0000000000000000 => 0000000000000000 +#4: xsmaxdp fff0000000000000,0123214569900000 => 0123214569900000 +#5: xsmaxdp fff0000000000000,7ff0000000000000 => 7ff0000000000000 +#6: xsmaxdp fff0000000000000,7ff7ffffffffffff => 7fffffffffffffff +#7: xsmaxdp fff0000000000000,7ff8000000000000 => fff0000000000000 +#8: xsmaxdp c0d0650f5a07b353,fff0000000000000 => c0d0650f5a07b353 +#9: xsmaxdp c0d0650f5a07b353,c0d0650f5a07b353 => c0d0650f5a07b353 +#10: xsmaxdp c0d0650f5a07b353,8000000000000000 => 8000000000000000 +#11: xsmaxdp c0d0650f5a07b353,0000000000000000 => 0000000000000000 +#12: xsmaxdp c0d0650f5a07b353,0123214569900000 => 0123214569900000 +#13: xsmaxdp c0d0650f5a07b353,7ff0000000000000 => 7ff0000000000000 +#14: xsmaxdp c0d0650f5a07b353,7ff7ffffffffffff => 7fffffffffffffff +#15: xsmaxdp c0d0650f5a07b353,7ff8000000000000 => c0d0650f5a07b353 +#16: xsmaxdp 8000000000000000,fff0000000000000 => 8000000000000000 +#17: xsmaxdp 8000000000000000,c0d0650f5a07b353 => 8000000000000000 +#18: xsmaxdp 8000000000000000,8000000000000000 => 8000000000000000 +#19: xsmaxdp 8000000000000000,0000000000000000 => 0000000000000000 +#20: xsmaxdp 8000000000000000,0123214569900000 => 0123214569900000 +#21: xsmaxdp 8000000000000000,7ff0000000000000 => 7ff0000000000000 +#22: xsmaxdp 8000000000000000,7ff7ffffffffffff => 7fffffffffffffff +#23: xsmaxdp 8000000000000000,7ff8000000000000 => 8000000000000000 +#24: xsmaxdp 0000000000000000,fff0000000000000 => 0000000000000000 +#25: xsmaxdp 0000000000000000,c0d0650f5a07b353 => 0000000000000000 +#26: xsmaxdp 0000000000000000,8000000000000000 => 0000000000000000 +#27: xsmaxdp 0000000000000000,0000000000000000 => 0000000000000000 +#28: xsmaxdp 0000000000000000,0123214569900000 => 0123214569900000 +#29: xsmaxdp 0000000000000000,7ff0000000000000 => 7ff0000000000000 +#30: xsmaxdp 0000000000000000,7ff7ffffffffffff => 7fffffffffffffff +#31: xsmaxdp 0000000000000000,7ff8000000000000 => 0000000000000000 +#32: xsmaxdp 0123214569900000,fff0000000000000 => 0123214569900000 +#33: xsmaxdp 0123214569900000,c0d0650f5a07b353 => 0123214569900000 +#34: xsmaxdp 0123214569900000,8000000000000000 => 0123214569900000 +#35: xsmaxdp 0123214569900000,0000000000000000 => 0123214569900000 +#36: xsmaxdp 0123214569900000,404f000000000000 => 404f000000000000 +#37: xsmaxdp 0123214569900000,7ff0000000000000 => 7ff0000000000000 +#38: xsmaxdp 0123214569900000,7ff7ffffffffffff => 7fffffffffffffff +#39: xsmaxdp 0123214569900000,7ff8000000000000 => 0123214569900000 +#40: xsmaxdp 7ff0000000000000,fff0000000000000 => 7ff0000000000000 +#41: xsmaxdp 7ff0000000000000,c0d0650f5a07b353 => 7ff0000000000000 +#42: xsmaxdp 7ff0000000000000,8000000000000000 => 7ff0000000000000 +#43: xsmaxdp 7ff0000000000000,0000000000000000 => 7ff0000000000000 +#44: xsmaxdp 7ff0000000000000,0123214569900000 => 7ff0000000000000 +#45: xsmaxdp 7ff0000000000000,7ff0000000000000 => 7ff0000000000000 +#46: xsmaxdp 7ff0000000000000,7ff7ffffffffffff => 7fffffffffffffff +#47: xsmaxdp 7ff0000000000000,7ff8000000000000 => 7ff0000000000000 +#48: xsmaxdp fff7ffffffffffff,fff0000000000000 => ffffffffffffffff +#49: xsmaxdp fff7ffffffffffff,c0d0650f5a07b353 => ffffffffffffffff +#50: xsmaxdp fff8000000000000,8000000000000000 => 8000000000000000 +#51: xsmaxdp fff8000000000000,0000000000000000 => 0000000000000000 +#52: xsmaxdp fff7ffffffffffff,0123214569900000 => ffffffffffffffff +#53: xsmaxdp fff7ffffffffffff,7ff0000000000000 => ffffffffffffffff +#54: xsmaxdp fff7ffffffffffff,7ff7ffffffffffff => ffffffffffffffff +#55: xsmaxdp fff7ffffffffffff,7ff8000000000000 => ffffffffffffffff +#56: xsmaxdp fff8000000000000,fff0000000000000 => fff0000000000000 +#57: xsmaxdp fff8000000000000,c0d0650f5a07b353 => c0d0650f5a07b353 +#58: xsmaxdp fff8000000000000,8000000000000000 => 8000000000000000 +#59: xsmaxdp 41232585a9900000,41382511a2000000 => 41382511a2000000 +#60: xsmaxdp 41232585a9900000,41382511a2000000 => 41382511a2000000 +#61: xsmaxdp 7ff7ffffffffffff,7ff8000000000000 => 7fffffffffffffff +#62: xsmaxdp 7ff8000000000000,7ff8000000000000 => 7ff8000000000000 +#63: xsmaxdp 7ff8000000000000,fff8000000000000 => 7ff8000000000000 + +#0: xsmindp fff0000000000000,fff0000000000000 => fff0000000000000 +#1: xsmindp fff0000000000000,c0d0650f5a07b353 => fff0000000000000 +#2: xsmindp 41232585a9900000,41382511a2000000 => 41232585a9900000 +#3: xsmindp fff0000000000000,0000000000000000 => fff0000000000000 +#4: xsmindp fff0000000000000,0123214569900000 => fff0000000000000 +#5: xsmindp fff0000000000000,7ff0000000000000 => fff0000000000000 +#6: xsmindp fff0000000000000,7ff7ffffffffffff => 7fffffffffffffff +#7: xsmindp fff0000000000000,7ff8000000000000 => fff0000000000000 +#8: xsmindp c0d0650f5a07b353,fff0000000000000 => fff0000000000000 +#9: xsmindp c0d0650f5a07b353,c0d0650f5a07b353 => c0d0650f5a07b353 +#10: xsmindp c0d0650f5a07b353,8000000000000000 => c0d0650f5a07b353 +#11: xsmindp c0d0650f5a07b353,0000000000000000 => c0d0650f5a07b353 +#12: xsmindp c0d0650f5a07b353,0123214569900000 => c0d0650f5a07b353 +#13: xsmindp c0d0650f5a07b353,7ff0000000000000 => c0d0650f5a07b353 +#14: xsmindp c0d0650f5a07b353,7ff7ffffffffffff => 7fffffffffffffff +#15: xsmindp c0d0650f5a07b353,7ff8000000000000 => c0d0650f5a07b353 +#16: xsmindp 8000000000000000,fff0000000000000 => fff0000000000000 +#17: xsmindp 8000000000000000,c0d0650f5a07b353 => c0d0650f5a07b353 +#18: xsmindp 8000000000000000,8000000000000000 => 8000000000000000 +#19: xsmindp 8000000000000000,0000000000000000 => 8000000000000000 +#20: xsmindp 8000000000000000,0123214569900000 => 8000000000000000 +#21: xsmindp 8000000000000000,7ff0000000000000 => 8000000000000000 +#22: xsmindp 8000000000000000,7ff7ffffffffffff => 7fffffffffffffff +#23: xsmindp 8000000000000000,7ff8000000000000 => 8000000000000000 +#24: xsmindp 0000000000000000,fff0000000000000 => fff0000000000000 +#25: xsmindp 0000000000000000,c0d0650f5a07b353 => c0d0650f5a07b353 +#26: xsmindp 0000000000000000,8000000000000000 => 8000000000000000 +#27: xsmindp 0000000000000000,0000000000000000 => 0000000000000000 +#28: xsmindp 0000000000000000,0123214569900000 => 0000000000000000 +#29: xsmindp 0000000000000000,7ff0000000000000 => 0000000000000000 +#30: xsmindp 0000000000000000,7ff7ffffffffffff => 7fffffffffffffff +#31: xsmindp 0000000000000000,7ff8000000000000 => 0000000000000000 +#32: xsmindp 0123214569900000,fff0000000000000 => fff0000000000000 +#33: xsmindp 0123214569900000,c0d0650f5a07b353 => c0d0650f5a07b353 +#34: xsmindp 0123214569900000,8000000000000000 => 8000000000000000 +#35: xsmindp 0123214569900000,0000000000000000 => 0000000000000000 +#36: xsmindp 0123214569900000,404f000000000000 => 0123214569900000 +#37: xsmindp 0123214569900000,7ff0000000000000 => 0123214569900000 +#38: xsmindp 0123214569900000,7ff7ffffffffffff => 7fffffffffffffff +#39: xsmindp 0123214569900000,7ff8000000000000 => 0123214569900000 +#40: xsmindp 7ff0000000000000,fff0000000000000 => fff0000000000000 +#41: xsmindp 7ff0000000000000,c0d0650f5a07b353 => c0d0650f5a07b353 +#42: xsmindp 7ff0000000000000,8000000000000000 => 8000000000000000 +#43: xsmindp 7ff0000000000000,0000000000000000 => 0000000000000000 +#44: xsmindp 7ff0000000000000,0123214569900000 => 0123214569900000 +#45: xsmindp 7ff0000000000000,7ff0000000000000 => 7ff0000000000000 +#46: xsmindp 7ff0000000000000,7ff7ffffffffffff => 7fffffffffffffff +#47: xsmindp 7ff0000000000000,7ff8000000000000 => 7ff0000000000000 +#48: xsmindp fff7ffffffffffff,fff0000000000000 => ffffffffffffffff +#49: xsmindp fff7ffffffffffff,c0d0650f5a07b353 => ffffffffffffffff +#50: xsmindp fff8000000000000,8000000000000000 => 8000000000000000 +#51: xsmindp fff8000000000000,0000000000000000 => 0000000000000000 +#52: xsmindp fff7ffffffffffff,0123214569900000 => ffffffffffffffff +#53: xsmindp fff7ffffffffffff,7ff0000000000000 => ffffffffffffffff +#54: xsmindp fff7ffffffffffff,7ff7ffffffffffff => ffffffffffffffff +#55: xsmindp fff7ffffffffffff,7ff8000000000000 => ffffffffffffffff +#56: xsmindp fff8000000000000,fff0000000000000 => fff0000000000000 +#57: xsmindp fff8000000000000,c0d0650f5a07b353 => c0d0650f5a07b353 +#58: xsmindp fff8000000000000,8000000000000000 => 8000000000000000 +#59: xsmindp 41232585a9900000,41382511a2000000 => 41232585a9900000 +#60: xsmindp 41232585a9900000,41382511a2000000 => 41232585a9900000 +#61: xsmindp 7ff7ffffffffffff,7ff8000000000000 => 7fffffffffffffff +#62: xsmindp 7ff8000000000000,7ff8000000000000 => 7ff8000000000000 +#63: xsmindp 7ff8000000000000,fff8000000000000 => 7ff8000000000000 + +#0: xscvdpsxws 3fd8000000000000 => 0000000000000000 +#1: xscvdpsxws 404f000000000000 => 000000000000003e +#2: xscvdpsxws 0018000000b77501 => 0000000000000000 +#3: xscvdpsxws 7fe800000000051b => 000000007fffffff +#4: xscvdpsxws 0123214569900000 => 0000000000000000 +#5: xscvdpsxws 0000000000000000 => 0000000000000000 +#6: xscvdpsxws 8000000000000000 => 0000000000000000 +#7: xscvdpsxws 7ff0000000000000 => 000000007fffffff +#8: xscvdpsxws fff0000000000000 => 0000000080000000 +#9: xscvdpsxws 7ff7ffffffffffff => 0000000080000000 +#10: xscvdpsxws fff7ffffffffffff => 0000000080000000 +#11: xscvdpsxws 7ff8000000000000 => 0000000080000000 +#12: xscvdpsxws fff8000000000000 => 0000000080000000 +#13: xscvdpsxws 8008340000078000 => 0000000000000000 +#14: xscvdpsxws c0d0650f5a07b353 => 00000000ffffbe6c +#15: xscvdpsxws 41232585a9900000 => 00000000000992c2 +#16: xscvdpsxws 41382511a2000000 => 0000000000182511 + +#0: xscvdpuxds 3fd8000000000000 => 0000000000000000 +#1: xscvdpuxds 404f000000000000 => 000000000000003e +#2: xscvdpuxds 0018000000b77501 => 0000000000000000 +#3: xscvdpuxds 7fe800000000051b => ffffffffffffffff +#4: xscvdpuxds 0123214569900000 => 0000000000000000 +#5: xscvdpuxds 0000000000000000 => 0000000000000000 +#6: xscvdpuxds 8000000000000000 => 0000000000000000 +#7: xscvdpuxds 7ff0000000000000 => ffffffffffffffff +#8: xscvdpuxds fff0000000000000 => 0000000000000000 +#9: xscvdpuxds 7ff7ffffffffffff => 0000000000000000 +#10: xscvdpuxds fff7ffffffffffff => 0000000000000000 +#11: xscvdpuxds 7ff8000000000000 => 0000000000000000 +#12: xscvdpuxds fff8000000000000 => 0000000000000000 +#13: xscvdpuxds 8008340000078000 => 0000000000000000 +#14: xscvdpuxds c0d0650f5a07b353 => 0000000000000000 +#15: xscvdpuxds 41232585a9900000 => 00000000000992c2 +#16: xscvdpuxds 41382511a2000000 => 0000000000182511 + diff --git a/none/tests/ppc32/test_isa_2_06_part2.vgtest b/none/tests/ppc32/test_isa_2_06_part2.vgtest new file mode 100644 index 0000000000..7ae01beb87 --- /dev/null +++ b/none/tests/ppc32/test_isa_2_06_part2.vgtest @@ -0,0 +1,2 @@ +prereq: ../../../tests/check_isa-2_06_cap +prog: test_isa_2_06_part2 diff --git a/none/tests/ppc64/Makefile.am b/none/tests/ppc64/Makefile.am index 61b9bd1c23..363b7f0896 100644 --- a/none/tests/ppc64/Makefile.am +++ b/none/tests/ppc64/Makefile.am @@ -15,10 +15,12 @@ EXTRA_DIST = \ tw_td.stderr.exp tw_td.stdout.exp tw_td.vgtest \ power6_bcmp.stderr.exp power6_bcmp.stdout.exp power6_bcmp.vgtest \ power6_mf_gpr.stderr.exp power6_mf_gpr.stdout.exp power6_mf_gpr.vgtest \ - test_isa_2_06_part1.stderr.exp test_isa_2_06_part1.stdout.exp test_isa_2_06_part1.vgtest + test_isa_2_06_part1.stderr.exp test_isa_2_06_part1.stdout.exp test_isa_2_06_part1.vgtest \ + test_isa_2_06_part2.stderr.exp test_isa_2_06_part2.stdout.exp test_isa_2_06_part2.vgtest check_PROGRAMS = \ - jm-insns lsw round std_reg_imm twi_tdi tw_td power6_bcmp power6_mf_gpr test_isa_2_06_part1 + jm-insns lsw round std_reg_imm twi_tdi tw_td power6_bcmp power6_mf_gpr test_isa_2_06_part1 \ + test_isa_2_06_part2 AM_CFLAGS += @FLAG_M64@ AM_CXXFLAGS += @FLAG_M64@ @@ -41,6 +43,9 @@ endif test_isa_2_06_part1_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(VSX_FLAG) \ @FLAG_M64@ $(ALTIVEC_FLAG) $(BUILD_FLAG_VSX) +test_isa_2_06_part2_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames $(VSX_FLAG) \ + @FLAG_M64@ $(ALTIVEC_FLAG) $(BUILD_FLAG_VSX) + jm_insns_CFLAGS = $(AM_CFLAGS) -Winline -Wall -O -g -mregnames -maltivec \ @FLAG_M64@ $(ALTIVEC_FLAG) diff --git a/none/tests/ppc64/test_isa_2_06_part2.c b/none/tests/ppc64/test_isa_2_06_part2.c new file mode 120000 index 0000000000..e86c1a07ab --- /dev/null +++ b/none/tests/ppc64/test_isa_2_06_part2.c @@ -0,0 +1 @@ +../../../none/tests/ppc32/test_isa_2_06_part2.c \ No newline at end of file diff --git a/none/tests/ppc64/test_isa_2_06_part2.stderr.exp b/none/tests/ppc64/test_isa_2_06_part2.stderr.exp new file mode 100644 index 0000000000..139597f9cb --- /dev/null +++ b/none/tests/ppc64/test_isa_2_06_part2.stderr.exp @@ -0,0 +1,2 @@ + + diff --git a/none/tests/ppc64/test_isa_2_06_part2.stdout.exp b/none/tests/ppc64/test_isa_2_06_part2.stdout.exp new file mode 100644 index 0000000000..4c9b43935f --- /dev/null +++ b/none/tests/ppc64/test_isa_2_06_part2.stdout.exp @@ -0,0 +1,1763 @@ +Test VSX vector single arg instructions +#0: xvresp 1/x(3ec00000) ==> PASS; 1/x(42780000) ==> PASS; 1/x(00000000) ==> PASS; 1/x(7f800000) ==> PASS +#1: xvresp 1/x(00000000) ==> PASS; 1/x(00000000) ==> PASS; 1/x(80000000) ==> PASS; 1/x(7f800000) ==> PASS +#2: xvresp 1/x(ff800000) ==> PASS; 1/x(7fffffff) ==> PASS; 1/x(ffffffff) ==> PASS; 1/x(7fc00000) ==> PASS +#3: xvresp 1/x(ffc00000) ==> PASS; 1/x(80000000) ==> PASS; 1/x(c683287b) ==> PASS; 1/x(49192c2d) ==> PASS + +#0: xvcvdpsxws conv(3fd8000000000000) = 0000000000000000; conv(404f000000000000) = 000000000000003e +#1: xvcvdpsxws conv(0018000000b77501) = 0000000000000000; conv(7fe800000000051b) = 000000007fffffff +#2: xvcvdpsxws conv(0123214569900000) = 0000000000000000; conv(0000000000000000) = 0000000000000000 +#3: xvcvdpsxws conv(8000000000000000) = 0000000000000000; conv(7ff0000000000000) = 000000007fffffff +#4: xvcvdpsxws conv(fff0000000000000) = 0000000080000000; conv(7ff7ffffffffffff) = 0000000080000000 +#5: xvcvdpsxws conv(fff7ffffffffffff) = 0000000080000000; conv(7ff8000000000000) = 0000000080000000 +#6: xvcvdpsxws conv(fff8000000000000) = 0000000080000000; conv(8008340000078000) = 0000000000000000 +#7: xvcvdpsxws conv(c0d0650f5a07b353) = 00000000ffffbe6c; conv(41232585a9900000) = 00000000000992c2 + +#0: xvcvspsxws conv(3ec00000) = 00000000; conv(42780000) = 0000003e; conv(00000000) = 00000000; conv(7f800000) = 7fffffff +#1: xvcvspsxws conv(00000000) = 00000000; conv(00000000) = 00000000; conv(80000000) = 00000000; conv(7f800000) = 7fffffff +#2: xvcvspsxws conv(ff800000) = 80000000; conv(7fffffff) = 80000000; conv(ffffffff) = 80000000; conv(7fc00000) = 80000000 +#3: xvcvspsxws conv(ffc00000) = 80000000; conv(80000000) = 00000000; conv(c683287b) = ffffbe6c; conv(49192c2d) = 000992c2 + +Test VSX floating point compare and basic arithmetic instructions +#0: xvcmpeqdp fff0000000000000 eq fff0000000000000 AND fff0000000000000 eq c0d0650f5a07b353 ? cc=0 => ffffffffffffffff 0000000000000000 +#1: xvcmpeqdp fff0000000000000 eq 8000000000000000 AND fff0000000000000 eq 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#2: xvcmpeqdp fff0000000000000 eq 0123214569900000 AND fff0000000000000 eq 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#3: xvcmpeqdp fff0000000000000 eq 7ff7ffffffffffff AND fff0000000000000 eq 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#4: xvcmpeqdp c0d0650f5a07b353 eq fff0000000000000 AND c0d0650f5a07b353 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 ffffffffffffffff +#5: xvcmpeqdp c0d0650f5a07b353 eq 8000000000000000 AND c0d0650f5a07b353 eq 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#6: xvcmpeqdp c0d0650f5a07b353 eq 0123214569900000 AND c0d0650f5a07b353 eq 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#7: xvcmpeqdp c0d0650f5a07b353 eq 7ff7ffffffffffff AND c0d0650f5a07b353 eq 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#8: xvcmpeqdp 8000000000000000 eq fff0000000000000 AND 8000000000000000 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#9: xvcmpeqdp 8000000000000000 eq 8000000000000000 AND 8000000000000000 eq 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#10: xvcmpeqdp 8000000000000000 eq 0123214569900000 AND 8000000000000000 eq 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#11: xvcmpeqdp 8000000000000000 eq 7ff7ffffffffffff AND 8000000000000000 eq 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#12: xvcmpeqdp 0000000000000000 eq fff0000000000000 AND 0000000000000000 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#13: xvcmpeqdp 0000000000000000 eq 8000000000000000 AND 0000000000000000 eq 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#14: xvcmpeqdp 0000000000000000 eq 0123214569900000 AND 0000000000000000 eq 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#15: xvcmpeqdp 0000000000000000 eq 7ff7ffffffffffff AND 0000000000000000 eq 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#16: xvcmpeqdp 0123214569900000 eq fff0000000000000 AND 0123214569900000 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#17: xvcmpeqdp 0123214569900000 eq 8000000000000000 AND 0123214569900000 eq 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#18: xvcmpeqdp 0123214569900000 eq 404f000000000000 AND 0123214569900000 eq 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#19: xvcmpeqdp 0123214569900000 eq 7ff7ffffffffffff AND 0123214569900000 eq 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#20: xvcmpeqdp 7ff0000000000000 eq fff0000000000000 AND 7ff0000000000000 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#21: xvcmpeqdp 7ff0000000000000 eq 8000000000000000 AND 7ff0000000000000 eq 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#22: xvcmpeqdp 7ff0000000000000 eq 0123214569900000 AND 7ff0000000000000 eq 7ff0000000000000 ? cc=0 => 0000000000000000 ffffffffffffffff +#23: xvcmpeqdp 7ff0000000000000 eq 7ff7ffffffffffff AND 7ff0000000000000 eq 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#24: xvcmpeqdp fff7ffffffffffff eq fff0000000000000 AND fff7ffffffffffff eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#25: xvcmpeqdp fff7ffffffffffff eq 8000000000000000 AND fff7ffffffffffff eq 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#26: xvcmpeqdp fff7ffffffffffff eq 0123214569900000 AND fff7ffffffffffff eq 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#27: xvcmpeqdp fff7ffffffffffff eq 7ff7ffffffffffff AND fff7ffffffffffff eq fff7ffffffffffff ? cc=0 => 0000000000000000 0000000000000000 +#28: xvcmpeqdp fff8000000000000 eq fff0000000000000 AND fff8000000000000 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#29: xvcmpeqdp fff8000000000000 eq 8000000000000000 AND fff8000000000000 eq 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#30: xvcmpeqdp 404f000000000000 eq 404f000000000000 AND 0018000000b77501 eq 0018000000b77501 ? cc=0 => ffffffffffffffff ffffffffffffffff +#31: xvcmpeqdp 7fe800000000051b eq 7fe800000000051b AND 0123214569900000 eq 0123214569900000 ? cc=0 => ffffffffffffffff ffffffffffffffff + +#0: xvcmpeqdp. fff0000000000000 eq fff0000000000000 AND fff0000000000000 eq c0d0650f5a07b353 ? cc=0 => ffffffffffffffff 0000000000000000 +#1: xvcmpeqdp. fff0000000000000 eq 8000000000000000 AND fff0000000000000 eq 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#2: xvcmpeqdp. fff0000000000000 eq 0123214569900000 AND fff0000000000000 eq 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#3: xvcmpeqdp. fff0000000000000 eq 7ff7ffffffffffff AND fff0000000000000 eq 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#4: xvcmpeqdp. c0d0650f5a07b353 eq fff0000000000000 AND c0d0650f5a07b353 eq c0d0650f5a07b353 ? cc=0 => 0000000000000000 ffffffffffffffff +#5: xvcmpeqdp. c0d0650f5a07b353 eq 8000000000000000 AND c0d0650f5a07b353 eq 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#6: xvcmpeqdp. c0d0650f5a07b353 eq 0123214569900000 AND c0d0650f5a07b353 eq 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#7: xvcmpeqdp. c0d0650f5a07b353 eq 7ff7ffffffffffff AND c0d0650f5a07b353 eq 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#8: xvcmpeqdp. 8000000000000000 eq fff0000000000000 AND 8000000000000000 eq c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#9: xvcmpeqdp. 8000000000000000 eq 8000000000000000 AND 8000000000000000 eq 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#10: xvcmpeqdp. 8000000000000000 eq 0123214569900000 AND 8000000000000000 eq 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#11: xvcmpeqdp. 8000000000000000 eq 7ff7ffffffffffff AND 8000000000000000 eq 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#12: xvcmpeqdp. 0000000000000000 eq fff0000000000000 AND 0000000000000000 eq c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#13: xvcmpeqdp. 0000000000000000 eq 8000000000000000 AND 0000000000000000 eq 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#14: xvcmpeqdp. 0000000000000000 eq 0123214569900000 AND 0000000000000000 eq 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#15: xvcmpeqdp. 0000000000000000 eq 7ff7ffffffffffff AND 0000000000000000 eq 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#16: xvcmpeqdp. 0123214569900000 eq fff0000000000000 AND 0123214569900000 eq c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#17: xvcmpeqdp. 0123214569900000 eq 8000000000000000 AND 0123214569900000 eq 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#18: xvcmpeqdp. 0123214569900000 eq 404f000000000000 AND 0123214569900000 eq 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#19: xvcmpeqdp. 0123214569900000 eq 7ff7ffffffffffff AND 0123214569900000 eq 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#20: xvcmpeqdp. 7ff0000000000000 eq fff0000000000000 AND 7ff0000000000000 eq c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#21: xvcmpeqdp. 7ff0000000000000 eq 8000000000000000 AND 7ff0000000000000 eq 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#22: xvcmpeqdp. 7ff0000000000000 eq 0123214569900000 AND 7ff0000000000000 eq 7ff0000000000000 ? cc=0 => 0000000000000000 ffffffffffffffff +#23: xvcmpeqdp. 7ff0000000000000 eq 7ff7ffffffffffff AND 7ff0000000000000 eq 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#24: xvcmpeqdp. fff7ffffffffffff eq fff0000000000000 AND fff7ffffffffffff eq c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#25: xvcmpeqdp. fff7ffffffffffff eq 8000000000000000 AND fff7ffffffffffff eq 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#26: xvcmpeqdp. fff7ffffffffffff eq 0123214569900000 AND fff7ffffffffffff eq 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#27: xvcmpeqdp. fff7ffffffffffff eq 7ff7ffffffffffff AND fff7ffffffffffff eq fff7ffffffffffff ? cc=2 => 0000000000000000 0000000000000000 +#28: xvcmpeqdp. fff8000000000000 eq fff0000000000000 AND fff8000000000000 eq c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#29: xvcmpeqdp. fff8000000000000 eq 8000000000000000 AND fff8000000000000 eq 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#30: xvcmpeqdp. 404f000000000000 eq 404f000000000000 AND 0018000000b77501 eq 0018000000b77501 ? cc=8 => ffffffffffffffff ffffffffffffffff +#31: xvcmpeqdp. 7fe800000000051b eq 7fe800000000051b AND 0123214569900000 eq 0123214569900000 ? cc=8 => ffffffffffffffff ffffffffffffffff + + +#0: xvcmpgedp fff0000000000000 ge fff0000000000000 AND fff0000000000000 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff 0000000000000000 +#1: xvcmpgedp fff0000000000000 ge 8000000000000000 AND fff0000000000000 ge 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#2: xvcmpgedp fff0000000000000 ge 0123214569900000 AND fff0000000000000 ge 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#3: xvcmpgedp fff0000000000000 ge 7ff7ffffffffffff AND fff0000000000000 ge 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#4: xvcmpgedp c0d0650f5a07b353 ge fff0000000000000 AND c0d0650f5a07b353 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#5: xvcmpgedp c0d0650f5a07b353 ge 8000000000000000 AND c0d0650f5a07b353 ge 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#6: xvcmpgedp c0d0650f5a07b353 ge 0123214569900000 AND c0d0650f5a07b353 ge 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#7: xvcmpgedp c0d0650f5a07b353 ge 7ff7ffffffffffff AND c0d0650f5a07b353 ge 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#8: xvcmpgedp 8000000000000000 ge fff0000000000000 AND 8000000000000000 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#9: xvcmpgedp 8000000000000000 ge 8000000000000000 AND 8000000000000000 ge 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#10: xvcmpgedp 8000000000000000 ge 0123214569900000 AND 8000000000000000 ge 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#11: xvcmpgedp 8000000000000000 ge 7ff7ffffffffffff AND 8000000000000000 ge 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#12: xvcmpgedp 0000000000000000 ge fff0000000000000 AND 0000000000000000 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#13: xvcmpgedp 0000000000000000 ge 8000000000000000 AND 0000000000000000 ge 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#14: xvcmpgedp 0000000000000000 ge 0123214569900000 AND 0000000000000000 ge 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#15: xvcmpgedp 0000000000000000 ge 7ff7ffffffffffff AND 0000000000000000 ge 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#16: xvcmpgedp 0123214569900000 ge fff0000000000000 AND 0123214569900000 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#17: xvcmpgedp 0123214569900000 ge 8000000000000000 AND 0123214569900000 ge 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#18: xvcmpgedp 0123214569900000 ge 404f000000000000 AND 0123214569900000 ge 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#19: xvcmpgedp 0123214569900000 ge 7ff7ffffffffffff AND 0123214569900000 ge 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#20: xvcmpgedp 7ff0000000000000 ge fff0000000000000 AND 7ff0000000000000 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#21: xvcmpgedp 7ff0000000000000 ge 8000000000000000 AND 7ff0000000000000 ge 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#22: xvcmpgedp 7ff0000000000000 ge 0123214569900000 AND 7ff0000000000000 ge 7ff0000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#23: xvcmpgedp 7ff0000000000000 ge 7ff7ffffffffffff AND 7ff0000000000000 ge 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#24: xvcmpgedp fff7ffffffffffff ge fff0000000000000 AND fff7ffffffffffff ge c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#25: xvcmpgedp fff7ffffffffffff ge 8000000000000000 AND fff7ffffffffffff ge 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#26: xvcmpgedp fff7ffffffffffff ge 0123214569900000 AND fff7ffffffffffff ge 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#27: xvcmpgedp fff7ffffffffffff ge 7ff7ffffffffffff AND fff7ffffffffffff ge fff7ffffffffffff ? cc=0 => 0000000000000000 0000000000000000 +#28: xvcmpgedp fff8000000000000 ge fff0000000000000 AND fff8000000000000 ge c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#29: xvcmpgedp fff8000000000000 ge 8000000000000000 AND fff8000000000000 ge 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#30: xvcmpgedp 404f000000000000 ge 404f000000000000 AND 0018000000b77501 ge 0018000000b77501 ? cc=0 => ffffffffffffffff ffffffffffffffff +#31: xvcmpgedp 7fe800000000051b ge 7fe800000000051b AND 0123214569900000 ge 0123214569900000 ? cc=0 => ffffffffffffffff ffffffffffffffff + +#0: xvcmpgedp. fff0000000000000 ge fff0000000000000 AND fff0000000000000 ge c0d0650f5a07b353 ? cc=0 => ffffffffffffffff 0000000000000000 +#1: xvcmpgedp. fff0000000000000 ge 8000000000000000 AND fff0000000000000 ge 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#2: xvcmpgedp. fff0000000000000 ge 0123214569900000 AND fff0000000000000 ge 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#3: xvcmpgedp. fff0000000000000 ge 7ff7ffffffffffff AND fff0000000000000 ge 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#4: xvcmpgedp. c0d0650f5a07b353 ge fff0000000000000 AND c0d0650f5a07b353 ge c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#5: xvcmpgedp. c0d0650f5a07b353 ge 8000000000000000 AND c0d0650f5a07b353 ge 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#6: xvcmpgedp. c0d0650f5a07b353 ge 0123214569900000 AND c0d0650f5a07b353 ge 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#7: xvcmpgedp. c0d0650f5a07b353 ge 7ff7ffffffffffff AND c0d0650f5a07b353 ge 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#8: xvcmpgedp. 8000000000000000 ge fff0000000000000 AND 8000000000000000 ge c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#9: xvcmpgedp. 8000000000000000 ge 8000000000000000 AND 8000000000000000 ge 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#10: xvcmpgedp. 8000000000000000 ge 0123214569900000 AND 8000000000000000 ge 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#11: xvcmpgedp. 8000000000000000 ge 7ff7ffffffffffff AND 8000000000000000 ge 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#12: xvcmpgedp. 0000000000000000 ge fff0000000000000 AND 0000000000000000 ge c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#13: xvcmpgedp. 0000000000000000 ge 8000000000000000 AND 0000000000000000 ge 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#14: xvcmpgedp. 0000000000000000 ge 0123214569900000 AND 0000000000000000 ge 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#15: xvcmpgedp. 0000000000000000 ge 7ff7ffffffffffff AND 0000000000000000 ge 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#16: xvcmpgedp. 0123214569900000 ge fff0000000000000 AND 0123214569900000 ge c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#17: xvcmpgedp. 0123214569900000 ge 8000000000000000 AND 0123214569900000 ge 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#18: xvcmpgedp. 0123214569900000 ge 404f000000000000 AND 0123214569900000 ge 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#19: xvcmpgedp. 0123214569900000 ge 7ff7ffffffffffff AND 0123214569900000 ge 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#20: xvcmpgedp. 7ff0000000000000 ge fff0000000000000 AND 7ff0000000000000 ge c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#21: xvcmpgedp. 7ff0000000000000 ge 8000000000000000 AND 7ff0000000000000 ge 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#22: xvcmpgedp. 7ff0000000000000 ge 0123214569900000 AND 7ff0000000000000 ge 7ff0000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#23: xvcmpgedp. 7ff0000000000000 ge 7ff7ffffffffffff AND 7ff0000000000000 ge 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#24: xvcmpgedp. fff7ffffffffffff ge fff0000000000000 AND fff7ffffffffffff ge c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#25: xvcmpgedp. fff7ffffffffffff ge 8000000000000000 AND fff7ffffffffffff ge 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#26: xvcmpgedp. fff7ffffffffffff ge 0123214569900000 AND fff7ffffffffffff ge 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#27: xvcmpgedp. fff7ffffffffffff ge 7ff7ffffffffffff AND fff7ffffffffffff ge fff7ffffffffffff ? cc=2 => 0000000000000000 0000000000000000 +#28: xvcmpgedp. fff8000000000000 ge fff0000000000000 AND fff8000000000000 ge c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#29: xvcmpgedp. fff8000000000000 ge 8000000000000000 AND fff8000000000000 ge 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#30: xvcmpgedp. 404f000000000000 ge 404f000000000000 AND 0018000000b77501 ge 0018000000b77501 ? cc=8 => ffffffffffffffff ffffffffffffffff +#31: xvcmpgedp. 7fe800000000051b ge 7fe800000000051b AND 0123214569900000 ge 0123214569900000 ? cc=8 => ffffffffffffffff ffffffffffffffff + + +#0: xvcmpgtdp fff0000000000000 gt fff0000000000000 AND fff0000000000000 gt c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#1: xvcmpgtdp fff0000000000000 gt 8000000000000000 AND fff0000000000000 gt 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#2: xvcmpgtdp fff0000000000000 gt 0123214569900000 AND fff0000000000000 gt 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#3: xvcmpgtdp fff0000000000000 gt 7ff7ffffffffffff AND fff0000000000000 gt 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#4: xvcmpgtdp c0d0650f5a07b353 gt fff0000000000000 AND c0d0650f5a07b353 gt c0d0650f5a07b353 ? cc=0 => ffffffffffffffff 0000000000000000 +#5: xvcmpgtdp c0d0650f5a07b353 gt 8000000000000000 AND c0d0650f5a07b353 gt 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#6: xvcmpgtdp c0d0650f5a07b353 gt 0123214569900000 AND c0d0650f5a07b353 gt 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#7: xvcmpgtdp c0d0650f5a07b353 gt 7ff7ffffffffffff AND c0d0650f5a07b353 gt 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#8: xvcmpgtdp 8000000000000000 gt fff0000000000000 AND 8000000000000000 gt c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#9: xvcmpgtdp 8000000000000000 gt 8000000000000000 AND 8000000000000000 gt 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#10: xvcmpgtdp 8000000000000000 gt 0123214569900000 AND 8000000000000000 gt 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#11: xvcmpgtdp 8000000000000000 gt 7ff7ffffffffffff AND 8000000000000000 gt 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#12: xvcmpgtdp 0000000000000000 gt fff0000000000000 AND 0000000000000000 gt c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#13: xvcmpgtdp 0000000000000000 gt 8000000000000000 AND 0000000000000000 gt 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#14: xvcmpgtdp 0000000000000000 gt 0123214569900000 AND 0000000000000000 gt 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#15: xvcmpgtdp 0000000000000000 gt 7ff7ffffffffffff AND 0000000000000000 gt 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#16: xvcmpgtdp 0123214569900000 gt fff0000000000000 AND 0123214569900000 gt c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#17: xvcmpgtdp 0123214569900000 gt 8000000000000000 AND 0123214569900000 gt 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#18: xvcmpgtdp 0123214569900000 gt 404f000000000000 AND 0123214569900000 gt 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#19: xvcmpgtdp 0123214569900000 gt 7ff7ffffffffffff AND 0123214569900000 gt 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#20: xvcmpgtdp 7ff0000000000000 gt fff0000000000000 AND 7ff0000000000000 gt c0d0650f5a07b353 ? cc=0 => ffffffffffffffff ffffffffffffffff +#21: xvcmpgtdp 7ff0000000000000 gt 8000000000000000 AND 7ff0000000000000 gt 0000000000000000 ? cc=0 => ffffffffffffffff ffffffffffffffff +#22: xvcmpgtdp 7ff0000000000000 gt 0123214569900000 AND 7ff0000000000000 gt 7ff0000000000000 ? cc=0 => ffffffffffffffff 0000000000000000 +#23: xvcmpgtdp 7ff0000000000000 gt 7ff7ffffffffffff AND 7ff0000000000000 gt 7ff8000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#24: xvcmpgtdp fff7ffffffffffff gt fff0000000000000 AND fff7ffffffffffff gt c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#25: xvcmpgtdp fff7ffffffffffff gt 8000000000000000 AND fff7ffffffffffff gt 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#26: xvcmpgtdp fff7ffffffffffff gt 0123214569900000 AND fff7ffffffffffff gt 7ff0000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#27: xvcmpgtdp fff7ffffffffffff gt 7ff7ffffffffffff AND fff7ffffffffffff gt fff7ffffffffffff ? cc=0 => 0000000000000000 0000000000000000 +#28: xvcmpgtdp fff8000000000000 gt fff0000000000000 AND fff8000000000000 gt c0d0650f5a07b353 ? cc=0 => 0000000000000000 0000000000000000 +#29: xvcmpgtdp fff8000000000000 gt 8000000000000000 AND fff8000000000000 gt 0000000000000000 ? cc=0 => 0000000000000000 0000000000000000 +#30: xvcmpgtdp 404f000000000000 gt 404f000000000000 AND 0018000000b77501 gt 0018000000b77501 ? cc=0 => 0000000000000000 0000000000000000 +#31: xvcmpgtdp 7fe800000000051b gt 7fe800000000051b AND 0123214569900000 gt 0123214569900000 ? cc=0 => 0000000000000000 0000000000000000 + +#0: xvcmpgtdp. fff0000000000000 gt fff0000000000000 AND fff0000000000000 gt c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#1: xvcmpgtdp. fff0000000000000 gt 8000000000000000 AND fff0000000000000 gt 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#2: xvcmpgtdp. fff0000000000000 gt 0123214569900000 AND fff0000000000000 gt 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#3: xvcmpgtdp. fff0000000000000 gt 7ff7ffffffffffff AND fff0000000000000 gt 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#4: xvcmpgtdp. c0d0650f5a07b353 gt fff0000000000000 AND c0d0650f5a07b353 gt c0d0650f5a07b353 ? cc=0 => ffffffffffffffff 0000000000000000 +#5: xvcmpgtdp. c0d0650f5a07b353 gt 8000000000000000 AND c0d0650f5a07b353 gt 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#6: xvcmpgtdp. c0d0650f5a07b353 gt 0123214569900000 AND c0d0650f5a07b353 gt 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#7: xvcmpgtdp. c0d0650f5a07b353 gt 7ff7ffffffffffff AND c0d0650f5a07b353 gt 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#8: xvcmpgtdp. 8000000000000000 gt fff0000000000000 AND 8000000000000000 gt c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#9: xvcmpgtdp. 8000000000000000 gt 8000000000000000 AND 8000000000000000 gt 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#10: xvcmpgtdp. 8000000000000000 gt 0123214569900000 AND 8000000000000000 gt 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#11: xvcmpgtdp. 8000000000000000 gt 7ff7ffffffffffff AND 8000000000000000 gt 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#12: xvcmpgtdp. 0000000000000000 gt fff0000000000000 AND 0000000000000000 gt c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#13: xvcmpgtdp. 0000000000000000 gt 8000000000000000 AND 0000000000000000 gt 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#14: xvcmpgtdp. 0000000000000000 gt 0123214569900000 AND 0000000000000000 gt 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#15: xvcmpgtdp. 0000000000000000 gt 7ff7ffffffffffff AND 0000000000000000 gt 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#16: xvcmpgtdp. 0123214569900000 gt fff0000000000000 AND 0123214569900000 gt c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#17: xvcmpgtdp. 0123214569900000 gt 8000000000000000 AND 0123214569900000 gt 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#18: xvcmpgtdp. 0123214569900000 gt 404f000000000000 AND 0123214569900000 gt 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#19: xvcmpgtdp. 0123214569900000 gt 7ff7ffffffffffff AND 0123214569900000 gt 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#20: xvcmpgtdp. 7ff0000000000000 gt fff0000000000000 AND 7ff0000000000000 gt c0d0650f5a07b353 ? cc=8 => ffffffffffffffff ffffffffffffffff +#21: xvcmpgtdp. 7ff0000000000000 gt 8000000000000000 AND 7ff0000000000000 gt 0000000000000000 ? cc=8 => ffffffffffffffff ffffffffffffffff +#22: xvcmpgtdp. 7ff0000000000000 gt 0123214569900000 AND 7ff0000000000000 gt 7ff0000000000000 ? cc=0 => ffffffffffffffff 0000000000000000 +#23: xvcmpgtdp. 7ff0000000000000 gt 7ff7ffffffffffff AND 7ff0000000000000 gt 7ff8000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#24: xvcmpgtdp. fff7ffffffffffff gt fff0000000000000 AND fff7ffffffffffff gt c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#25: xvcmpgtdp. fff7ffffffffffff gt 8000000000000000 AND fff7ffffffffffff gt 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#26: xvcmpgtdp. fff7ffffffffffff gt 0123214569900000 AND fff7ffffffffffff gt 7ff0000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#27: xvcmpgtdp. fff7ffffffffffff gt 7ff7ffffffffffff AND fff7ffffffffffff gt fff7ffffffffffff ? cc=2 => 0000000000000000 0000000000000000 +#28: xvcmpgtdp. fff8000000000000 gt fff0000000000000 AND fff8000000000000 gt c0d0650f5a07b353 ? cc=2 => 0000000000000000 0000000000000000 +#29: xvcmpgtdp. fff8000000000000 gt 8000000000000000 AND fff8000000000000 gt 0000000000000000 ? cc=2 => 0000000000000000 0000000000000000 +#30: xvcmpgtdp. 404f000000000000 gt 404f000000000000 AND 0018000000b77501 gt 0018000000b77501 ? cc=2 => 0000000000000000 0000000000000000 +#31: xvcmpgtdp. 7fe800000000051b gt 7fe800000000051b AND 0123214569900000 gt 0123214569900000 ? cc=2 => 0000000000000000 0000000000000000 + + +#0: xvcmpeqsp ff800000 eq ff800000 AND ff800000 eq c683287b AND ff800000 eq 80000000 AND ff800000 eq 00000000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#1: xvcmpeqsp ff800000 eq 00000000 AND ff800000 eq 7f800000 AND ff800000 eq 7fffffff AND ff800000 eq 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#2: xvcmpeqsp c683287b eq ff800000 AND c683287b eq c683287b AND c683287b eq 80000000 AND c683287b eq 00000000 ? cc=0 => 00000000 ffffffff 00000000 00000000 +#3: xvcmpeqsp c683287b eq 00000000 AND c683287b eq 7f800000 AND c683287b eq 7fffffff AND c683287b eq 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#4: xvcmpeqsp 80000000 eq ff800000 AND 80000000 eq c683287b AND 80000000 eq 80000000 AND 80000000 eq 00000000 ? cc=0 => 00000000 00000000 ffffffff ffffffff +#5: xvcmpeqsp 80000000 eq 00000000 AND 80000000 eq 7f800000 AND 80000000 eq 7fffffff AND 80000000 eq 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#6: xvcmpeqsp 00000000 eq ff800000 AND 00000000 eq c683287b AND 00000000 eq 80000000 AND 00000000 eq 00000000 ? cc=0 => 00000000 00000000 ffffffff ffffffff +#7: xvcmpeqsp 00000000 eq 00000000 AND 00000000 eq 7f800000 AND 00000000 eq 7fffffff AND 00000000 eq 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#8: xvcmpeqsp 00000000 eq ff800000 AND 00000000 eq c683287b AND 00000000 eq 80000000 AND 00000000 eq 00000000 ? cc=0 => 00000000 00000000 ffffffff ffffffff +#9: xvcmpeqsp 00000000 eq 42780000 AND 00000000 eq 7f800000 AND 00000000 eq 7fffffff AND 00000000 eq 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#10: xvcmpeqsp 7f800000 eq ff800000 AND 7f800000 eq c683287b AND 7f800000 eq 80000000 AND 7f800000 eq 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#11: xvcmpeqsp 7f800000 eq 00000000 AND 7f800000 eq 7f800000 AND 7f800000 eq 7fffffff AND 7f800000 eq 7fc00000 ? cc=0 => 00000000 ffffffff 00000000 00000000 +#12: xvcmpeqsp ffffffff eq ff800000 AND ffffffff eq c683287b AND ffffffff eq 80000000 AND ffffffff eq 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#13: xvcmpeqsp ffffffff eq 00000000 AND ffffffff eq 7f800000 AND ffffffff eq 7fffffff AND ffffffff eq ffffffff ? cc=0 => 00000000 00000000 00000000 00000000 +#14: xvcmpeqsp ffc00000 eq ff800000 AND ffc00000 eq c683287b AND ffc00000 eq 80000000 AND ffc00000 eq 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#15: xvcmpeqsp 42780000 eq 42780000 AND 00000000 eq 00000000 AND 7f800000 eq 7f800000 AND 00000000 eq 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff + +#0: xvcmpeqsp. ff800000 eq ff800000 AND ff800000 eq c683287b AND ff800000 eq 80000000 AND ff800000 eq 00000000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#1: xvcmpeqsp. ff800000 eq 00000000 AND ff800000 eq 7f800000 AND ff800000 eq 7fffffff AND ff800000 eq 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#2: xvcmpeqsp. c683287b eq ff800000 AND c683287b eq c683287b AND c683287b eq 80000000 AND c683287b eq 00000000 ? cc=0 => 00000000 ffffffff 00000000 00000000 +#3: xvcmpeqsp. c683287b eq 00000000 AND c683287b eq 7f800000 AND c683287b eq 7fffffff AND c683287b eq 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#4: xvcmpeqsp. 80000000 eq ff800000 AND 80000000 eq c683287b AND 80000000 eq 80000000 AND 80000000 eq 00000000 ? cc=0 => 00000000 00000000 ffffffff ffffffff +#5: xvcmpeqsp. 80000000 eq 00000000 AND 80000000 eq 7f800000 AND 80000000 eq 7fffffff AND 80000000 eq 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#6: xvcmpeqsp. 00000000 eq ff800000 AND 00000000 eq c683287b AND 00000000 eq 80000000 AND 00000000 eq 00000000 ? cc=0 => 00000000 00000000 ffffffff ffffffff +#7: xvcmpeqsp. 00000000 eq 00000000 AND 00000000 eq 7f800000 AND 00000000 eq 7fffffff AND 00000000 eq 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#8: xvcmpeqsp. 00000000 eq ff800000 AND 00000000 eq c683287b AND 00000000 eq 80000000 AND 00000000 eq 00000000 ? cc=0 => 00000000 00000000 ffffffff ffffffff +#9: xvcmpeqsp. 00000000 eq 42780000 AND 00000000 eq 7f800000 AND 00000000 eq 7fffffff AND 00000000 eq 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#10: xvcmpeqsp. 7f800000 eq ff800000 AND 7f800000 eq c683287b AND 7f800000 eq 80000000 AND 7f800000 eq 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#11: xvcmpeqsp. 7f800000 eq 00000000 AND 7f800000 eq 7f800000 AND 7f800000 eq 7fffffff AND 7f800000 eq 7fc00000 ? cc=0 => 00000000 ffffffff 00000000 00000000 +#12: xvcmpeqsp. ffffffff eq ff800000 AND ffffffff eq c683287b AND ffffffff eq 80000000 AND ffffffff eq 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#13: xvcmpeqsp. ffffffff eq 00000000 AND ffffffff eq 7f800000 AND ffffffff eq 7fffffff AND ffffffff eq ffffffff ? cc=2 => 00000000 00000000 00000000 00000000 +#14: xvcmpeqsp. ffc00000 eq ff800000 AND ffc00000 eq c683287b AND ffc00000 eq 80000000 AND ffc00000 eq 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#15: xvcmpeqsp. 42780000 eq 42780000 AND 00000000 eq 00000000 AND 7f800000 eq 7f800000 AND 00000000 eq 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff + + +#0: xvcmpgesp ff800000 ge ff800000 AND ff800000 ge c683287b AND ff800000 ge 80000000 AND ff800000 ge 00000000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#1: xvcmpgesp ff800000 ge 00000000 AND ff800000 ge 7f800000 AND ff800000 ge 7fffffff AND ff800000 ge 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#2: xvcmpgesp c683287b ge ff800000 AND c683287b ge c683287b AND c683287b ge 80000000 AND c683287b ge 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#3: xvcmpgesp c683287b ge 00000000 AND c683287b ge 7f800000 AND c683287b ge 7fffffff AND c683287b ge 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#4: xvcmpgesp 80000000 ge ff800000 AND 80000000 ge c683287b AND 80000000 ge 80000000 AND 80000000 ge 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff +#5: xvcmpgesp 80000000 ge 00000000 AND 80000000 ge 7f800000 AND 80000000 ge 7fffffff AND 80000000 ge 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#6: xvcmpgesp 00000000 ge ff800000 AND 00000000 ge c683287b AND 00000000 ge 80000000 AND 00000000 ge 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff +#7: xvcmpgesp 00000000 ge 00000000 AND 00000000 ge 7f800000 AND 00000000 ge 7fffffff AND 00000000 ge 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#8: xvcmpgesp 00000000 ge ff800000 AND 00000000 ge c683287b AND 00000000 ge 80000000 AND 00000000 ge 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff +#9: xvcmpgesp 00000000 ge 42780000 AND 00000000 ge 7f800000 AND 00000000 ge 7fffffff AND 00000000 ge 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#10: xvcmpgesp 7f800000 ge ff800000 AND 7f800000 ge c683287b AND 7f800000 ge 80000000 AND 7f800000 ge 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff +#11: xvcmpgesp 7f800000 ge 00000000 AND 7f800000 ge 7f800000 AND 7f800000 ge 7fffffff AND 7f800000 ge 7fc00000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#12: xvcmpgesp ffffffff ge ff800000 AND ffffffff ge c683287b AND ffffffff ge 80000000 AND ffffffff ge 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#13: xvcmpgesp ffffffff ge 00000000 AND ffffffff ge 7f800000 AND ffffffff ge 7fffffff AND ffffffff ge ffffffff ? cc=0 => 00000000 00000000 00000000 00000000 +#14: xvcmpgesp ffc00000 ge ff800000 AND ffc00000 ge c683287b AND ffc00000 ge 80000000 AND ffc00000 ge 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#15: xvcmpgesp 42780000 ge 42780000 AND 00000000 ge 00000000 AND 7f800000 ge 7f800000 AND 00000000 ge 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff + +#0: xvcmpgesp. ff800000 ge ff800000 AND ff800000 ge c683287b AND ff800000 ge 80000000 AND ff800000 ge 00000000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#1: xvcmpgesp. ff800000 ge 00000000 AND ff800000 ge 7f800000 AND ff800000 ge 7fffffff AND ff800000 ge 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#2: xvcmpgesp. c683287b ge ff800000 AND c683287b ge c683287b AND c683287b ge 80000000 AND c683287b ge 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#3: xvcmpgesp. c683287b ge 00000000 AND c683287b ge 7f800000 AND c683287b ge 7fffffff AND c683287b ge 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#4: xvcmpgesp. 80000000 ge ff800000 AND 80000000 ge c683287b AND 80000000 ge 80000000 AND 80000000 ge 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff +#5: xvcmpgesp. 80000000 ge 00000000 AND 80000000 ge 7f800000 AND 80000000 ge 7fffffff AND 80000000 ge 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#6: xvcmpgesp. 00000000 ge ff800000 AND 00000000 ge c683287b AND 00000000 ge 80000000 AND 00000000 ge 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff +#7: xvcmpgesp. 00000000 ge 00000000 AND 00000000 ge 7f800000 AND 00000000 ge 7fffffff AND 00000000 ge 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#8: xvcmpgesp. 00000000 ge ff800000 AND 00000000 ge c683287b AND 00000000 ge 80000000 AND 00000000 ge 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff +#9: xvcmpgesp. 00000000 ge 42780000 AND 00000000 ge 7f800000 AND 00000000 ge 7fffffff AND 00000000 ge 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#10: xvcmpgesp. 7f800000 ge ff800000 AND 7f800000 ge c683287b AND 7f800000 ge 80000000 AND 7f800000 ge 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff +#11: xvcmpgesp. 7f800000 ge 00000000 AND 7f800000 ge 7f800000 AND 7f800000 ge 7fffffff AND 7f800000 ge 7fc00000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#12: xvcmpgesp. ffffffff ge ff800000 AND ffffffff ge c683287b AND ffffffff ge 80000000 AND ffffffff ge 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#13: xvcmpgesp. ffffffff ge 00000000 AND ffffffff ge 7f800000 AND ffffffff ge 7fffffff AND ffffffff ge ffffffff ? cc=2 => 00000000 00000000 00000000 00000000 +#14: xvcmpgesp. ffc00000 ge ff800000 AND ffc00000 ge c683287b AND ffc00000 ge 80000000 AND ffc00000 ge 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#15: xvcmpgesp. 42780000 ge 42780000 AND 00000000 ge 00000000 AND 7f800000 ge 7f800000 AND 00000000 ge 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff + + +#0: xvcmpgtsp ff800000 gt ff800000 AND ff800000 gt c683287b AND ff800000 gt 80000000 AND ff800000 gt 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#1: xvcmpgtsp ff800000 gt 00000000 AND ff800000 gt 7f800000 AND ff800000 gt 7fffffff AND ff800000 gt 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#2: xvcmpgtsp c683287b gt ff800000 AND c683287b gt c683287b AND c683287b gt 80000000 AND c683287b gt 00000000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#3: xvcmpgtsp c683287b gt 00000000 AND c683287b gt 7f800000 AND c683287b gt 7fffffff AND c683287b gt 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#4: xvcmpgtsp 80000000 gt ff800000 AND 80000000 gt c683287b AND 80000000 gt 80000000 AND 80000000 gt 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#5: xvcmpgtsp 80000000 gt 00000000 AND 80000000 gt 7f800000 AND 80000000 gt 7fffffff AND 80000000 gt 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#6: xvcmpgtsp 00000000 gt ff800000 AND 00000000 gt c683287b AND 00000000 gt 80000000 AND 00000000 gt 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#7: xvcmpgtsp 00000000 gt 00000000 AND 00000000 gt 7f800000 AND 00000000 gt 7fffffff AND 00000000 gt 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#8: xvcmpgtsp 00000000 gt ff800000 AND 00000000 gt c683287b AND 00000000 gt 80000000 AND 00000000 gt 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#9: xvcmpgtsp 00000000 gt 42780000 AND 00000000 gt 7f800000 AND 00000000 gt 7fffffff AND 00000000 gt 7fc00000 ? cc=0 => 00000000 00000000 00000000 00000000 +#10: xvcmpgtsp 7f800000 gt ff800000 AND 7f800000 gt c683287b AND 7f800000 gt 80000000 AND 7f800000 gt 00000000 ? cc=0 => ffffffff ffffffff ffffffff ffffffff +#11: xvcmpgtsp 7f800000 gt 00000000 AND 7f800000 gt 7f800000 AND 7f800000 gt 7fffffff AND 7f800000 gt 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#12: xvcmpgtsp ffffffff gt ff800000 AND ffffffff gt c683287b AND ffffffff gt 80000000 AND ffffffff gt 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#13: xvcmpgtsp ffffffff gt 00000000 AND ffffffff gt 7f800000 AND ffffffff gt 7fffffff AND ffffffff gt ffffffff ? cc=0 => 00000000 00000000 00000000 00000000 +#14: xvcmpgtsp ffc00000 gt ff800000 AND ffc00000 gt c683287b AND ffc00000 gt 80000000 AND ffc00000 gt 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 +#15: xvcmpgtsp 42780000 gt 42780000 AND 00000000 gt 00000000 AND 7f800000 gt 7f800000 AND 00000000 gt 00000000 ? cc=0 => 00000000 00000000 00000000 00000000 + +#0: xvcmpgtsp. ff800000 gt ff800000 AND ff800000 gt c683287b AND ff800000 gt 80000000 AND ff800000 gt 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#1: xvcmpgtsp. ff800000 gt 00000000 AND ff800000 gt 7f800000 AND ff800000 gt 7fffffff AND ff800000 gt 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#2: xvcmpgtsp. c683287b gt ff800000 AND c683287b gt c683287b AND c683287b gt 80000000 AND c683287b gt 00000000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#3: xvcmpgtsp. c683287b gt 00000000 AND c683287b gt 7f800000 AND c683287b gt 7fffffff AND c683287b gt 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#4: xvcmpgtsp. 80000000 gt ff800000 AND 80000000 gt c683287b AND 80000000 gt 80000000 AND 80000000 gt 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#5: xvcmpgtsp. 80000000 gt 00000000 AND 80000000 gt 7f800000 AND 80000000 gt 7fffffff AND 80000000 gt 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#6: xvcmpgtsp. 00000000 gt ff800000 AND 00000000 gt c683287b AND 00000000 gt 80000000 AND 00000000 gt 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#7: xvcmpgtsp. 00000000 gt 00000000 AND 00000000 gt 7f800000 AND 00000000 gt 7fffffff AND 00000000 gt 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#8: xvcmpgtsp. 00000000 gt ff800000 AND 00000000 gt c683287b AND 00000000 gt 80000000 AND 00000000 gt 00000000 ? cc=0 => ffffffff ffffffff 00000000 00000000 +#9: xvcmpgtsp. 00000000 gt 42780000 AND 00000000 gt 7f800000 AND 00000000 gt 7fffffff AND 00000000 gt 7fc00000 ? cc=2 => 00000000 00000000 00000000 00000000 +#10: xvcmpgtsp. 7f800000 gt ff800000 AND 7f800000 gt c683287b AND 7f800000 gt 80000000 AND 7f800000 gt 00000000 ? cc=8 => ffffffff ffffffff ffffffff ffffffff +#11: xvcmpgtsp. 7f800000 gt 00000000 AND 7f800000 gt 7f800000 AND 7f800000 gt 7fffffff AND 7f800000 gt 7fc00000 ? cc=0 => ffffffff 00000000 00000000 00000000 +#12: xvcmpgtsp. ffffffff gt ff800000 AND ffffffff gt c683287b AND ffffffff gt 80000000 AND ffffffff gt 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#13: xvcmpgtsp. ffffffff gt 00000000 AND ffffffff gt 7f800000 AND ffffffff gt 7fffffff AND ffffffff gt ffffffff ? cc=2 => 00000000 00000000 00000000 00000000 +#14: xvcmpgtsp. ffc00000 gt ff800000 AND ffc00000 gt c683287b AND ffc00000 gt 80000000 AND ffc00000 gt 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 +#15: xvcmpgtsp. 42780000 gt 42780000 AND 00000000 gt 00000000 AND 7f800000 gt 7f800000 AND 00000000 gt 00000000 ? cc=2 => 00000000 00000000 00000000 00000000 + + +#0: xvadddp fff0000000000000 + fff0000000000000 AND fff0000000000000 + c0d0650f5a07b353 => fff0000000000000 fff0000000000000 +#1: xvadddp 41232585a9900000 + 41382511a2000000 AND fff0000000000000 + 0000000000000000 => 4140dbea3b640000 fff0000000000000 +#2: xvadddp fff0000000000000 + 0123214569900000 AND fff0000000000000 + 7ff0000000000000 => fff0000000000000 7ff8000000000000 +#3: xvadddp fff0000000000000 + 7ff7ffffffffffff AND fff0000000000000 + 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#4: xvadddp c0d0650f5a07b353 + fff0000000000000 AND c0d0650f5a07b353 + c0d0650f5a07b353 => fff0000000000000 c0e0650f5a07b353 +#5: xvadddp c0d0650f5a07b353 + 8000000000000000 AND c0d0650f5a07b353 + 0000000000000000 => c0d0650f5a07b353 c0d0650f5a07b353 +#6: xvadddp c0d0650f5a07b353 + 0123214569900000 AND c0d0650f5a07b353 + 7ff0000000000000 => c0d0650f5a07b353 7ff0000000000000 +#7: xvadddp c0d0650f5a07b353 + 7ff7ffffffffffff AND c0d0650f5a07b353 + 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#8: xvadddp 8000000000000000 + fff0000000000000 AND 8000000000000000 + c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#9: xvadddp 8000000000000000 + 8000000000000000 AND 8000000000000000 + 0000000000000000 => 8000000000000000 0000000000000000 +#10: xvadddp 8000000000000000 + 0123214569900000 AND 8000000000000000 + 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#11: xvadddp 8000000000000000 + 7ff7ffffffffffff AND 8000000000000000 + 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#12: xvadddp 0000000000000000 + fff0000000000000 AND 0000000000000000 + c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#13: xvadddp 0000000000000000 + 8000000000000000 AND 0000000000000000 + 0000000000000000 => 0000000000000000 0000000000000000 +#14: xvadddp 0000000000000000 + 0123214569900000 AND 0000000000000000 + 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#15: xvadddp 0000000000000000 + 7ff7ffffffffffff AND 0000000000000000 + 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#16: xvadddp 0123214569900000 + fff0000000000000 AND 0123214569900000 + c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#17: xvadddp 0123214569900000 + 8000000000000000 AND 0123214569900000 + 0000000000000000 => 0123214569900000 0123214569900000 +#18: xvadddp 0123214569900000 + 404f000000000000 AND 0123214569900000 + 7ff0000000000000 => 404f000000000000 7ff0000000000000 +#19: xvadddp 0123214569900000 + 7ff7ffffffffffff AND 0123214569900000 + 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#20: xvadddp 7ff0000000000000 + fff0000000000000 AND 7ff0000000000000 + c0d0650f5a07b353 => 7ff8000000000000 7ff0000000000000 +#21: xvadddp 7ff0000000000000 + 8000000000000000 AND 7ff0000000000000 + 0000000000000000 => 7ff0000000000000 7ff0000000000000 +#22: xvadddp 7ff0000000000000 + 0123214569900000 AND 7ff0000000000000 + 7ff0000000000000 => 7ff0000000000000 7ff0000000000000 +#23: xvadddp 7ff0000000000000 + 7ff7ffffffffffff AND 7ff0000000000000 + 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#24: xvadddp fff7ffffffffffff + fff0000000000000 AND fff7ffffffffffff + c0d0650f5a07b353 => ffffffffffffffff ffffffffffffffff +#25: xvadddp fff8000000000000 + 8000000000000000 AND fff8000000000000 + 0000000000000000 => fff8000000000000 fff8000000000000 +#26: xvadddp fff7ffffffffffff + 0123214569900000 AND fff7ffffffffffff + 7ff0000000000000 => ffffffffffffffff ffffffffffffffff +#27: xvadddp fff7ffffffffffff + 7ff7ffffffffffff AND fff7ffffffffffff + 7ff8000000000000 => ffffffffffffffff ffffffffffffffff +#28: xvadddp fff8000000000000 + fff0000000000000 AND fff8000000000000 + c0d0650f5a07b353 => fff8000000000000 fff8000000000000 +#29: xvadddp fff8000000000000 + 8000000000000000 AND 41232585a9900000 + 41382511a2000000 => fff8000000000000 4140dbea3b640000 +#30: xvadddp 41232585a9900000 + 41382511a2000000 AND 7ff7ffffffffffff + 7ff8000000000000 => 4140dbea3b640000 7fffffffffffffff +#31: xvadddp 7ff8000000000000 + 7ff8000000000000 AND 7ff8000000000000 + fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvaddsp ff800000 + ff800000 AND ff800000 + c683287b AND 49192c2d + 49c1288d AND ff800000 + 00000000 => ff800000 ff800000 4a06df52 ff800000 +#1: xvaddsp ff800000 + 00000000 AND ff800000 + 7f800000 AND ff800000 + 7fffffff AND ff800000 + 7fc00000 => ff800000 7fc00000 7fffffff 7fc00000 +#2: xvaddsp c683287b + ff800000 AND c683287b + c683287b AND c683287b + 80000000 AND c683287b + 00000000 => ff800000 c703287b c683287b c683287b +#3: xvaddsp c683287b + 00000000 AND c683287b + 7f800000 AND c683287b + 7fffffff AND c683287b + 7fc00000 => c683287b 7f800000 7fffffff 7fc00000 +#4: xvaddsp 80000000 + ff800000 AND 80000000 + c683287b AND 80000000 + 80000000 AND 80000000 + 00000000 => ff800000 c683287b 80000000 00000000 +#5: xvaddsp 80000000 + 00000000 AND 80000000 + 7f800000 AND 80000000 + 7fffffff AND 80000000 + 7fc00000 => 00000000 7f800000 7fffffff 7fc00000 +#6: xvaddsp 00000000 + ff800000 AND 00000000 + c683287b AND 00000000 + 80000000 AND 00000000 + 00000000 => ff800000 c683287b 00000000 00000000 +#7: xvaddsp 00000000 + 00000000 AND 00000000 + 7f800000 AND 00000000 + 7fffffff AND 00000000 + 7fc00000 => 00000000 7f800000 7fffffff 7fc00000 +#8: xvaddsp 00000000 + ff800000 AND 00000000 + c683287b AND 00000000 + 80000000 AND 00000000 + 00000000 => ff800000 c683287b 00000000 00000000 +#9: xvaddsp 00000000 + 42780000 AND 00000000 + 7f800000 AND 00000000 + 7fffffff AND 00000000 + 7fc00000 => 42780000 7f800000 7fffffff 7fc00000 +#10: xvaddsp 7f800000 + ff800000 AND 7f800000 + c683287b AND 7f800000 + 80000000 AND 7f800000 + 00000000 => 7fc00000 7f800000 7f800000 7f800000 +#11: xvaddsp 7f800000 + 00000000 AND 7f800000 + 7f800000 AND 7f800000 + 7fffffff AND 7f800000 + 7fc00000 => 7f800000 7f800000 7fffffff 7fc00000 +#12: xvaddsp ffffffff + ff800000 AND ffffffff + c683287b AND ffc00000 + 80000000 AND ffc00000 + 00000000 => ffffffff ffffffff ffc00000 ffc00000 +#13: xvaddsp ffffffff + 00000000 AND ffffffff + 7f800000 AND ffffffff + 7fffffff AND ffffffff + 7fc00000 => ffffffff ffffffff ffffffff ffffffff +#14: xvaddsp ffc00000 + ff800000 AND ffc00000 + c683287b AND ffc00000 + 80000000 AND 49192c2d + 49c1288d => ffc00000 ffc00000 ffc00000 4a06df52 +#15: xvaddsp 49192c2d + 49c1288d AND 7fffffff + 7fc00000 AND 7fc00000 + 7fc00000 AND 7fc00000 + ffc00000 => 4a06df52 7fffffff 7fc00000 7fc00000 + + +#0: xvdivdp fff0000000000000 / fff0000000000000 AND fff0000000000000 / c0d0650f5a07b353 => 7ff8000000000000 7ff0000000000000 +#1: xvdivdp 41232585a9900000 / 41382511a2000000 AND fff0000000000000 / 0000000000000000 => 3fd9602b4fe7a892 fff0000000000000 +#2: xvdivdp fff0000000000000 / 0123214569900000 AND fff0000000000000 / 7ff0000000000000 => fff0000000000000 7ff8000000000000 +#3: xvdivdp fff0000000000000 / 7ff7ffffffffffff AND fff0000000000000 / 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#4: xvdivdp c0d0650f5a07b353 / fff0000000000000 AND c0d0650f5a07b353 / c0d0650f5a07b353 => 0000000000000000 3ff0000000000000 +#5: xvdivdp c0d0650f5a07b353 / 8000000000000000 AND c0d0650f5a07b353 / 0000000000000000 => 7ff0000000000000 fff0000000000000 +#6: xvdivdp c0d0650f5a07b353 / 0123214569900000 AND c0d0650f5a07b353 / 7ff0000000000000 => ff9b6cb57ca13c00 8000000000000000 +#7: xvdivdp c0d0650f5a07b353 / 7ff7ffffffffffff AND c0d0650f5a07b353 / 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#8: xvdivdp 8000000000000000 / fff0000000000000 AND 8000000000000000 / c0d0650f5a07b353 => 0000000000000000 0000000000000000 +#9: xvdivdp 8000000000000000 / 8000000000000000 AND 8000000000000000 / 0000000000000000 => 7ff8000000000000 7ff8000000000000 +#10: xvdivdp 8000000000000000 / 0123214569900000 AND 8000000000000000 / 7ff0000000000000 => 8000000000000000 8000000000000000 +#11: xvdivdp 8000000000000000 / 7ff7ffffffffffff AND 8000000000000000 / 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#12: xvdivdp 0000000000000000 / fff0000000000000 AND 0000000000000000 / c0d0650f5a07b353 => 8000000000000000 8000000000000000 +#13: xvdivdp 0000000000000000 / 8000000000000000 AND 0000000000000000 / 0000000000000000 => 7ff8000000000000 7ff8000000000000 +#14: xvdivdp 0000000000000000 / 0123214569900000 AND 0000000000000000 / 7ff0000000000000 => 0000000000000000 0000000000000000 +#15: xvdivdp 0000000000000000 / 7ff7ffffffffffff AND 0000000000000000 / 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#16: xvdivdp 0123214569900000 / fff0000000000000 AND 0123214569900000 / c0d0650f5a07b353 => 8000000000000000 8042ab59d8b6ec87 +#17: xvdivdp 0123214569900000 / 8000000000000000 AND 0123214569900000 / 0000000000000000 => fff0000000000000 7ff0000000000000 +#18: xvdivdp 0123214569900000 / 404f000000000000 AND 0123214569900000 / 7ff0000000000000 => 00c3bf3f64b5ad6b 0000000000000000 +#19: xvdivdp 0123214569900000 / 7ff7ffffffffffff AND 0123214569900000 / 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#20: xvdivdp 7ff0000000000000 / fff0000000000000 AND 7ff0000000000000 / c0d0650f5a07b353 => 7ff8000000000000 fff0000000000000 +#21: xvdivdp 7ff0000000000000 / 8000000000000000 AND 7ff0000000000000 / 0000000000000000 => fff0000000000000 7ff0000000000000 +#22: xvdivdp 7ff0000000000000 / 0123214569900000 AND 7ff0000000000000 / 7ff0000000000000 => 7ff0000000000000 7ff8000000000000 +#23: xvdivdp 7ff0000000000000 / 7ff7ffffffffffff AND 7ff0000000000000 / 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#24: xvdivdp fff7ffffffffffff / fff0000000000000 AND fff7ffffffffffff / c0d0650f5a07b353 => ffffffffffffffff ffffffffffffffff +#25: xvdivdp fff8000000000000 / 8000000000000000 AND fff8000000000000 / 0000000000000000 => fff8000000000000 fff8000000000000 +#26: xvdivdp fff7ffffffffffff / 0123214569900000 AND fff7ffffffffffff / 7ff0000000000000 => ffffffffffffffff ffffffffffffffff +#27: xvdivdp fff7ffffffffffff / 7ff7ffffffffffff AND fff7ffffffffffff / 7ff8000000000000 => ffffffffffffffff ffffffffffffffff +#28: xvdivdp fff8000000000000 / fff0000000000000 AND fff8000000000000 / c0d0650f5a07b353 => fff8000000000000 fff8000000000000 +#29: xvdivdp fff8000000000000 / 8000000000000000 AND 41232585a9900000 / 41382511a2000000 => fff8000000000000 3fd9602b4fe7a892 +#30: xvdivdp 41232585a9900000 / 41382511a2000000 AND 7ff7ffffffffffff / 7ff8000000000000 => 3fd9602b4fe7a892 7fffffffffffffff +#31: xvdivdp 7ff8000000000000 / 7ff8000000000000 AND 7ff8000000000000 / fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvdivsp ff800000 / ff800000 AND ff800000 / c683287b AND 49192c2d / 49c1288d AND ff800000 / 00000000 => 7fc00000 7f800000 3ecb015a ff800000 +#1: xvdivsp ff800000 / 00000000 AND ff800000 / 7f800000 AND ff800000 / 7fffffff AND ff800000 / 7fc00000 => ff800000 7fc00000 7fffffff 7fc00000 +#2: xvdivsp c683287b / ff800000 AND c683287b / c683287b AND c683287b / 80000000 AND c683287b / 00000000 => 00000000 3f800000 7f800000 ff800000 +#3: xvdivsp c683287b / 00000000 AND c683287b / 7f800000 AND c683287b / 7fffffff AND c683287b / 7fc00000 => ff800000 80000000 7fffffff 7fc00000 +#4: xvdivsp 80000000 / ff800000 AND 80000000 / c683287b AND 80000000 / 80000000 AND 80000000 / 00000000 => 00000000 00000000 7fc00000 7fc00000 +#5: xvdivsp 80000000 / 00000000 AND 80000000 / 7f800000 AND 80000000 / 7fffffff AND 80000000 / 7fc00000 => 7fc00000 80000000 7fffffff 7fc00000 +#6: xvdivsp 00000000 / ff800000 AND 00000000 / c683287b AND 00000000 / 80000000 AND 00000000 / 00000000 => 80000000 80000000 7fc00000 7fc00000 +#7: xvdivsp 00000000 / 00000000 AND 00000000 / 7f800000 AND 00000000 / 7fffffff AND 00000000 / 7fc00000 => 7fc00000 00000000 7fffffff 7fc00000 +#8: xvdivsp 00000000 / ff800000 AND 00000000 / c683287b AND 00000000 / 80000000 AND 00000000 / 00000000 => 80000000 80000000 7fc00000 7fc00000 +#9: xvdivsp 00000000 / 42780000 AND 00000000 / 7f800000 AND 00000000 / 7fffffff AND 00000000 / 7fc00000 => 00000000 00000000 7fffffff 7fc00000 +#10: xvdivsp 7f800000 / ff800000 AND 7f800000 / c683287b AND 7f800000 / 80000000 AND 7f800000 / 00000000 => 7fc00000 ff800000 ff800000 7f800000 +#11: xvdivsp 7f800000 / 00000000 AND 7f800000 / 7f800000 AND 7f800000 / 7fffffff AND 7f800000 / 7fc00000 => 7f800000 7fc00000 7fffffff 7fc00000 +#12: xvdivsp ffffffff / ff800000 AND ffffffff / c683287b AND ffc00000 / 80000000 AND ffc00000 / 00000000 => ffffffff ffffffff ffc00000 ffc00000 +#13: xvdivsp ffffffff / 00000000 AND ffffffff / 7f800000 AND ffffffff / 7fffffff AND ffffffff / 7fc00000 => ffffffff ffffffff ffffffff ffffffff +#14: xvdivsp ffc00000 / ff800000 AND ffc00000 / c683287b AND ffc00000 / 80000000 AND 49192c2d / 49c1288d => ffc00000 ffc00000 ffc00000 3ecb015a +#15: xvdivsp 49192c2d / 49c1288d AND 7fffffff / 7fc00000 AND 7fc00000 / 7fc00000 AND 7fc00000 / ffc00000 => 3ecb015a 7fffffff 7fc00000 7fc00000 + + +#0: xvmuldp fff0000000000000 * fff0000000000000 AND fff0000000000000 * c0d0650f5a07b353 => 7ff0000000000000 7ff0000000000000 +#1: xvmuldp 41232585a9900000 * 41382511a2000000 AND fff0000000000000 * 0000000000000000 => 426ce4a45d2a0a7e 7ff8000000000000 +#2: xvmuldp fff0000000000000 * 0123214569900000 AND fff0000000000000 * 7ff0000000000000 => fff0000000000000 fff0000000000000 +#3: xvmuldp fff0000000000000 * 7ff7ffffffffffff AND fff0000000000000 * 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#4: xvmuldp c0d0650f5a07b353 * fff0000000000000 AND c0d0650f5a07b353 * c0d0650f5a07b353 => 7ff0000000000000 41b0cc9d05eec2a7 +#5: xvmuldp c0d0650f5a07b353 * 8000000000000000 AND c0d0650f5a07b353 * 0000000000000000 => 0000000000000000 8000000000000000 +#6: xvmuldp c0d0650f5a07b353 * 0123214569900000 AND c0d0650f5a07b353 * 7ff0000000000000 => 82039a19ca8fcb5f fff0000000000000 +#7: xvmuldp c0d0650f5a07b353 * 7ff7ffffffffffff AND c0d0650f5a07b353 * 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#8: xvmuldp 8000000000000000 * fff0000000000000 AND 8000000000000000 * c0d0650f5a07b353 => 7ff8000000000000 0000000000000000 +#9: xvmuldp 8000000000000000 * 8000000000000000 AND 8000000000000000 * 0000000000000000 => 0000000000000000 8000000000000000 +#10: xvmuldp 8000000000000000 * 0123214569900000 AND 8000000000000000 * 7ff0000000000000 => 8000000000000000 7ff8000000000000 +#11: xvmuldp 8000000000000000 * 7ff7ffffffffffff AND 8000000000000000 * 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#12: xvmuldp 0000000000000000 * fff0000000000000 AND 0000000000000000 * c0d0650f5a07b353 => 7ff8000000000000 8000000000000000 +#13: xvmuldp 0000000000000000 * 8000000000000000 AND 0000000000000000 * 0000000000000000 => 8000000000000000 0000000000000000 +#14: xvmuldp 0000000000000000 * 0123214569900000 AND 0000000000000000 * 7ff0000000000000 => 0000000000000000 7ff8000000000000 +#15: xvmuldp 0000000000000000 * 7ff7ffffffffffff AND 0000000000000000 * 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#16: xvmuldp 0123214569900000 * fff0000000000000 AND 0123214569900000 * c0d0650f5a07b353 => fff0000000000000 82039a19ca8fcb5f +#17: xvmuldp 0123214569900000 * 8000000000000000 AND 0123214569900000 * 0000000000000000 => 8000000000000000 0000000000000000 +#18: xvmuldp 0123214569900000 * 404f000000000000 AND 0123214569900000 * 7ff0000000000000 => 0182883b3e438000 7ff0000000000000 +#19: xvmuldp 0123214569900000 * 7ff7ffffffffffff AND 0123214569900000 * 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#20: xvmuldp 7ff0000000000000 * fff0000000000000 AND 7ff0000000000000 * c0d0650f5a07b353 => fff0000000000000 fff0000000000000 +#21: xvmuldp 7ff0000000000000 * 8000000000000000 AND 7ff0000000000000 * 0000000000000000 => 7ff8000000000000 7ff8000000000000 +#22: xvmuldp 7ff0000000000000 * 0123214569900000 AND 7ff0000000000000 * 7ff0000000000000 => 7ff0000000000000 7ff0000000000000 +#23: xvmuldp 7ff0000000000000 * 7ff7ffffffffffff AND 7ff0000000000000 * 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#24: xvmuldp fff7ffffffffffff * fff0000000000000 AND fff7ffffffffffff * c0d0650f5a07b353 => ffffffffffffffff ffffffffffffffff +#25: xvmuldp fff8000000000000 * 8000000000000000 AND fff8000000000000 * 0000000000000000 => fff8000000000000 fff8000000000000 +#26: xvmuldp fff7ffffffffffff * 0123214569900000 AND fff7ffffffffffff * 7ff0000000000000 => ffffffffffffffff ffffffffffffffff +#27: xvmuldp fff7ffffffffffff * 7ff7ffffffffffff AND fff7ffffffffffff * 7ff8000000000000 => ffffffffffffffff ffffffffffffffff +#28: xvmuldp fff8000000000000 * fff0000000000000 AND fff8000000000000 * c0d0650f5a07b353 => fff8000000000000 fff8000000000000 +#29: xvmuldp fff8000000000000 * 8000000000000000 AND 41232585a9900000 * 41382511a2000000 => fff8000000000000 426ce4a45d2a0a7e +#30: xvmuldp 41232585a9900000 * 41382511a2000000 AND 7ff7ffffffffffff * 7ff8000000000000 => 426ce4a45d2a0a7e 7fffffffffffffff +#31: xvmuldp 7ff8000000000000 * 7ff8000000000000 AND 7ff8000000000000 * fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvmulsp ff800000 * ff800000 AND ff800000 * c683287b AND 49192c2d * 49c1288d AND ff800000 * 00000000 => 7f800000 7f800000 53672522 7fc00000 +#1: xvmulsp ff800000 * 00000000 AND ff800000 * 7f800000 AND ff800000 * 7fffffff AND ff800000 * 7fc00000 => 7fc00000 ff800000 7fffffff 7fc00000 +#2: xvmulsp c683287b * ff800000 AND c683287b * c683287b AND c683287b * 80000000 AND c683287b * 00000000 => 7f800000 4d8664e9 00000000 80000000 +#3: xvmulsp c683287b * 00000000 AND c683287b * 7f800000 AND c683287b * 7fffffff AND c683287b * 7fc00000 => 80000000 ff800000 7fffffff 7fc00000 +#4: xvmulsp 80000000 * ff800000 AND 80000000 * c683287b AND 80000000 * 80000000 AND 80000000 * 00000000 => 7fc00000 00000000 00000000 80000000 +#5: xvmulsp 80000000 * 00000000 AND 80000000 * 7f800000 AND 80000000 * 7fffffff AND 80000000 * 7fc00000 => 80000000 7fc00000 7fffffff 7fc00000 +#6: xvmulsp 00000000 * ff800000 AND 00000000 * c683287b AND 00000000 * 80000000 AND 00000000 * 00000000 => 7fc00000 80000000 80000000 00000000 +#7: xvmulsp 00000000 * 00000000 AND 00000000 * 7f800000 AND 00000000 * 7fffffff AND 00000000 * 7fc00000 => 00000000 7fc00000 7fffffff 7fc00000 +#8: xvmulsp 00000000 * ff800000 AND 00000000 * c683287b AND 00000000 * 80000000 AND 00000000 * 00000000 => 7fc00000 80000000 80000000 00000000 +#9: xvmulsp 00000000 * 42780000 AND 00000000 * 7f800000 AND 00000000 * 7fffffff AND 00000000 * 7fc00000 => 00000000 7fc00000 7fffffff 7fc00000 +#10: xvmulsp 7f800000 * ff800000 AND 7f800000 * c683287b AND 7f800000 * 80000000 AND 7f800000 * 00000000 => ff800000 ff800000 7fc00000 7fc00000 +#11: xvmulsp 7f800000 * 00000000 AND 7f800000 * 7f800000 AND 7f800000 * 7fffffff AND 7f800000 * 7fc00000 => 7fc00000 7f800000 7fffffff 7fc00000 +#12: xvmulsp ffffffff * ff800000 AND ffffffff * c683287b AND ffc00000 * 80000000 AND ffc00000 * 00000000 => ffffffff ffffffff ffc00000 ffc00000 +#13: xvmulsp ffffffff * 00000000 AND ffffffff * 7f800000 AND ffffffff * 7fffffff AND ffffffff * 7fc00000 => ffffffff ffffffff ffffffff ffffffff +#14: xvmulsp ffc00000 * ff800000 AND ffc00000 * c683287b AND ffc00000 * 80000000 AND 49192c2d * 49c1288d => ffc00000 ffc00000 ffc00000 53672522 +#15: xvmulsp 49192c2d * 49c1288d AND 7fffffff * 7fc00000 AND 7fc00000 * 7fc00000 AND 7fc00000 * ffc00000 => 53672522 7fffffff 7fc00000 7fc00000 + + +#0: xvsubdp fff0000000000000 - fff0000000000000 AND fff0000000000000 - c0d0650f5a07b353 => 7ff8000000000000 fff0000000000000 +#1: xvsubdp 41232585a9900000 - 41382511a2000000 AND fff0000000000000 - 0000000000000000 => c12d249d9a700000 fff0000000000000 +#2: xvsubdp fff0000000000000 - 0123214569900000 AND fff0000000000000 - 7ff0000000000000 => fff0000000000000 fff0000000000000 +#3: xvsubdp fff0000000000000 - 7ff7ffffffffffff AND fff0000000000000 - 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#4: xvsubdp c0d0650f5a07b353 - fff0000000000000 AND c0d0650f5a07b353 - c0d0650f5a07b353 => 7ff0000000000000 0000000000000000 +#5: xvsubdp c0d0650f5a07b353 - 8000000000000000 AND c0d0650f5a07b353 - 0000000000000000 => c0d0650f5a07b353 c0d0650f5a07b353 +#6: xvsubdp c0d0650f5a07b353 - 0123214569900000 AND c0d0650f5a07b353 - 7ff0000000000000 => c0d0650f5a07b353 fff0000000000000 +#7: xvsubdp c0d0650f5a07b353 - 7ff7ffffffffffff AND c0d0650f5a07b353 - 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#8: xvsubdp 8000000000000000 - fff0000000000000 AND 8000000000000000 - c0d0650f5a07b353 => 7ff0000000000000 40d0650f5a07b353 +#9: xvsubdp 8000000000000000 - 8000000000000000 AND 8000000000000000 - 0000000000000000 => 0000000000000000 8000000000000000 +#10: xvsubdp 8000000000000000 - 0123214569900000 AND 8000000000000000 - 7ff0000000000000 => 8123214569900000 fff0000000000000 +#11: xvsubdp 8000000000000000 - 7ff7ffffffffffff AND 8000000000000000 - 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#12: xvsubdp 0000000000000000 - fff0000000000000 AND 0000000000000000 - c0d0650f5a07b353 => 7ff0000000000000 40d0650f5a07b353 +#13: xvsubdp 0000000000000000 - 8000000000000000 AND 0000000000000000 - 0000000000000000 => 0000000000000000 0000000000000000 +#14: xvsubdp 0000000000000000 - 0123214569900000 AND 0000000000000000 - 7ff0000000000000 => 8123214569900000 fff0000000000000 +#15: xvsubdp 0000000000000000 - 7ff7ffffffffffff AND 0000000000000000 - 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#16: xvsubdp 0123214569900000 - fff0000000000000 AND 0123214569900000 - c0d0650f5a07b353 => 7ff0000000000000 40d0650f5a07b353 +#17: xvsubdp 0123214569900000 - 8000000000000000 AND 0123214569900000 - 0000000000000000 => 0123214569900000 0123214569900000 +#18: xvsubdp 0123214569900000 - 404f000000000000 AND 0123214569900000 - 7ff0000000000000 => c04f000000000000 fff0000000000000 +#19: xvsubdp 0123214569900000 - 7ff7ffffffffffff AND 0123214569900000 - 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#20: xvsubdp 7ff0000000000000 - fff0000000000000 AND 7ff0000000000000 - c0d0650f5a07b353 => 7ff0000000000000 7ff0000000000000 +#21: xvsubdp 7ff0000000000000 - 8000000000000000 AND 7ff0000000000000 - 0000000000000000 => 7ff0000000000000 7ff0000000000000 +#22: xvsubdp 7ff0000000000000 - 0123214569900000 AND 7ff0000000000000 - 7ff0000000000000 => 7ff0000000000000 7ff8000000000000 +#23: xvsubdp 7ff0000000000000 - 7ff7ffffffffffff AND 7ff0000000000000 - 7ff8000000000000 => 7fffffffffffffff 7ff8000000000000 +#24: xvsubdp fff7ffffffffffff - fff0000000000000 AND fff7ffffffffffff - c0d0650f5a07b353 => ffffffffffffffff ffffffffffffffff +#25: xvsubdp fff8000000000000 - 8000000000000000 AND fff8000000000000 - 0000000000000000 => fff8000000000000 fff8000000000000 +#26: xvsubdp fff7ffffffffffff - 0123214569900000 AND fff7ffffffffffff - 7ff0000000000000 => ffffffffffffffff ffffffffffffffff +#27: xvsubdp fff7ffffffffffff - 7ff7ffffffffffff AND fff7ffffffffffff - 7ff8000000000000 => ffffffffffffffff ffffffffffffffff +#28: xvsubdp fff8000000000000 - fff0000000000000 AND fff8000000000000 - c0d0650f5a07b353 => fff8000000000000 fff8000000000000 +#29: xvsubdp fff8000000000000 - 8000000000000000 AND 41232585a9900000 - 41382511a2000000 => fff8000000000000 c12d249d9a700000 +#30: xvsubdp 41232585a9900000 - 41382511a2000000 AND 7ff7ffffffffffff - 7ff8000000000000 => c12d249d9a700000 7fffffffffffffff +#31: xvsubdp 7ff8000000000000 - 7ff8000000000000 AND 7ff8000000000000 - fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvsubsp ff800000 - ff800000 AND ff800000 - c683287b AND 49192c2d - 49c1288d AND ff800000 - 00000000 => 7fc00000 ff800000 c96924ed ff800000 +#1: xvsubsp ff800000 - 00000000 AND ff800000 - 7f800000 AND ff800000 - 7fffffff AND ff800000 - 7fc00000 => ff800000 ff800000 7fffffff 7fc00000 +#2: xvsubsp c683287b - ff800000 AND c683287b - c683287b AND c683287b - 80000000 AND c683287b - 00000000 => 7f800000 00000000 c683287b c683287b +#3: xvsubsp c683287b - 00000000 AND c683287b - 7f800000 AND c683287b - 7fffffff AND c683287b - 7fc00000 => c683287b ff800000 7fffffff 7fc00000 +#4: xvsubsp 80000000 - ff800000 AND 80000000 - c683287b AND 80000000 - 80000000 AND 80000000 - 00000000 => 7f800000 4683287b 00000000 80000000 +#5: xvsubsp 80000000 - 00000000 AND 80000000 - 7f800000 AND 80000000 - 7fffffff AND 80000000 - 7fc00000 => 80000000 ff800000 7fffffff 7fc00000 +#6: xvsubsp 00000000 - ff800000 AND 00000000 - c683287b AND 00000000 - 80000000 AND 00000000 - 00000000 => 7f800000 4683287b 00000000 00000000 +#7: xvsubsp 00000000 - 00000000 AND 00000000 - 7f800000 AND 00000000 - 7fffffff AND 00000000 - 7fc00000 => 00000000 ff800000 7fffffff 7fc00000 +#8: xvsubsp 00000000 - ff800000 AND 00000000 - c683287b AND 00000000 - 80000000 AND 00000000 - 00000000 => 7f800000 4683287b 00000000 00000000 +#9: xvsubsp 00000000 - 42780000 AND 00000000 - 7f800000 AND 00000000 - 7fffffff AND 00000000 - 7fc00000 => c2780000 ff800000 7fffffff 7fc00000 +#10: xvsubsp 7f800000 - ff800000 AND 7f800000 - c683287b AND 7f800000 - 80000000 AND 7f800000 - 00000000 => 7f800000 7f800000 7f800000 7f800000 +#11: xvsubsp 7f800000 - 00000000 AND 7f800000 - 7f800000 AND 7f800000 - 7fffffff AND 7f800000 - 7fc00000 => 7f800000 7fc00000 7fffffff 7fc00000 +#12: xvsubsp ffffffff - ff800000 AND ffffffff - c683287b AND ffc00000 - 80000000 AND ffc00000 - 00000000 => ffffffff ffffffff ffc00000 ffc00000 +#13: xvsubsp ffffffff - 00000000 AND ffffffff - 7f800000 AND ffffffff - 7fffffff AND ffffffff - 7fc00000 => ffffffff ffffffff ffffffff ffffffff +#14: xvsubsp ffc00000 - ff800000 AND ffc00000 - c683287b AND ffc00000 - 80000000 AND 49192c2d - 49c1288d => ffc00000 ffc00000 ffc00000 c96924ed +#15: xvsubsp 49192c2d - 49c1288d AND 7fffffff - 7fc00000 AND 7fc00000 - 7fc00000 AND 7fc00000 - ffc00000 => c96924ed 7fffffff 7fc00000 7fc00000 + + +#0: xvmaxdp fff0000000000000 @max@ fff0000000000000 AND fff0000000000000 @max@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#1: xvmaxdp 41232585a9900000 @max@ 41382511a2000000 AND fff0000000000000 @max@ 0000000000000000 => 41382511a2000000 0000000000000000 +#2: xvmaxdp fff0000000000000 @max@ 0123214569900000 AND fff0000000000000 @max@ 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#3: xvmaxdp fff0000000000000 @max@ 7ff7ffffffffffff AND fff0000000000000 @max@ 7ff8000000000000 => 7fffffffffffffff fff0000000000000 +#4: xvmaxdp c0d0650f5a07b353 @max@ fff0000000000000 AND c0d0650f5a07b353 @max@ c0d0650f5a07b353 => c0d0650f5a07b353 c0d0650f5a07b353 +#5: xvmaxdp c0d0650f5a07b353 @max@ 8000000000000000 AND c0d0650f5a07b353 @max@ 0000000000000000 => 8000000000000000 0000000000000000 +#6: xvmaxdp c0d0650f5a07b353 @max@ 0123214569900000 AND c0d0650f5a07b353 @max@ 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#7: xvmaxdp c0d0650f5a07b353 @max@ 7ff7ffffffffffff AND c0d0650f5a07b353 @max@ 7ff8000000000000 => 7fffffffffffffff c0d0650f5a07b353 +#8: xvmaxdp 8000000000000000 @max@ fff0000000000000 AND 8000000000000000 @max@ c0d0650f5a07b353 => 8000000000000000 8000000000000000 +#9: xvmaxdp 8000000000000000 @max@ 8000000000000000 AND 8000000000000000 @max@ 0000000000000000 => 8000000000000000 0000000000000000 +#10: xvmaxdp 8000000000000000 @max@ 0123214569900000 AND 8000000000000000 @max@ 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#11: xvmaxdp 8000000000000000 @max@ 7ff7ffffffffffff AND 8000000000000000 @max@ 7ff8000000000000 => 7fffffffffffffff 8000000000000000 +#12: xvmaxdp 0000000000000000 @max@ fff0000000000000 AND 0000000000000000 @max@ c0d0650f5a07b353 => 0000000000000000 0000000000000000 +#13: xvmaxdp 0000000000000000 @max@ 8000000000000000 AND 0000000000000000 @max@ 0000000000000000 => 0000000000000000 0000000000000000 +#14: xvmaxdp 0000000000000000 @max@ 0123214569900000 AND 0000000000000000 @max@ 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#15: xvmaxdp 0000000000000000 @max@ 7ff7ffffffffffff AND 0000000000000000 @max@ 7ff8000000000000 => 7fffffffffffffff 0000000000000000 +#16: xvmaxdp 0123214569900000 @max@ fff0000000000000 AND 0123214569900000 @max@ c0d0650f5a07b353 => 0123214569900000 0123214569900000 +#17: xvmaxdp 0123214569900000 @max@ 8000000000000000 AND 0123214569900000 @max@ 0000000000000000 => 0123214569900000 0123214569900000 +#18: xvmaxdp 0123214569900000 @max@ 404f000000000000 AND 0123214569900000 @max@ 7ff0000000000000 => 404f000000000000 7ff0000000000000 +#19: xvmaxdp 0123214569900000 @max@ 7ff7ffffffffffff AND 0123214569900000 @max@ 7ff8000000000000 => 7fffffffffffffff 0123214569900000 +#20: xvmaxdp 7ff0000000000000 @max@ fff0000000000000 AND 7ff0000000000000 @max@ c0d0650f5a07b353 => 7ff0000000000000 7ff0000000000000 +#21: xvmaxdp 7ff0000000000000 @max@ 8000000000000000 AND 7ff0000000000000 @max@ 0000000000000000 => 7ff0000000000000 7ff0000000000000 +#22: xvmaxdp 7ff0000000000000 @max@ 0123214569900000 AND 7ff0000000000000 @max@ 7ff0000000000000 => 7ff0000000000000 7ff0000000000000 +#23: xvmaxdp 7ff0000000000000 @max@ 7ff7ffffffffffff AND 7ff0000000000000 @max@ 7ff8000000000000 => 7fffffffffffffff 7ff0000000000000 +#24: xvmaxdp fff7ffffffffffff @max@ fff0000000000000 AND fff7ffffffffffff @max@ c0d0650f5a07b353 => ffffffffffffffff ffffffffffffffff +#25: xvmaxdp fff8000000000000 @max@ 8000000000000000 AND fff8000000000000 @max@ 0000000000000000 => 8000000000000000 0000000000000000 +#26: xvmaxdp fff7ffffffffffff @max@ 0123214569900000 AND fff7ffffffffffff @max@ 7ff0000000000000 => ffffffffffffffff ffffffffffffffff +#27: xvmaxdp fff7ffffffffffff @max@ 7ff7ffffffffffff AND fff7ffffffffffff @max@ 7ff8000000000000 => ffffffffffffffff ffffffffffffffff +#28: xvmaxdp fff8000000000000 @max@ fff0000000000000 AND fff8000000000000 @max@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#29: xvmaxdp fff8000000000000 @max@ 8000000000000000 AND 41232585a9900000 @max@ 41382511a2000000 => 8000000000000000 41382511a2000000 +#30: xvmaxdp 41232585a9900000 @max@ 41382511a2000000 AND 7ff7ffffffffffff @max@ 7ff8000000000000 => 41382511a2000000 7fffffffffffffff +#31: xvmaxdp 7ff8000000000000 @max@ 7ff8000000000000 AND 7ff8000000000000 @max@ fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvmindp fff0000000000000 @min@ fff0000000000000 AND fff0000000000000 @min@ c0d0650f5a07b353 => fff0000000000000 fff0000000000000 +#1: xvmindp 41232585a9900000 @min@ 41382511a2000000 AND fff0000000000000 @min@ 0000000000000000 => 41232585a9900000 fff0000000000000 +#2: xvmindp fff0000000000000 @min@ 0123214569900000 AND fff0000000000000 @min@ 7ff0000000000000 => fff0000000000000 fff0000000000000 +#3: xvmindp fff0000000000000 @min@ 7ff7ffffffffffff AND fff0000000000000 @min@ 7ff8000000000000 => 7fffffffffffffff fff0000000000000 +#4: xvmindp c0d0650f5a07b353 @min@ fff0000000000000 AND c0d0650f5a07b353 @min@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#5: xvmindp c0d0650f5a07b353 @min@ 8000000000000000 AND c0d0650f5a07b353 @min@ 0000000000000000 => c0d0650f5a07b353 c0d0650f5a07b353 +#6: xvmindp c0d0650f5a07b353 @min@ 0123214569900000 AND c0d0650f5a07b353 @min@ 7ff0000000000000 => c0d0650f5a07b353 c0d0650f5a07b353 +#7: xvmindp c0d0650f5a07b353 @min@ 7ff7ffffffffffff AND c0d0650f5a07b353 @min@ 7ff8000000000000 => 7fffffffffffffff c0d0650f5a07b353 +#8: xvmindp 8000000000000000 @min@ fff0000000000000 AND 8000000000000000 @min@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#9: xvmindp 8000000000000000 @min@ 8000000000000000 AND 8000000000000000 @min@ 0000000000000000 => 8000000000000000 8000000000000000 +#10: xvmindp 8000000000000000 @min@ 0123214569900000 AND 8000000000000000 @min@ 7ff0000000000000 => 8000000000000000 8000000000000000 +#11: xvmindp 8000000000000000 @min@ 7ff7ffffffffffff AND 8000000000000000 @min@ 7ff8000000000000 => 7fffffffffffffff 8000000000000000 +#12: xvmindp 0000000000000000 @min@ fff0000000000000 AND 0000000000000000 @min@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#13: xvmindp 0000000000000000 @min@ 8000000000000000 AND 0000000000000000 @min@ 0000000000000000 => 8000000000000000 0000000000000000 +#14: xvmindp 0000000000000000 @min@ 0123214569900000 AND 0000000000000000 @min@ 7ff0000000000000 => 0000000000000000 0000000000000000 +#15: xvmindp 0000000000000000 @min@ 7ff7ffffffffffff AND 0000000000000000 @min@ 7ff8000000000000 => 7fffffffffffffff 0000000000000000 +#16: xvmindp 0123214569900000 @min@ fff0000000000000 AND 0123214569900000 @min@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#17: xvmindp 0123214569900000 @min@ 8000000000000000 AND 0123214569900000 @min@ 0000000000000000 => 8000000000000000 0000000000000000 +#18: xvmindp 0123214569900000 @min@ 404f000000000000 AND 0123214569900000 @min@ 7ff0000000000000 => 0123214569900000 0123214569900000 +#19: xvmindp 0123214569900000 @min@ 7ff7ffffffffffff AND 0123214569900000 @min@ 7ff8000000000000 => 7fffffffffffffff 0123214569900000 +#20: xvmindp 7ff0000000000000 @min@ fff0000000000000 AND 7ff0000000000000 @min@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#21: xvmindp 7ff0000000000000 @min@ 8000000000000000 AND 7ff0000000000000 @min@ 0000000000000000 => 8000000000000000 0000000000000000 +#22: xvmindp 7ff0000000000000 @min@ 0123214569900000 AND 7ff0000000000000 @min@ 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#23: xvmindp 7ff0000000000000 @min@ 7ff7ffffffffffff AND 7ff0000000000000 @min@ 7ff8000000000000 => 7fffffffffffffff 7ff0000000000000 +#24: xvmindp fff7ffffffffffff @min@ fff0000000000000 AND fff7ffffffffffff @min@ c0d0650f5a07b353 => ffffffffffffffff ffffffffffffffff +#25: xvmindp fff8000000000000 @min@ 8000000000000000 AND fff8000000000000 @min@ 0000000000000000 => 8000000000000000 0000000000000000 +#26: xvmindp fff7ffffffffffff @min@ 0123214569900000 AND fff7ffffffffffff @min@ 7ff0000000000000 => ffffffffffffffff ffffffffffffffff +#27: xvmindp fff7ffffffffffff @min@ 7ff7ffffffffffff AND fff7ffffffffffff @min@ 7ff8000000000000 => ffffffffffffffff ffffffffffffffff +#28: xvmindp fff8000000000000 @min@ fff0000000000000 AND fff8000000000000 @min@ c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#29: xvmindp fff8000000000000 @min@ 8000000000000000 AND 41232585a9900000 @min@ 41382511a2000000 => 8000000000000000 41232585a9900000 +#30: xvmindp 41232585a9900000 @min@ 41382511a2000000 AND 7ff7ffffffffffff @min@ 7ff8000000000000 => 41232585a9900000 7fffffffffffffff +#31: xvmindp 7ff8000000000000 @min@ 7ff8000000000000 AND 7ff8000000000000 @min@ fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvmaxsp ff800000 @max@ ff800000 AND ff800000 @max@ c683287b AND 49192c2d @max@ 49c1288d AND ff800000 @max@ 00000000 => ff800000 c683287b 49c1288d 00000000 +#1: xvmaxsp ff800000 @max@ 00000000 AND ff800000 @max@ 7f800000 AND ff800000 @max@ 7fffffff AND ff800000 @max@ 7fc00000 => 00000000 7f800000 ff800000 ff800000 +#2: xvmaxsp c683287b @max@ ff800000 AND c683287b @max@ c683287b AND c683287b @max@ 80000000 AND c683287b @max@ 00000000 => c683287b c683287b 80000000 00000000 +#3: xvmaxsp c683287b @max@ 00000000 AND c683287b @max@ 7f800000 AND c683287b @max@ 7fffffff AND c683287b @max@ 7fc00000 => 00000000 7f800000 c683287b c683287b +#4: xvmaxsp 80000000 @max@ ff800000 AND 80000000 @max@ c683287b AND 80000000 @max@ 80000000 AND 80000000 @max@ 00000000 => 80000000 80000000 80000000 00000000 +#5: xvmaxsp 80000000 @max@ 00000000 AND 80000000 @max@ 7f800000 AND 80000000 @max@ 7fffffff AND 80000000 @max@ 7fc00000 => 00000000 7f800000 80000000 80000000 +#6: xvmaxsp 00000000 @max@ ff800000 AND 00000000 @max@ c683287b AND 00000000 @max@ 80000000 AND 00000000 @max@ 00000000 => 00000000 00000000 00000000 00000000 +#7: xvmaxsp 00000000 @max@ 00000000 AND 00000000 @max@ 7f800000 AND 00000000 @max@ 7fffffff AND 00000000 @max@ 7fc00000 => 00000000 7f800000 00000000 00000000 +#8: xvmaxsp 00000000 @max@ ff800000 AND 00000000 @max@ c683287b AND 00000000 @max@ 80000000 AND 00000000 @max@ 00000000 => 00000000 00000000 00000000 00000000 +#9: xvmaxsp 00000000 @max@ 42780000 AND 00000000 @max@ 7f800000 AND 00000000 @max@ 7fffffff AND 00000000 @max@ 7fc00000 => 42780000 7f800000 00000000 00000000 +#10: xvmaxsp 7f800000 @max@ ff800000 AND 7f800000 @max@ c683287b AND 7f800000 @max@ 80000000 AND 7f800000 @max@ 00000000 => 7f800000 7f800000 7f800000 7f800000 +#11: xvmaxsp 7f800000 @max@ 00000000 AND 7f800000 @max@ 7f800000 AND 7f800000 @max@ 7fffffff AND 7f800000 @max@ 7fc00000 => 7f800000 7f800000 7f800000 7f800000 +#12: xvmaxsp ffffffff @max@ ff800000 AND ffffffff @max@ c683287b AND ffc00000 @max@ 80000000 AND ffc00000 @max@ 00000000 => ff800000 c683287b 80000000 00000000 +#13: xvmaxsp ffffffff @max@ 00000000 AND ffffffff @max@ 7f800000 AND ffffffff @max@ 7fffffff AND ffffffff @max@ 7fc00000 => 00000000 7f800000 ffffffff ffffffff +#14: xvmaxsp ffc00000 @max@ ff800000 AND ffc00000 @max@ c683287b AND ffc00000 @max@ 80000000 AND 49192c2d @max@ 49c1288d => ff800000 c683287b 80000000 49c1288d +#15: xvmaxsp 49192c2d @max@ 49c1288d AND 7fffffff @max@ 7fc00000 AND 7fc00000 @max@ 7fc00000 AND 7fc00000 @max@ ffc00000 => 49c1288d 7fffffff 7fc00000 7fc00000 + + +#0: xvminsp ff800000 @min@ ff800000 AND ff800000 @min@ c683287b AND 49192c2d @min@ 49c1288d AND ff800000 @min@ 00000000 => ff800000 ff800000 49192c2d ff800000 +#1: xvminsp ff800000 @min@ 00000000 AND ff800000 @min@ 7f800000 AND ff800000 @min@ 7fffffff AND ff800000 @min@ 7fc00000 => ff800000 ff800000 ff800000 ff800000 +#2: xvminsp c683287b @min@ ff800000 AND c683287b @min@ c683287b AND c683287b @min@ 80000000 AND c683287b @min@ 00000000 => ff800000 c683287b c683287b c683287b +#3: xvminsp c683287b @min@ 00000000 AND c683287b @min@ 7f800000 AND c683287b @min@ 7fffffff AND c683287b @min@ 7fc00000 => c683287b c683287b c683287b c683287b +#4: xvminsp 80000000 @min@ ff800000 AND 80000000 @min@ c683287b AND 80000000 @min@ 80000000 AND 80000000 @min@ 00000000 => ff800000 c683287b 80000000 80000000 +#5: xvminsp 80000000 @min@ 00000000 AND 80000000 @min@ 7f800000 AND 80000000 @min@ 7fffffff AND 80000000 @min@ 7fc00000 => 80000000 80000000 80000000 80000000 +#6: xvminsp 00000000 @min@ ff800000 AND 00000000 @min@ c683287b AND 00000000 @min@ 80000000 AND 00000000 @min@ 00000000 => ff800000 c683287b 80000000 00000000 +#7: xvminsp 00000000 @min@ 00000000 AND 00000000 @min@ 7f800000 AND 00000000 @min@ 7fffffff AND 00000000 @min@ 7fc00000 => 00000000 00000000 00000000 00000000 +#8: xvminsp 00000000 @min@ ff800000 AND 00000000 @min@ c683287b AND 00000000 @min@ 80000000 AND 00000000 @min@ 00000000 => ff800000 c683287b 80000000 00000000 +#9: xvminsp 00000000 @min@ 42780000 AND 00000000 @min@ 7f800000 AND 00000000 @min@ 7fffffff AND 00000000 @min@ 7fc00000 => 00000000 00000000 00000000 00000000 +#10: xvminsp 7f800000 @min@ ff800000 AND 7f800000 @min@ c683287b AND 7f800000 @min@ 80000000 AND 7f800000 @min@ 00000000 => ff800000 c683287b 80000000 00000000 +#11: xvminsp 7f800000 @min@ 00000000 AND 7f800000 @min@ 7f800000 AND 7f800000 @min@ 7fffffff AND 7f800000 @min@ 7fc00000 => 00000000 7f800000 7f800000 7f800000 +#12: xvminsp ffffffff @min@ ff800000 AND ffffffff @min@ c683287b AND ffc00000 @min@ 80000000 AND ffc00000 @min@ 00000000 => ff800000 c683287b 80000000 00000000 +#13: xvminsp ffffffff @min@ 00000000 AND ffffffff @min@ 7f800000 AND ffffffff @min@ 7fffffff AND ffffffff @min@ 7fc00000 => 00000000 7f800000 ffffffff ffffffff +#14: xvminsp ffc00000 @min@ ff800000 AND ffc00000 @min@ c683287b AND ffc00000 @min@ 80000000 AND 49192c2d @min@ 49c1288d => ff800000 c683287b 80000000 49192c2d +#15: xvminsp 49192c2d @min@ 49c1288d AND 7fffffff @min@ 7fc00000 AND 7fc00000 @min@ 7fc00000 AND 7fc00000 @min@ ffc00000 => 49192c2d 7fffffff 7fc00000 7fc00000 + + +#0: xvcpsgndp fff0000000000000 +-cp fff0000000000000 AND fff0000000000000 +-cp c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#1: xvcpsgndp 41232585a9900000 +-cp 41382511a2000000 AND fff0000000000000 +-cp 0000000000000000 => 41382511a2000000 8000000000000000 +#2: xvcpsgndp fff0000000000000 +-cp 0123214569900000 AND fff0000000000000 +-cp 7ff0000000000000 => 8123214569900000 fff0000000000000 +#3: xvcpsgndp fff0000000000000 +-cp 7ff7ffffffffffff AND fff0000000000000 +-cp 7ff8000000000000 => fff7ffffffffffff fff8000000000000 +#4: xvcpsgndp c0d0650f5a07b353 +-cp fff0000000000000 AND c0d0650f5a07b353 +-cp c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#5: xvcpsgndp c0d0650f5a07b353 +-cp 8000000000000000 AND c0d0650f5a07b353 +-cp 0000000000000000 => 8000000000000000 8000000000000000 +#6: xvcpsgndp c0d0650f5a07b353 +-cp 0123214569900000 AND c0d0650f5a07b353 +-cp 7ff0000000000000 => 8123214569900000 fff0000000000000 +#7: xvcpsgndp c0d0650f5a07b353 +-cp 7ff7ffffffffffff AND c0d0650f5a07b353 +-cp 7ff8000000000000 => fff7ffffffffffff fff8000000000000 +#8: xvcpsgndp 8000000000000000 +-cp fff0000000000000 AND 8000000000000000 +-cp c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#9: xvcpsgndp 8000000000000000 +-cp 8000000000000000 AND 8000000000000000 +-cp 0000000000000000 => 8000000000000000 8000000000000000 +#10: xvcpsgndp 8000000000000000 +-cp 0123214569900000 AND 8000000000000000 +-cp 7ff0000000000000 => 8123214569900000 fff0000000000000 +#11: xvcpsgndp 8000000000000000 +-cp 7ff7ffffffffffff AND 8000000000000000 +-cp 7ff8000000000000 => fff7ffffffffffff fff8000000000000 +#12: xvcpsgndp 0000000000000000 +-cp fff0000000000000 AND 0000000000000000 +-cp c0d0650f5a07b353 => 7ff0000000000000 40d0650f5a07b353 +#13: xvcpsgndp 0000000000000000 +-cp 8000000000000000 AND 0000000000000000 +-cp 0000000000000000 => 0000000000000000 0000000000000000 +#14: xvcpsgndp 0000000000000000 +-cp 0123214569900000 AND 0000000000000000 +-cp 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#15: xvcpsgndp 0000000000000000 +-cp 7ff7ffffffffffff AND 0000000000000000 +-cp 7ff8000000000000 => 7ff7ffffffffffff 7ff8000000000000 +#16: xvcpsgndp 0123214569900000 +-cp fff0000000000000 AND 0123214569900000 +-cp c0d0650f5a07b353 => 7ff0000000000000 40d0650f5a07b353 +#17: xvcpsgndp 0123214569900000 +-cp 8000000000000000 AND 0123214569900000 +-cp 0000000000000000 => 0000000000000000 0000000000000000 +#18: xvcpsgndp 0123214569900000 +-cp 404f000000000000 AND 0123214569900000 +-cp 7ff0000000000000 => 404f000000000000 7ff0000000000000 +#19: xvcpsgndp 0123214569900000 +-cp 7ff7ffffffffffff AND 0123214569900000 +-cp 7ff8000000000000 => 7ff7ffffffffffff 7ff8000000000000 +#20: xvcpsgndp 7ff0000000000000 +-cp fff0000000000000 AND 7ff0000000000000 +-cp c0d0650f5a07b353 => 7ff0000000000000 40d0650f5a07b353 +#21: xvcpsgndp 7ff0000000000000 +-cp 8000000000000000 AND 7ff0000000000000 +-cp 0000000000000000 => 0000000000000000 0000000000000000 +#22: xvcpsgndp 7ff0000000000000 +-cp 0123214569900000 AND 7ff0000000000000 +-cp 7ff0000000000000 => 0123214569900000 7ff0000000000000 +#23: xvcpsgndp 7ff0000000000000 +-cp 7ff7ffffffffffff AND 7ff0000000000000 +-cp 7ff8000000000000 => 7ff7ffffffffffff 7ff8000000000000 +#24: xvcpsgndp fff7ffffffffffff +-cp fff0000000000000 AND fff7ffffffffffff +-cp c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#25: xvcpsgndp fff8000000000000 +-cp 8000000000000000 AND fff8000000000000 +-cp 0000000000000000 => 8000000000000000 8000000000000000 +#26: xvcpsgndp fff7ffffffffffff +-cp 0123214569900000 AND fff7ffffffffffff +-cp 7ff0000000000000 => 8123214569900000 fff0000000000000 +#27: xvcpsgndp fff7ffffffffffff +-cp 7ff7ffffffffffff AND fff7ffffffffffff +-cp 7ff8000000000000 => fff7ffffffffffff fff8000000000000 +#28: xvcpsgndp fff8000000000000 +-cp fff0000000000000 AND fff8000000000000 +-cp c0d0650f5a07b353 => fff0000000000000 c0d0650f5a07b353 +#29: xvcpsgndp fff8000000000000 +-cp 8000000000000000 AND 41232585a9900000 +-cp 41382511a2000000 => 8000000000000000 41382511a2000000 +#30: xvcpsgndp 41232585a9900000 +-cp 41382511a2000000 AND 7ff7ffffffffffff +-cp 7ff8000000000000 => 41382511a2000000 7ff8000000000000 +#31: xvcpsgndp 7ff8000000000000 +-cp 7ff8000000000000 AND 7ff8000000000000 +-cp fff8000000000000 => 7ff8000000000000 7ff8000000000000 + + +#0: xvcpsgnsp ff800000 +-cp ff800000 AND ff800000 +-cp c683287b AND 49192c2d +-cp 49c1288d AND ff800000 +-cp 00000000 => ff800000 c683287b 49c1288d 80000000 +#1: xvcpsgnsp ff800000 +-cp 00000000 AND ff800000 +-cp 7f800000 AND ff800000 +-cp 7fffffff AND ff800000 +-cp 7fc00000 => 80000000 ff800000 ffffffff ffc00000 +#2: xvcpsgnsp c683287b +-cp ff800000 AND c683287b +-cp c683287b AND c683287b +-cp 80000000 AND c683287b +-cp 00000000 => ff800000 c683287b 80000000 80000000 +#3: xvcpsgnsp c683287b +-cp 00000000 AND c683287b +-cp 7f800000 AND c683287b +-cp 7fffffff AND c683287b +-cp 7fc00000 => 80000000 ff800000 ffffffff ffc00000 +#4: xvcpsgnsp 80000000 +-cp ff800000 AND 80000000 +-cp c683287b AND 80000000 +-cp 80000000 AND 80000000 +-cp 00000000 => ff800000 c683287b 80000000 80000000 +#5: xvcpsgnsp 80000000 +-cp 00000000 AND 80000000 +-cp 7f800000 AND 80000000 +-cp 7fffffff AND 80000000 +-cp 7fc00000 => 80000000 ff800000 ffffffff ffc00000 +#6: xvcpsgnsp 00000000 +-cp ff800000 AND 00000000 +-cp c683287b AND 00000000 +-cp 80000000 AND 00000000 +-cp 00000000 => 7f800000 4683287b 00000000 00000000 +#7: xvcpsgnsp 00000000 +-cp 00000000 AND 00000000 +-cp 7f800000 AND 00000000 +-cp 7fffffff AND 00000000 +-cp 7fc00000 => 00000000 7f800000 7fffffff 7fc00000 +#8: xvcpsgnsp 00000000 +-cp ff800000 AND 00000000 +-cp c683287b AND 00000000 +-cp 80000000 AND 00000000 +-cp 00000000 => 7f800000 4683287b 00000000 00000000 +#9: xvcpsgnsp 00000000 +-cp 42780000 AND 00000000 +-cp 7f800000 AND 00000000 +-cp 7fffffff AND 00000000 +-cp 7fc00000 => 42780000 7f800000 7fffffff 7fc00000 +#10: xvcpsgnsp 7f800000 +-cp ff800000 AND 7f800000 +-cp c683287b AND 7f800000 +-cp 80000000 AND 7f800000 +-cp 00000000 => 7f800000 4683287b 00000000 00000000 +#11: xvcpsgnsp 7f800000 +-cp 00000000 AND 7f800000 +-cp 7f800000 AND 7f800000 +-cp 7fffffff AND 7f800000 +-cp 7fc00000 => 00000000 7f800000 7fffffff 7fc00000 +#12: xvcpsgnsp ffffffff +-cp ff800000 AND ffffffff +-cp c683287b AND ffc00000 +-cp 80000000 AND ffc00000 +-cp 00000000 => ff800000 c683287b 80000000 80000000 +#13: xvcpsgnsp ffffffff +-cp 00000000 AND ffffffff +-cp 7f800000 AND ffffffff +-cp 7fffffff AND ffffffff +-cp 7fc00000 => 80000000 ff800000 ffffffff ffc00000 +#14: xvcpsgnsp ffc00000 +-cp ff800000 AND ffc00000 +-cp c683287b AND ffc00000 +-cp 80000000 AND 49192c2d +-cp 49c1288d => ff800000 c683287b 80000000 49c1288d +#15: xvcpsgnsp 49192c2d +-cp 49c1288d AND 7fffffff +-cp 7fc00000 AND 7fc00000 +-cp 7fc00000 AND 7fc00000 +-cp ffc00000 => 49c1288d 7fc00000 7fc00000 7fc00000 + + +Test bit permute double +bpermd: 0x1b2c31f030000001 : 0xa12bc37de56f9708 => 0xce + +Test xxsel instruction +xxsel a12bc37de56f9708,fedc432124681235,ffffffff01020304 => fedc4321e46d960c +xxsel 3894c1fddeadbeef,f1e2d3c4e0057708,128934bd00000000 => 3894d1c4deadbeef + +Test xxspltw instruction +xxspltw 0xfedc432124681235f1e2d3c4e0057708 0=> 0xfedc4321fedc4321fedc4321fedc4321 +xxspltw 0xfedc432124681235f1e2d3c4e0057708 1=> 0x24681235246812352468123524681235 +xxspltw 0xfedc432124681235f1e2d3c4e0057708 2=> 0xf1e2d3c4f1e2d3c4f1e2d3c4f1e2d3c4 +xxspltw 0xfedc432124681235f1e2d3c4e0057708 3=> 0xe0057708e0057708e0057708e0057708 + +Test div extensions +#0: divde: 0x0000000000000004 / 0xfffffffffffffffc = 0x0000000000000000; CR=0; XER=0 +#1: divde: 0x0000000000000004 / 0xfffffffffffffffd = 0x0000000000000000; CR=0; XER=0 +#2: divde: 0x0000000000000004 / 0x0000000000000004 = 0x0000000000000000; CR=0; XER=0 +#3: divde: 0x0000000000000004 / 0xfffffffffffffffb = 0x0000000000000000; CR=0; XER=0 +#4: divde: 0x0000000000000003 / 0x0000000000000008 = 0x6000000000000000; CR=0; XER=0 +#5: divde: 0x8000000000000000 / 0x000000000000000a = 0x0000000000000000; CR=0; XER=0 +#6: divde: 0x000000000000050c / 0xffffffffffffffff = 0x0000000000000000; CR=0; XER=0 +#7: divde: 0x000000000000050c / 0xfffffffffffff000 = 0xaf40000000000000; CR=0; XER=0 +#8: divde: 0x000000001234fedc / 0x000000008000a873 = 0x2469cdcc6ad4ce20; CR=0; XER=0 +#9: divde: 0xabcd87651234fedc / 0x00000000a123b893 = 0x0000000000000000; CR=0; XER=0 +#10: divde: 0x000123456789abdc / 0x0000000000000000 = 0x0000000000000000; CR=0; XER=0 +#11: divde: 0x0000000000000000 / 0x0000000000000002 = 0x0000000000000000; CR=0; XER=0 +#12: divde: 0x0000000000000077 / 0x00000000000a3499 = 0x000ba911a321dcca; CR=0; XER=0 + +#0: divde.: 0x0000000000000004 / 0xfffffffffffffffc = 0x0000000000000000; CR=2; XER=0 +#1: divde.: 0x0000000000000004 / 0xfffffffffffffffd = 0x0000000000000000; CR=2; XER=0 +#2: divde.: 0x0000000000000004 / 0x0000000000000004 = 0x0000000000000000; CR=2; XER=0 +#3: divde.: 0x0000000000000004 / 0xfffffffffffffffb = 0x0000000000000000; CR=2; XER=0 +#4: divde.: 0x0000000000000003 / 0x0000000000000008 = 0x6000000000000000; CR=4; XER=0 +#5: divde.: 0x8000000000000000 / 0x000000000000000a = 0x0000000000000000; CR=2; XER=0 +#6: divde.: 0x000000000000050c / 0xffffffffffffffff = 0x0000000000000000; CR=2; XER=0 +#7: divde.: 0x000000000000050c / 0xfffffffffffff000 = 0xaf40000000000000; CR=8; XER=0 +#8: divde.: 0x000000001234fedc / 0x000000008000a873 = 0x2469cdcc6ad4ce20; CR=4; XER=0 +#9: divde.: 0xabcd87651234fedc / 0x00000000a123b893 = 0x0000000000000000; CR=2; XER=0 +#10: divde.: 0x000123456789abdc / 0x0000000000000000 = 0x0000000000000000; CR=2; XER=0 +#11: divde.: 0x0000000000000000 / 0x0000000000000002 = 0x0000000000000000; CR=2; XER=0 +#12: divde.: 0x0000000000000077 / 0x00000000000a3499 = 0x000ba911a321dcca; CR=4; XER=0 + + +#0: divdeo: 0x0000000000000004 / 0xfffffffffffffffc = 0x0000000000000000; CR=0; XER=c0000000 +#1: divdeo: 0x0000000000000004 / 0xfffffffffffffffd = 0x0000000000000000; CR=0; XER=c0000000 +#2: divdeo: 0x0000000000000004 / 0x0000000000000004 = 0x0000000000000000; CR=0; XER=c0000000 +#3: divdeo: 0x0000000000000004 / 0xfffffffffffffffb = 0x0000000000000000; CR=0; XER=c0000000 +#4: divdeo: 0x0000000000000003 / 0x0000000000000008 = 0x6000000000000000; CR=0; XER=0 +#5: divdeo: 0x8000000000000000 / 0x000000000000000a = 0x0000000000000000; CR=0; XER=c0000000 +#6: divdeo: 0x000000000000050c / 0xffffffffffffffff = 0x0000000000000000; CR=0; XER=c0000000 +#7: divdeo: 0x000000000000050c / 0xfffffffffffff000 = 0xaf40000000000000; CR=0; XER=0 +#8: divdeo: 0x000000001234fedc / 0x000000008000a873 = 0x2469cdcc6ad4ce20; CR=0; XER=0 +#9: divdeo: 0xabcd87651234fedc / 0x00000000a123b893 = 0x0000000000000000; CR=0; XER=c0000000 +#10: divdeo: 0x000123456789abdc / 0x0000000000000000 = 0x0000000000000000; CR=0; XER=c0000000 +#11: divdeo: 0x0000000000000000 / 0x0000000000000002 = 0x0000000000000000; CR=0; XER=0 +#12: divdeo: 0x0000000000000077 / 0x00000000000a3499 = 0x000ba911a321dcca; CR=0; XER=0 + +#0: divdeo.: 0x0000000000000004 / 0xfffffffffffffffc = 0x0000000000000000; CR=3; XER=c0000000 +#1: divdeo.: 0x0000000000000004 / 0xfffffffffffffffd = 0x0000000000000000; CR=3; XER=c0000000 +#2: divdeo.: 0x0000000000000004 / 0x0000000000000004 = 0x0000000000000000; CR=3; XER=c0000000 +#3: divdeo.: 0x0000000000000004 / 0xfffffffffffffffb = 0x0000000000000000; CR=3; XER=c0000000 +#4: divdeo.: 0x0000000000000003 / 0x0000000000000008 = 0x6000000000000000; CR=4; XER=0 +#5: divdeo.: 0x8000000000000000 / 0x000000000000000a = 0x0000000000000000; CR=3; XER=c0000000 +#6: divdeo.: 0x000000000000050c / 0xffffffffffffffff = 0x0000000000000000; CR=3; XER=c0000000 +#7: divdeo.: 0x000000000000050c / 0xfffffffffffff000 = 0xaf40000000000000; CR=8; XER=0 +#8: divdeo.: 0x000000001234fedc / 0x000000008000a873 = 0x2469cdcc6ad4ce20; CR=4; XER=0 +#9: divdeo.: 0xabcd87651234fedc / 0x00000000a123b893 = 0x0000000000000000; CR=3; XER=c0000000 +#10: divdeo.: 0x000123456789abdc / 0x0000000000000000 = 0x0000000000000000; CR=3; XER=c0000000 +#11: divdeo.: 0x0000000000000000 / 0x0000000000000002 = 0x0000000000000000; CR=2; XER=0 +#12: divdeo.: 0x0000000000000077 / 0x00000000000a3499 = 0x000ba911a321dcca; CR=4; XER=0 + + +#0: divweu: 0x00000000 / 0x00000002 = 0x00000000; CR=0; XER=0 +#1: divweu: 0x00000002 / 0x00000000 = 0x00000000; CR=0; XER=0 +#2: divweu: 0x7abc1234 / 0xf0000000 = 0x82eabe15; CR=0; XER=0 +#3: divweu: 0xfabc1234 / 0x00000005 = 0x00000000; CR=0; XER=0 +#4: divweu: 0x0000004d / 0x00000042 = 0x00000000; CR=0; XER=0 +#5: divweu: 0x00000005 / 0xfabc1234 = 0x00000005; CR=0; XER=0 + +#0: divweu.: 0x00000000 / 0x00000002 = 0x00000000; CR=2; XER=0 +#1: divweu.: 0x00000002 / 0x00000000 = 0x00000000; CR=2; XER=0 +#2: divweu.: 0x7abc1234 / 0xf0000000 = 0x82eabe15; CR=4; XER=0 +#3: divweu.: 0xfabc1234 / 0x00000005 = 0x00000000; CR=2; XER=0 +#4: divweu.: 0x0000004d / 0x00000042 = 0x00000000; CR=2; XER=0 +#5: divweu.: 0x00000005 / 0xfabc1234 = 0x00000005; CR=4; XER=0 + + +#0: divweuo: 0x00000000 / 0x00000002 = 0x00000000; CR=0; XER=0 +#1: divweuo: 0x00000002 / 0x00000000 = 0x00000000; CR=0; XER=c0000000 +#2: divweuo: 0x7abc1234 / 0xf0000000 = 0x82eabe15; CR=0; XER=0 +#3: divweuo: 0xfabc1234 / 0x00000005 = 0x00000000; CR=0; XER=c0000000 +#4: divweuo: 0x0000004d / 0x00000042 = 0x00000000; CR=0; XER=c0000000 +#5: divweuo: 0x00000005 / 0xfabc1234 = 0x00000005; CR=0; XER=0 + +#0: divweuo.: 0x00000000 / 0x00000002 = 0x00000000; CR=2; XER=0 +#1: divweuo.: 0x00000002 / 0x00000000 = 0x00000000; CR=3; XER=c0000000 +#2: divweuo.: 0x7abc1234 / 0xf0000000 = 0x82eabe15; CR=4; XER=0 +#3: divweuo.: 0xfabc1234 / 0x00000005 = 0x00000000; CR=3; XER=c0000000 +#4: divweuo.: 0x0000004d / 0x00000042 = 0x00000000; CR=3; XER=c0000000 +#5: divweuo.: 0x00000005 / 0xfabc1234 = 0x00000005; CR=4; XER=0 + + +Test floating point convert [word | doubleword] unsigned, with round toward zero +#0: fctiduz: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctiduz: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctiduz: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctiduz: 0x7fe800000000051b (1.348270e+308) ==> 0xffffffffffffffff +#4: fctiduz: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctiduz: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctiduz: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctiduz: 0x7ff0000000000000 (inf) ==> 0xffffffffffffffff +#8: fctiduz: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctiduz: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctiduz: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctiduz: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctiduz: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctiduz: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctiduz: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctiduz: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c2 +#16: fctiduz: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182511 + +#0: fctiduz.: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctiduz.: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctiduz.: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctiduz.: 0x7fe800000000051b (1.348270e+308) ==> 0xffffffffffffffff +#4: fctiduz.: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctiduz.: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctiduz.: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctiduz.: 0x7ff0000000000000 (inf) ==> 0xffffffffffffffff +#8: fctiduz.: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctiduz.: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctiduz.: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctiduz.: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctiduz.: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctiduz.: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctiduz.: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctiduz.: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c2 +#16: fctiduz.: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182511 + + +#0: fctidu: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctidu: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctidu: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctidu: 0x7fe800000000051b (1.348270e+308) ==> 0xffffffffffffffff +#4: fctidu: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctidu: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctidu: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctidu: 0x7ff0000000000000 (inf) ==> 0xffffffffffffffff +#8: fctidu: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctidu: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctidu: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctidu: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctidu: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctidu: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctidu: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctidu: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c3 +#16: fctidu: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182512 + +#0: fctidu.: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctidu.: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctidu.: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctidu.: 0x7fe800000000051b (1.348270e+308) ==> 0xffffffffffffffff +#4: fctidu.: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctidu.: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctidu.: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctidu.: 0x7ff0000000000000 (inf) ==> 0xffffffffffffffff +#8: fctidu.: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctidu.: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctidu.: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctidu.: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctidu.: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctidu.: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctidu.: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctidu.: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c3 +#16: fctidu.: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182512 + + +#0: fctiwuz: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctiwuz: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctiwuz: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctiwuz: 0x7fe800000000051b (1.348270e+308) ==> 0x00000000ffffffff +#4: fctiwuz: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctiwuz: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctiwuz: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctiwuz: 0x7ff0000000000000 (inf) ==> 0x00000000ffffffff +#8: fctiwuz: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctiwuz: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctiwuz: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctiwuz: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctiwuz: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctiwuz: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctiwuz: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctiwuz: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c2 +#16: fctiwuz: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182511 + +#0: fctiwuz.: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctiwuz.: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctiwuz.: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctiwuz.: 0x7fe800000000051b (1.348270e+308) ==> 0x00000000ffffffff +#4: fctiwuz.: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctiwuz.: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctiwuz.: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctiwuz.: 0x7ff0000000000000 (inf) ==> 0x00000000ffffffff +#8: fctiwuz.: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctiwuz.: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctiwuz.: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctiwuz.: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctiwuz.: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctiwuz.: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctiwuz.: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctiwuz.: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c2 +#16: fctiwuz.: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182511 + + +#0: fctiwu: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctiwu: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctiwu: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctiwu: 0x7fe800000000051b (1.348270e+308) ==> 0x00000000ffffffff +#4: fctiwu: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctiwu: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctiwu: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctiwu: 0x7ff0000000000000 (inf) ==> 0x00000000ffffffff +#8: fctiwu: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctiwu: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctiwu: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctiwu: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctiwu: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctiwu: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctiwu: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctiwu: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c3 +#16: fctiwu: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182512 + +#0: fctiwu.: 0x3fd8000000000000 (3.750000e-01) ==> 0x0000000000000000 +#1: fctiwu.: 0x404f000000000000 (6.200000e+01) ==> 0x000000000000003e +#2: fctiwu.: 0x0018000000b77501 (3.337611e-308) ==> 0x0000000000000000 +#3: fctiwu.: 0x7fe800000000051b (1.348270e+308) ==> 0x00000000ffffffff +#4: fctiwu.: 0x0123214569900000 (3.486973e-303) ==> 0x0000000000000000 +#5: fctiwu.: 0x0000000000000000 (0.000000e+00) ==> 0x0000000000000000 +#6: fctiwu.: 0x8000000000000000 (-0.000000e+00) ==> 0x0000000000000000 +#7: fctiwu.: 0x7ff0000000000000 (inf) ==> 0x00000000ffffffff +#8: fctiwu.: 0xfff0000000000000 (-inf) ==> 0x0000000000000000 +#9: fctiwu.: 0x7ff7ffffffffffff (nan) ==> 0x0000000000000000 +#10: fctiwu.: 0xfff7ffffffffffff (-nan) ==> 0x0000000000000000 +#11: fctiwu.: 0x7ff8000000000000 (nan) ==> 0x0000000000000000 +#12: fctiwu.: 0xfff8000000000000 (-nan) ==> 0x0000000000000000 +#13: fctiwu.: 0x8008340000078000 (-1.140785e-308) ==> 0x0000000000000000 +#14: fctiwu.: 0xc0d0650f5a07b353 (-1.678824e+04) ==> 0x0000000000000000 +#15: fctiwu.: 0x41232585a9900000 (6.273948e+05) ==> 0x00000000000992c3 +#16: fctiwu.: 0x41382511a2000000 (1.582354e+06) ==> 0x0000000000182512 + + +Test stdbrx instruction +stdbrx: 0xdeadbacf12345678 ==> 0x78563412cfbaadde + +Test floating point arithmetic instructions -- with a{d|s}p or m{d|s}p +#0: xsnmsubadp !*-(fff0000000000000,fff0000000000000,3fd8000000000000) = 7ff8000000000000 +#1: xsnmsubadp !*-(c0d0650f5a07b353,fff0000000000000,404f000000000000) = 7ff0000000000000 +#2: xsnmsubadp !*-(41382511a2000000,41232585a9900000,0018000000b77501) = 41382511a2000000 +#3: xsnmsubadp !*-(0000000000000000,fff0000000000000,7fe800000000051b) = 7ff0000000000000 +#4: xsnmsubadp !*-(0123214569900000,fff0000000000000,0123214569900000) = 7ff0000000000000 +#5: xsnmsubadp !*-(7ff0000000000000,fff0000000000000,0000000000000000) = 7ff8000000000000 +#6: xsnmsubadp !*-(7ff7ffffffffffff,fff0000000000000,8000000000000000) = 7fffffffffffffff +#7: xsnmsubadp !*-(7ff8000000000000,fff0000000000000,7ff0000000000000) = 7ff8000000000000 +#8: xsnmsubadp !*-(fff0000000000000,c0d0650f5a07b353,fff0000000000000) = fff0000000000000 +#9: xsnmsubadp !*-(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) = 7fffffffffffffff +#10: xsnmsubadp !*-(8000000000000000,c0d0650f5a07b353,fff7ffffffffffff) = ffffffffffffffff +#11: xsnmsubadp !*-(0000000000000000,c0d0650f5a07b353,7ff8000000000000) = 7ff8000000000000 +#12: xsnmsubadp !*-(0123214569900000,c0d0650f5a07b353,fff8000000000000) = fff8000000000000 +#13: xsnmsubadp !*-(7ff0000000000000,c0d0650f5a07b353,8008340000078000) = 7ff0000000000000 +#14: xsnmsubadp !*-(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) = 7fffffffffffffff +#15: xsnmsubadp !*-(7ff8000000000000,c0d0650f5a07b353,41232585a9900000) = 7ff8000000000000 +#16: xsnmsubadp !*-(fff0000000000000,8000000000000000,3fd8000000000000) = fff0000000000000 +#17: xsnmsubadp !*-(c0d0650f5a07b353,8000000000000000,404f000000000000) = c0d0650f5a07b353 +#18: xsnmsubadp !*-(8000000000000000,8000000000000000,0018000000b77501) = 8000000000000000 +#19: xsnmsubadp !*-(0000000000000000,8000000000000000,7fe800000000051b) = 0000000000000000 +#20: xsnmsubadp !*-(0123214569900000,8000000000000000,0123214569900000) = 0123214569900000 +#21: xsnmsubadp !*-(7ff0000000000000,8000000000000000,0000000000000000) = 7ff0000000000000 +#22: xsnmsubadp !*-(7ff7ffffffffffff,8000000000000000,8000000000000000) = 7fffffffffffffff +#23: xsnmsubadp !*-(7ff8000000000000,8000000000000000,7ff0000000000000) = 7ff8000000000000 +#24: xsnmsubadp !*-(fff0000000000000,0000000000000000,fff0000000000000) = 7ff8000000000000 +#25: xsnmsubadp !*-(c0d0650f5a07b353,0000000000000000,7ff7ffffffffffff) = 7fffffffffffffff +#26: xsnmsubadp !*-(8000000000000000,0000000000000000,fff7ffffffffffff) = ffffffffffffffff +#27: xsnmsubadp !*-(0000000000000000,0000000000000000,7ff8000000000000) = 7ff8000000000000 +#28: xsnmsubadp !*-(0123214569900000,0000000000000000,fff8000000000000) = fff8000000000000 +#29: xsnmsubadp !*-(7ff0000000000000,0000000000000000,8008340000078000) = 7ff0000000000000 +#30: xsnmsubadp !*-(7ff7ffffffffffff,0000000000000000,c0d0650f5a07b353) = 7fffffffffffffff +#31: xsnmsubadp !*-(7ff8000000000000,0000000000000000,41232585a9900000) = 7ff8000000000000 +#32: xsnmsubadp !*-(fff0000000000000,0123214569900000,3fd8000000000000) = fff0000000000000 +#33: xsnmsubadp !*-(c0d0650f5a07b353,0123214569900000,404f000000000000) = c0d0650f5a07b353 +#34: xsnmsubadp !*-(8000000000000000,0123214569900000,0018000000b77501) = 8000000000000000 +#35: xsnmsubadp !*-(0000000000000000,0123214569900000,7fe800000000051b) = c11cb1e81e58061b +#36: xsnmsubadp !*-(404f000000000000,0123214569900000,0123214569900000) = 404f000000000000 +#37: xsnmsubadp !*-(7ff0000000000000,0123214569900000,0000000000000000) = 7ff0000000000000 +#38: xsnmsubadp !*-(7ff7ffffffffffff,0123214569900000,8000000000000000) = 7fffffffffffffff +#39: xsnmsubadp !*-(7ff8000000000000,0123214569900000,7ff0000000000000) = 7ff8000000000000 +#40: xsnmsubadp !*-(fff0000000000000,7ff0000000000000,fff0000000000000) = 7ff8000000000000 +#41: xsnmsubadp !*-(c0d0650f5a07b353,7ff0000000000000,7ff7ffffffffffff) = 7fffffffffffffff +#42: xsnmsubadp !*-(8000000000000000,7ff0000000000000,fff7ffffffffffff) = ffffffffffffffff +#43: xsnmsubadp !*-(0000000000000000,7ff0000000000000,7ff8000000000000) = 7ff8000000000000 +#44: xsnmsubadp !*-(0123214569900000,7ff0000000000000,fff8000000000000) = fff8000000000000 +#45: xsnmsubadp !*-(7ff0000000000000,7ff0000000000000,8008340000078000) = 7ff0000000000000 +#46: xsnmsubadp !*-(7ff7ffffffffffff,7ff0000000000000,c0d0650f5a07b353) = 7fffffffffffffff +#47: xsnmsubadp !*-(7ff8000000000000,7ff0000000000000,41232585a9900000) = 7ff8000000000000 +#48: xsnmsubadp !*-(fff0000000000000,fff7ffffffffffff,3fd8000000000000) = ffffffffffffffff +#49: xsnmsubadp !*-(c0d0650f5a07b353,fff7ffffffffffff,404f000000000000) = ffffffffffffffff +#50: xsnmsubadp !*-(8000000000000000,fff8000000000000,0018000000b77501) = fff8000000000000 +#51: xsnmsubadp !*-(0000000000000000,fff8000000000000,7fe800000000051b) = fff8000000000000 +#52: xsnmsubadp !*-(0123214569900000,fff7ffffffffffff,0123214569900000) = ffffffffffffffff +#53: xsnmsubadp !*-(7ff0000000000000,fff7ffffffffffff,0000000000000000) = ffffffffffffffff +#54: xsnmsubadp !*-(7ff7ffffffffffff,fff7ffffffffffff,8000000000000000) = ffffffffffffffff +#55: xsnmsubadp !*-(7ff8000000000000,fff7ffffffffffff,7ff0000000000000) = ffffffffffffffff +#56: xsnmsubadp !*-(fff0000000000000,fff8000000000000,fff0000000000000) = fff8000000000000 +#57: xsnmsubadp !*-(c0d0650f5a07b353,fff8000000000000,7ff7ffffffffffff) = fff8000000000000 +#58: xsnmsubadp !*-(8000000000000000,fff8000000000000,fff7ffffffffffff) = fff8000000000000 +#59: xsnmsubadp !*-(41382511a2000000,41232585a9900000,7ff8000000000000) = 7ff8000000000000 +#60: xsnmsubadp !*-(41382511a2000000,41232585a9900000,fff8000000000000) = fff8000000000000 +#61: xsnmsubadp !*-(7ff8000000000000,7ff7ffffffffffff,8008340000078000) = 7fffffffffffffff +#62: xsnmsubadp !*-(7ff8000000000000,7ff8000000000000,c0d0650f5a07b353) = 7ff8000000000000 +#63: xsnmsubadp !*-(fff8000000000000,7ff8000000000000,41232585a9900000) = 7ff8000000000000 + +#0: xsnmsubmdp !*-(3fd8000000000000,fff0000000000000,fff0000000000000) = 7ff8000000000000 +#1: xsnmsubmdp !*-(404f000000000000,fff0000000000000,c0d0650f5a07b353) = 7ff0000000000000 +#2: xsnmsubmdp !*-(0018000000b77501,41232585a9900000,41382511a2000000) = 41382511a2000000 +#3: xsnmsubmdp !*-(7fe800000000051b,fff0000000000000,0000000000000000) = 7ff0000000000000 +#4: xsnmsubmdp !*-(0123214569900000,fff0000000000000,0123214569900000) = 7ff0000000000000 +#5: xsnmsubmdp !*-(0000000000000000,fff0000000000000,7ff0000000000000) = 7ff8000000000000 +#6: xsnmsubmdp !*-(8000000000000000,fff0000000000000,7ff7ffffffffffff) = 7fffffffffffffff +#7: xsnmsubmdp !*-(7ff0000000000000,fff0000000000000,7ff8000000000000) = 7ff8000000000000 +#8: xsnmsubmdp !*-(fff0000000000000,c0d0650f5a07b353,fff0000000000000) = fff0000000000000 +#9: xsnmsubmdp !*-(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) = 7fffffffffffffff +#10: xsnmsubmdp !*-(fff7ffffffffffff,c0d0650f5a07b353,8000000000000000) = ffffffffffffffff +#11: xsnmsubmdp !*-(7ff8000000000000,c0d0650f5a07b353,0000000000000000) = 7ff8000000000000 +#12: xsnmsubmdp !*-(fff8000000000000,c0d0650f5a07b353,0123214569900000) = fff8000000000000 +#13: xsnmsubmdp !*-(8008340000078000,c0d0650f5a07b353,7ff0000000000000) = 7ff0000000000000 +#14: xsnmsubmdp !*-(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) = 7fffffffffffffff +#15: xsnmsubmdp !*-(41232585a9900000,c0d0650f5a07b353,7ff8000000000000) = 7ff8000000000000 +#16: xsnmsubmdp !*-(3fd8000000000000,8000000000000000,fff0000000000000) = fff0000000000000 +#17: xsnmsubmdp !*-(404f000000000000,8000000000000000,c0d0650f5a07b353) = c0d0650f5a07b353 +#18: xsnmsubmdp !*-(0018000000b77501,8000000000000000,8000000000000000) = 8000000000000000 +#19: xsnmsubmdp !*-(7fe800000000051b,8000000000000000,0000000000000000) = 0000000000000000 +#20: xsnmsubmdp !*-(0123214569900000,8000000000000000,0123214569900000) = 0123214569900000 +#21: xsnmsubmdp !*-(0000000000000000,8000000000000000,7ff0000000000000) = 7ff0000000000000 +#22: xsnmsubmdp !*-(8000000000000000,8000000000000000,7ff7ffffffffffff) = 7fffffffffffffff +#23: xsnmsubmdp !*-(7ff0000000000000,8000000000000000,7ff8000000000000) = 7ff8000000000000 +#24: xsnmsubmdp !*-(fff0000000000000,0000000000000000,fff0000000000000) = 7ff8000000000000 +#25: xsnmsubmdp !*-(7ff7ffffffffffff,0000000000000000,c0d0650f5a07b353) = 7fffffffffffffff +#26: xsnmsubmdp !*-(fff7ffffffffffff,0000000000000000,8000000000000000) = ffffffffffffffff +#27: xsnmsubmdp !*-(7ff8000000000000,0000000000000000,0000000000000000) = 7ff8000000000000 +#28: xsnmsubmdp !*-(fff8000000000000,0000000000000000,0123214569900000) = fff8000000000000 +#29: xsnmsubmdp !*-(8008340000078000,0000000000000000,7ff0000000000000) = 7ff0000000000000 +#30: xsnmsubmdp !*-(c0d0650f5a07b353,0000000000000000,7ff7ffffffffffff) = 7fffffffffffffff +#31: xsnmsubmdp !*-(41232585a9900000,0000000000000000,7ff8000000000000) = 7ff8000000000000 +#32: xsnmsubmdp !*-(3fd8000000000000,0123214569900000,fff0000000000000) = fff0000000000000 +#33: xsnmsubmdp !*-(404f000000000000,0123214569900000,c0d0650f5a07b353) = c0d0650f5a07b353 +#34: xsnmsubmdp !*-(0018000000b77501,0123214569900000,8000000000000000) = 8000000000000000 +#35: xsnmsubmdp !*-(7fe800000000051b,0123214569900000,0000000000000000) = c11cb1e81e58061b +#36: xsnmsubmdp !*-(0123214569900000,0123214569900000,404f000000000000) = 404f000000000000 +#37: xsnmsubmdp !*-(0000000000000000,0123214569900000,7ff0000000000000) = 7ff0000000000000 +#38: xsnmsubmdp !*-(8000000000000000,0123214569900000,7ff7ffffffffffff) = 7fffffffffffffff +#39: xsnmsubmdp !*-(7ff0000000000000,0123214569900000,7ff8000000000000) = 7ff8000000000000 +#40: xsnmsubmdp !*-(fff0000000000000,7ff0000000000000,fff0000000000000) = 7ff8000000000000 +#41: xsnmsubmdp !*-(7ff7ffffffffffff,7ff0000000000000,c0d0650f5a07b353) = 7fffffffffffffff +#42: xsnmsubmdp !*-(fff7ffffffffffff,7ff0000000000000,8000000000000000) = ffffffffffffffff +#43: xsnmsubmdp !*-(7ff8000000000000,7ff0000000000000,0000000000000000) = 7ff8000000000000 +#44: xsnmsubmdp !*-(fff8000000000000,7ff0000000000000,0123214569900000) = fff8000000000000 +#45: xsnmsubmdp !*-(8008340000078000,7ff0000000000000,7ff0000000000000) = 7ff0000000000000 +#46: xsnmsubmdp !*-(c0d0650f5a07b353,7ff0000000000000,7ff7ffffffffffff) = 7fffffffffffffff +#47: xsnmsubmdp !*-(41232585a9900000,7ff0000000000000,7ff8000000000000) = 7ff8000000000000 +#48: xsnmsubmdp !*-(3fd8000000000000,fff7ffffffffffff,fff0000000000000) = ffffffffffffffff +#49: xsnmsubmdp !*-(404f000000000000,fff7ffffffffffff,c0d0650f5a07b353) = ffffffffffffffff +#50: xsnmsubmdp !*-(0018000000b77501,fff8000000000000,8000000000000000) = fff8000000000000 +#51: xsnmsubmdp !*-(7fe800000000051b,fff8000000000000,0000000000000000) = fff8000000000000 +#52: xsnmsubmdp !*-(0123214569900000,fff7ffffffffffff,0123214569900000) = ffffffffffffffff +#53: xsnmsubmdp !*-(0000000000000000,fff7ffffffffffff,7ff0000000000000) = ffffffffffffffff +#54: xsnmsubmdp !*-(8000000000000000,fff7ffffffffffff,7ff7ffffffffffff) = ffffffffffffffff +#55: xsnmsubmdp !*-(7ff0000000000000,fff7ffffffffffff,7ff8000000000000) = ffffffffffffffff +#56: xsnmsubmdp !*-(fff0000000000000,fff8000000000000,fff0000000000000) = fff8000000000000 +#57: xsnmsubmdp !*-(7ff7ffffffffffff,fff8000000000000,c0d0650f5a07b353) = fff8000000000000 +#58: xsnmsubmdp !*-(fff7ffffffffffff,fff8000000000000,8000000000000000) = fff8000000000000 +#59: xsnmsubmdp !*-(7ff8000000000000,41232585a9900000,41382511a2000000) = 7ff8000000000000 +#60: xsnmsubmdp !*-(fff8000000000000,41232585a9900000,41382511a2000000) = fff8000000000000 +#61: xsnmsubmdp !*-(8008340000078000,7ff7ffffffffffff,7ff8000000000000) = 7fffffffffffffff +#62: xsnmsubmdp !*-(c0d0650f5a07b353,7ff8000000000000,7ff8000000000000) = 7ff8000000000000 +#63: xsnmsubmdp !*-(41232585a9900000,7ff8000000000000,fff8000000000000) = 7ff8000000000000 + +#0: xvmaddadp *+(fff0000000000000,fff0000000000000,3fd8000000000000) AND *+(c0d0650f5a07b353,fff0000000000000,404f000000000000) => fff0000000000000 fff0000000000000 +#1: xvmaddadp *+(41382511a2000000,41232585a9900000,0018000000b77501) AND *+(0000000000000000,fff0000000000000,7fe800000000051b) => 41382511a2000000 fff0000000000000 +#2: xvmaddadp *+(0123214569900000,fff0000000000000,0123214569900000) AND *+(7ff0000000000000,fff0000000000000,0000000000000000) => fff0000000000000 7ff8000000000000 +#3: xvmaddadp *+(7ff7ffffffffffff,fff0000000000000,8000000000000000) AND *+(7ff8000000000000,fff0000000000000,7ff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvmaddadp *+(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND *+(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) => 7ff8000000000000 7fffffffffffffff +#5: xvmaddadp *+(8000000000000000,c0d0650f5a07b353,fff7ffffffffffff) AND *+(0000000000000000,c0d0650f5a07b353,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvmaddadp *+(0123214569900000,c0d0650f5a07b353,fff8000000000000) AND *+(7ff0000000000000,c0d0650f5a07b353,8008340000078000) => fff8000000000000 7ff0000000000000 +#7: xvmaddadp *+(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) AND *+(7ff8000000000000,c0d0650f5a07b353,41232585a9900000) => 7fffffffffffffff 7ff8000000000000 +#8: xvmaddadp *+(fff0000000000000,8000000000000000,404f000000000000) AND *+(c0d0650f5a07b353,8000000000000000,0018000000b77501) => fff0000000000000 c0d0650f5a07b353 +#9: xvmaddadp *+(8000000000000000,8000000000000000,7fe800000000051b) AND *+(0000000000000000,8000000000000000,0123214569900000) => 8000000000000000 0000000000000000 +#10: xvmaddadp *+(0123214569900000,8000000000000000,0000000000000000) AND *+(7ff0000000000000,8000000000000000,8000000000000000) => 0123214569900000 7ff0000000000000 +#11: xvmaddadp *+(7ff7ffffffffffff,8000000000000000,7ff0000000000000) AND *+(7ff8000000000000,8000000000000000,fff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvmaddadp *+(fff0000000000000,0000000000000000,7ff7ffffffffffff) AND *+(c0d0650f5a07b353,0000000000000000,fff7ffffffffffff) => 7fffffffffffffff ffffffffffffffff +#13: xvmaddadp *+(8000000000000000,0000000000000000,7ff8000000000000) AND *+(0000000000000000,0000000000000000,fff8000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvmaddadp *+(0123214569900000,0000000000000000,8008340000078000) AND *+(7ff0000000000000,0000000000000000,c0d0650f5a07b353) => 0123214569900000 7ff0000000000000 +#15: xvmaddadp *+(7ff7ffffffffffff,0000000000000000,3fd8000000000000) AND *+(7ff8000000000000,0000000000000000,404f000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvmaddadp *+(fff0000000000000,0123214569900000,0018000000b77501) AND *+(c0d0650f5a07b353,0123214569900000,7fe800000000051b) => fff0000000000000 411bab9728b78ae5 +#17: xvmaddadp *+(8000000000000000,0123214569900000,0123214569900000) AND *+(0000000000000000,0123214569900000,0000000000000000) => 0000000000000000 0000000000000000 +#18: xvmaddadp *+(404f000000000000,0123214569900000,8000000000000000) AND *+(7ff0000000000000,0123214569900000,7ff0000000000000) => 404f000000000000 7ff0000000000000 +#19: xvmaddadp *+(7ff7ffffffffffff,0123214569900000,fff0000000000000) AND *+(7ff8000000000000,0123214569900000,7ff7ffffffffffff) => 7fffffffffffffff 7ff8000000000000 +#20: xvmaddadp *+(fff0000000000000,7ff0000000000000,fff7ffffffffffff) AND *+(c0d0650f5a07b353,7ff0000000000000,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#21: xvmaddadp *+(8000000000000000,7ff0000000000000,fff8000000000000) AND *+(0000000000000000,7ff0000000000000,8008340000078000) => fff8000000000000 fff0000000000000 +#22: xvmaddadp *+(0123214569900000,7ff0000000000000,c0d0650f5a07b353) AND *+(7ff0000000000000,7ff0000000000000,41232585a9900000) => fff0000000000000 7ff0000000000000 +#23: xvmaddadp *+(7ff7ffffffffffff,7ff0000000000000,404f000000000000) AND *+(7ff8000000000000,7ff0000000000000,0018000000b77501) => 7fffffffffffffff 7ff8000000000000 +#24: xvmaddadp *+(fff0000000000000,fff7ffffffffffff,7fe800000000051b) AND *+(c0d0650f5a07b353,fff7ffffffffffff,0123214569900000) => ffffffffffffffff ffffffffffffffff +#25: xvmaddadp *+(8000000000000000,fff8000000000000,0000000000000000) AND *+(0000000000000000,fff8000000000000,8000000000000000) => fff8000000000000 fff8000000000000 +#26: xvmaddadp *+(0123214569900000,fff7ffffffffffff,7ff0000000000000) AND *+(7ff0000000000000,fff7ffffffffffff,fff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvmaddadp *+(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND *+(7ff8000000000000,fff7ffffffffffff,fff7ffffffffffff) => ffffffffffffffff ffffffffffffffff +#28: xvmaddadp *+(fff0000000000000,fff8000000000000,7ff8000000000000) AND *+(c0d0650f5a07b353,fff8000000000000,fff8000000000000) => fff8000000000000 fff8000000000000 +#29: xvmaddadp *+(8000000000000000,fff8000000000000,8008340000078000) AND *+(41382511a2000000,41232585a9900000,c0d0650f5a07b353) => fff8000000000000 c2039db3bbaae2d2 +#30: xvmaddadp *+(41382511a2000000,41232585a9900000,3fd8000000000000) AND *+(7ff8000000000000,7ff7ffffffffffff,404f000000000000) => 413bbc1ab1cb0000 7fffffffffffffff +#31: xvmaddadp *+(7ff8000000000000,7ff8000000000000,0018000000b77501) AND *+(fff8000000000000,7ff8000000000000,7fe800000000051b) => 7ff8000000000000 7ff8000000000000 + +#0: xvmaddmdp *+(3fd8000000000000,fff0000000000000,fff0000000000000) AND *+(404f000000000000,fff0000000000000,c0d0650f5a07b353) => fff0000000000000 fff0000000000000 +#1: xvmaddmdp *+(0018000000b77501,41232585a9900000,41382511a2000000) AND *+(7fe800000000051b,fff0000000000000,0000000000000000) => 41382511a2000000 fff0000000000000 +#2: xvmaddmdp *+(0123214569900000,fff0000000000000,0123214569900000) AND *+(0000000000000000,fff0000000000000,7ff0000000000000) => fff0000000000000 7ff8000000000000 +#3: xvmaddmdp *+(8000000000000000,fff0000000000000,7ff7ffffffffffff) AND *+(7ff0000000000000,fff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvmaddmdp *+(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND *+(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) => 7ff8000000000000 7fffffffffffffff +#5: xvmaddmdp *+(fff7ffffffffffff,c0d0650f5a07b353,8000000000000000) AND *+(7ff8000000000000,c0d0650f5a07b353,0000000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvmaddmdp *+(fff8000000000000,c0d0650f5a07b353,0123214569900000) AND *+(8008340000078000,c0d0650f5a07b353,7ff0000000000000) => fff8000000000000 7ff0000000000000 +#7: xvmaddmdp *+(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) AND *+(41232585a9900000,c0d0650f5a07b353,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#8: xvmaddmdp *+(404f000000000000,8000000000000000,fff0000000000000) AND *+(0018000000b77501,8000000000000000,c0d0650f5a07b353) => fff0000000000000 c0d0650f5a07b353 +#9: xvmaddmdp *+(7fe800000000051b,8000000000000000,8000000000000000) AND *+(0123214569900000,8000000000000000,0000000000000000) => 8000000000000000 0000000000000000 +#10: xvmaddmdp *+(0000000000000000,8000000000000000,0123214569900000) AND *+(8000000000000000,8000000000000000,7ff0000000000000) => 0123214569900000 7ff0000000000000 +#11: xvmaddmdp *+(7ff0000000000000,8000000000000000,7ff7ffffffffffff) AND *+(fff0000000000000,8000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvmaddmdp *+(7ff7ffffffffffff,0000000000000000,fff0000000000000) AND *+(fff7ffffffffffff,0000000000000000,c0d0650f5a07b353) => 7fffffffffffffff ffffffffffffffff +#13: xvmaddmdp *+(7ff8000000000000,0000000000000000,8000000000000000) AND *+(fff8000000000000,0000000000000000,0000000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvmaddmdp *+(8008340000078000,0000000000000000,0123214569900000) AND *+(c0d0650f5a07b353,0000000000000000,7ff0000000000000) => 0123214569900000 7ff0000000000000 +#15: xvmaddmdp *+(3fd8000000000000,0000000000000000,7ff7ffffffffffff) AND *+(404f000000000000,0000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvmaddmdp *+(0018000000b77501,0123214569900000,fff0000000000000) AND *+(7fe800000000051b,0123214569900000,c0d0650f5a07b353) => fff0000000000000 411bab9728b78ae5 +#17: xvmaddmdp *+(0123214569900000,0123214569900000,8000000000000000) AND *+(0000000000000000,0123214569900000,0000000000000000) => 0000000000000000 0000000000000000 +#18: xvmaddmdp *+(8000000000000000,0123214569900000,404f000000000000) AND *+(7ff0000000000000,0123214569900000,7ff0000000000000) => 404f000000000000 7ff0000000000000 +#19: xvmaddmdp *+(fff0000000000000,0123214569900000,7ff7ffffffffffff) AND *+(7ff7ffffffffffff,0123214569900000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#20: xvmaddmdp *+(fff7ffffffffffff,7ff0000000000000,fff0000000000000) AND *+(7ff8000000000000,7ff0000000000000,c0d0650f5a07b353) => ffffffffffffffff 7ff8000000000000 +#21: xvmaddmdp *+(fff8000000000000,7ff0000000000000,8000000000000000) AND *+(8008340000078000,7ff0000000000000,0000000000000000) => fff8000000000000 fff0000000000000 +#22: xvmaddmdp *+(c0d0650f5a07b353,7ff0000000000000,0123214569900000) AND *+(41232585a9900000,7ff0000000000000,7ff0000000000000) => fff0000000000000 7ff0000000000000 +#23: xvmaddmdp *+(404f000000000000,7ff0000000000000,7ff7ffffffffffff) AND *+(0018000000b77501,7ff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#24: xvmaddmdp *+(7fe800000000051b,fff7ffffffffffff,fff0000000000000) AND *+(0123214569900000,fff7ffffffffffff,c0d0650f5a07b353) => ffffffffffffffff ffffffffffffffff +#25: xvmaddmdp *+(0000000000000000,fff8000000000000,8000000000000000) AND *+(8000000000000000,fff8000000000000,0000000000000000) => fff8000000000000 fff8000000000000 +#26: xvmaddmdp *+(7ff0000000000000,fff7ffffffffffff,0123214569900000) AND *+(fff0000000000000,fff7ffffffffffff,7ff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvmaddmdp *+(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND *+(fff7ffffffffffff,fff7ffffffffffff,7ff8000000000000) => ffffffffffffffff ffffffffffffffff +#28: xvmaddmdp *+(7ff8000000000000,fff8000000000000,fff0000000000000) AND *+(fff8000000000000,fff8000000000000,c0d0650f5a07b353) => fff8000000000000 fff8000000000000 +#29: xvmaddmdp *+(8008340000078000,fff8000000000000,8000000000000000) AND *+(c0d0650f5a07b353,41232585a9900000,41382511a2000000) => fff8000000000000 c2039db3bbaae2d2 +#30: xvmaddmdp *+(3fd8000000000000,41232585a9900000,41382511a2000000) AND *+(404f000000000000,7ff7ffffffffffff,7ff8000000000000) => 413bbc1ab1cb0000 7fffffffffffffff +#31: xvmaddmdp *+(0018000000b77501,7ff8000000000000,7ff8000000000000) AND *+(7fe800000000051b,7ff8000000000000,fff8000000000000) => 7ff8000000000000 7ff8000000000000 + +#0: xvmaddasp *+(ff800000,ff800000,3ec00000) AND *+(c683287b,ff800000,42780000) AND *+(49c1288d,49192c2d,00000000) AND *+(00000000,ff800000,7f800000) => ff800000 ff800000 49c1288d ff800000 +#1: xvmaddasp *+(00000000,ff800000,00000000) AND *+(7f800000,ff800000,00000000) AND *+(7fffffff,ff800000,80000000) AND *+(7fc00000,ff800000,7f800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvmaddasp *+(ff800000,c683287b,ff800000) AND *+(c683287b,c683287b,7fffffff) AND *+(80000000,c683287b,ffffffff) AND *+(00000000,c683287b,7fc00000) => 7fc00000 7fffffff ffffffff 7fc00000 +#3: xvmaddasp *+(00000000,c683287b,ffc00000) AND *+(7f800000,c683287b,80000000) AND *+(7fffffff,c683287b,c683287b) AND *+(7fc00000,c683287b,49192c2d) => ffc00000 7f800000 7fffffff 7fc00000 +#4: xvmaddasp *+(ff800000,80000000,7f800000) AND *+(c683287b,80000000,00000000) AND *+(80000000,80000000,00000000) AND *+(00000000,80000000,80000000) => 7fc00000 c683287b 80000000 00000000 +#5: xvmaddasp *+(00000000,80000000,7f800000) AND *+(7f800000,80000000,ff800000) AND *+(7fffffff,80000000,7fffffff) AND *+(7fc00000,80000000,ffffffff) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvmaddasp *+(ff800000,00000000,7fc00000) AND *+(c683287b,00000000,ffc00000) AND *+(80000000,00000000,80000000) AND *+(00000000,00000000,c683287b) => 7fc00000 ffc00000 80000000 00000000 +#7: xvmaddasp *+(00000000,00000000,00000000) AND *+(7f800000,00000000,7f800000) AND *+(7fffffff,00000000,00000000) AND *+(7fc00000,00000000,00000000) => 00000000 7fc00000 7fffffff 7fc00000 +#8: xvmaddasp *+(ff800000,00000000,80000000) AND *+(c683287b,00000000,7f800000) AND *+(80000000,00000000,ff800000) AND *+(00000000,00000000,7fffffff) => ff800000 7fc00000 7fc00000 7fffffff +#9: xvmaddasp *+(42780000,00000000,ffffffff) AND *+(7f800000,00000000,7fc00000) AND *+(7fffffff,00000000,ffc00000) AND *+(7fc00000,00000000,80000000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvmaddasp *+(ff800000,7f800000,42780000) AND *+(c683287b,7f800000,00000000) AND *+(80000000,7f800000,7f800000) AND *+(00000000,7f800000,00000000) => 7fc00000 7fc00000 7f800000 7fc00000 +#11: xvmaddasp *+(00000000,7f800000,00000000) AND *+(7f800000,7f800000,80000000) AND *+(7fffffff,7f800000,7f800000) AND *+(7fc00000,7f800000,ff800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvmaddasp *+(ff800000,ffffffff,7fffffff) AND *+(c683287b,ffffffff,ffffffff) AND *+(80000000,ffc00000,7fc00000) AND *+(00000000,ffc00000,ffc00000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvmaddasp *+(00000000,ffffffff,3ec00000) AND *+(7f800000,ffffffff,42780000) AND *+(7fffffff,ffffffff,00000000) AND *+(7fc00000,ffffffff,7f800000) => ffffffff ffffffff ffffffff ffffffff +#14: xvmaddasp *+(ff800000,ffc00000,00000000) AND *+(c683287b,ffc00000,00000000) AND *+(80000000,ffc00000,80000000) AND *+(49c1288d,49192c2d,7f800000) => ffc00000 ffc00000 ffc00000 7f800000 +#15: xvmaddasp *+(49c1288d,49192c2d,ff800000) AND *+(7fc00000,7fffffff,7fffffff) AND *+(7fc00000,7fc00000,ffffffff) AND *+(ffc00000,7fc00000,7fc00000) => ff800000 7fffffff 7fc00000 7fc00000 + +#0: xvmaddmsp *+(3ec00000,ff800000,ff800000) AND *+(42780000,ff800000,c683287b) AND *+(00000000,49192c2d,49c1288d) AND *+(7f800000,ff800000,00000000) => ff800000 ff800000 49c1288d ff800000 +#1: xvmaddmsp *+(00000000,ff800000,00000000) AND *+(00000000,ff800000,7f800000) AND *+(80000000,ff800000,7fffffff) AND *+(7f800000,ff800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvmaddmsp *+(ff800000,c683287b,ff800000) AND *+(7fffffff,c683287b,c683287b) AND *+(ffffffff,c683287b,80000000) AND *+(7fc00000,c683287b,00000000) => 7fc00000 7fffffff ffffffff 7fc00000 +#3: xvmaddmsp *+(ffc00000,c683287b,00000000) AND *+(80000000,c683287b,7f800000) AND *+(c683287b,c683287b,7fffffff) AND *+(49192c2d,c683287b,7fc00000) => ffc00000 7f800000 7fffffff 7fc00000 +#4: xvmaddmsp *+(7f800000,80000000,ff800000) AND *+(00000000,80000000,c683287b) AND *+(00000000,80000000,80000000) AND *+(80000000,80000000,00000000) => 7fc00000 c683287b 80000000 00000000 +#5: xvmaddmsp *+(7f800000,80000000,00000000) AND *+(ff800000,80000000,7f800000) AND *+(7fffffff,80000000,7fffffff) AND *+(ffffffff,80000000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvmaddmsp *+(7fc00000,00000000,ff800000) AND *+(ffc00000,00000000,c683287b) AND *+(80000000,00000000,80000000) AND *+(c683287b,00000000,00000000) => 7fc00000 ffc00000 80000000 00000000 +#7: xvmaddmsp *+(00000000,00000000,00000000) AND *+(7f800000,00000000,7f800000) AND *+(00000000,00000000,7fffffff) AND *+(00000000,00000000,7fc00000) => 00000000 7fc00000 7fffffff 7fc00000 +#8: xvmaddmsp *+(80000000,00000000,ff800000) AND *+(7f800000,00000000,c683287b) AND *+(ff800000,00000000,80000000) AND *+(7fffffff,00000000,00000000) => ff800000 7fc00000 7fc00000 7fffffff +#9: xvmaddmsp *+(ffffffff,00000000,42780000) AND *+(7fc00000,00000000,7f800000) AND *+(ffc00000,00000000,7fffffff) AND *+(80000000,00000000,7fc00000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvmaddmsp *+(42780000,7f800000,ff800000) AND *+(00000000,7f800000,c683287b) AND *+(7f800000,7f800000,80000000) AND *+(00000000,7f800000,00000000) => 7fc00000 7fc00000 7f800000 7fc00000 +#11: xvmaddmsp *+(00000000,7f800000,00000000) AND *+(80000000,7f800000,7f800000) AND *+(7f800000,7f800000,7fffffff) AND *+(ff800000,7f800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvmaddmsp *+(7fffffff,ffffffff,ff800000) AND *+(ffffffff,ffffffff,c683287b) AND *+(7fc00000,ffc00000,80000000) AND *+(ffc00000,ffc00000,00000000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvmaddmsp *+(3ec00000,ffffffff,00000000) AND *+(42780000,ffffffff,7f800000) AND *+(00000000,ffffffff,7fffffff) AND *+(7f800000,ffffffff,7fc00000) => ffffffff ffffffff ffffffff ffffffff +#14: xvmaddmsp *+(00000000,ffc00000,ff800000) AND *+(00000000,ffc00000,c683287b) AND *+(80000000,ffc00000,80000000) AND *+(7f800000,49192c2d,49c1288d) => ffc00000 ffc00000 ffc00000 7f800000 +#15: xvmaddmsp *+(ff800000,49192c2d,49c1288d) AND *+(7fffffff,7fffffff,7fc00000) AND *+(ffffffff,7fc00000,7fc00000) AND *+(7fc00000,7fc00000,ffc00000) => ff800000 7fffffff 7fc00000 7fc00000 + +#0: xvnmaddadp !*+(fff0000000000000,fff0000000000000,3fd8000000000000) AND !*+(c0d0650f5a07b353,fff0000000000000,404f000000000000) => 7ff0000000000000 7ff0000000000000 +#1: xvnmaddadp !*+(41382511a2000000,41232585a9900000,0018000000b77501) AND !*+(0000000000000000,fff0000000000000,7fe800000000051b) => c1382511a2000000 7ff0000000000000 +#2: xvnmaddadp !*+(0123214569900000,fff0000000000000,0123214569900000) AND !*+(7ff0000000000000,fff0000000000000,0000000000000000) => 7ff0000000000000 7ff8000000000000 +#3: xvnmaddadp !*+(7ff7ffffffffffff,fff0000000000000,8000000000000000) AND !*+(7ff8000000000000,fff0000000000000,7ff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvnmaddadp !*+(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND !*+(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) => 7ff8000000000000 7fffffffffffffff +#5: xvnmaddadp !*+(8000000000000000,c0d0650f5a07b353,fff7ffffffffffff) AND !*+(0000000000000000,c0d0650f5a07b353,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvnmaddadp !*+(0123214569900000,c0d0650f5a07b353,fff8000000000000) AND !*+(7ff0000000000000,c0d0650f5a07b353,8008340000078000) => fff8000000000000 fff0000000000000 +#7: xvnmaddadp !*+(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) AND !*+(7ff8000000000000,c0d0650f5a07b353,41232585a9900000) => 7fffffffffffffff 7ff8000000000000 +#8: xvnmaddadp !*+(fff0000000000000,8000000000000000,404f000000000000) AND !*+(c0d0650f5a07b353,8000000000000000,0018000000b77501) => 7ff0000000000000 40d0650f5a07b353 +#9: xvnmaddadp !*+(8000000000000000,8000000000000000,7fe800000000051b) AND !*+(0000000000000000,8000000000000000,0123214569900000) => 0000000000000000 8000000000000000 +#10: xvnmaddadp !*+(0123214569900000,8000000000000000,0000000000000000) AND !*+(7ff0000000000000,8000000000000000,8000000000000000) => 8123214569900000 fff0000000000000 +#11: xvnmaddadp !*+(7ff7ffffffffffff,8000000000000000,7ff0000000000000) AND !*+(7ff8000000000000,8000000000000000,fff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvnmaddadp !*+(fff0000000000000,0000000000000000,7ff7ffffffffffff) AND !*+(c0d0650f5a07b353,0000000000000000,fff7ffffffffffff) => 7fffffffffffffff ffffffffffffffff +#13: xvnmaddadp !*+(8000000000000000,0000000000000000,7ff8000000000000) AND !*+(0000000000000000,0000000000000000,fff8000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvnmaddadp !*+(0123214569900000,0000000000000000,8008340000078000) AND !*+(7ff0000000000000,0000000000000000,c0d0650f5a07b353) => 8123214569900000 fff0000000000000 +#15: xvnmaddadp !*+(7ff7ffffffffffff,0000000000000000,3fd8000000000000) AND !*+(7ff8000000000000,0000000000000000,404f000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvnmaddadp !*+(fff0000000000000,0123214569900000,0018000000b77501) AND !*+(c0d0650f5a07b353,0123214569900000,7fe800000000051b) => 7ff0000000000000 c11bab9728b78ae5 +#17: xvnmaddadp !*+(8000000000000000,0123214569900000,0123214569900000) AND !*+(0000000000000000,0123214569900000,0000000000000000) => 8000000000000000 8000000000000000 +#18: xvnmaddadp !*+(404f000000000000,0123214569900000,8000000000000000) AND !*+(7ff0000000000000,0123214569900000,7ff0000000000000) => c04f000000000000 fff0000000000000 +#19: xvnmaddadp !*+(7ff7ffffffffffff,0123214569900000,fff0000000000000) AND !*+(7ff8000000000000,0123214569900000,7ff7ffffffffffff) => 7fffffffffffffff 7ff8000000000000 +#20: xvnmaddadp !*+(fff0000000000000,7ff0000000000000,fff7ffffffffffff) AND !*+(c0d0650f5a07b353,7ff0000000000000,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#21: xvnmaddadp !*+(8000000000000000,7ff0000000000000,fff8000000000000) AND !*+(0000000000000000,7ff0000000000000,8008340000078000) => fff8000000000000 7ff0000000000000 +#22: xvnmaddadp !*+(0123214569900000,7ff0000000000000,c0d0650f5a07b353) AND !*+(7ff0000000000000,7ff0000000000000,41232585a9900000) => 7ff0000000000000 fff0000000000000 +#23: xvnmaddadp !*+(7ff7ffffffffffff,7ff0000000000000,404f000000000000) AND !*+(7ff8000000000000,7ff0000000000000,0018000000b77501) => 7fffffffffffffff 7ff8000000000000 +#24: xvnmaddadp !*+(fff0000000000000,fff7ffffffffffff,7fe800000000051b) AND !*+(c0d0650f5a07b353,fff7ffffffffffff,0123214569900000) => ffffffffffffffff ffffffffffffffff +#25: xvnmaddadp !*+(8000000000000000,fff8000000000000,0000000000000000) AND !*+(0000000000000000,fff8000000000000,8000000000000000) => fff8000000000000 fff8000000000000 +#26: xvnmaddadp !*+(0123214569900000,fff7ffffffffffff,7ff0000000000000) AND !*+(7ff0000000000000,fff7ffffffffffff,fff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvnmaddadp !*+(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND !*+(7ff8000000000000,fff7ffffffffffff,fff7ffffffffffff) => ffffffffffffffff ffffffffffffffff +#28: xvnmaddadp !*+(fff0000000000000,fff8000000000000,7ff8000000000000) AND !*+(c0d0650f5a07b353,fff8000000000000,fff8000000000000) => fff8000000000000 fff8000000000000 +#29: xvnmaddadp !*+(8000000000000000,fff8000000000000,8008340000078000) AND !*+(41382511a2000000,41232585a9900000,c0d0650f5a07b353) => fff8000000000000 42039db3bbaae2d2 +#30: xvnmaddadp !*+(41382511a2000000,41232585a9900000,3fd8000000000000) AND !*+(7ff8000000000000,7ff7ffffffffffff,404f000000000000) => c13bbc1ab1cb0000 7fffffffffffffff +#31: xvnmaddadp !*+(7ff8000000000000,7ff8000000000000,0018000000b77501) AND !*+(fff8000000000000,7ff8000000000000,7fe800000000051b) => 7ff8000000000000 7ff8000000000000 + +#0: xvnmaddmdp !*+(3fd8000000000000,fff0000000000000,fff0000000000000) AND !*+(404f000000000000,fff0000000000000,c0d0650f5a07b353) => 7ff0000000000000 7ff0000000000000 +#1: xvnmaddmdp !*+(0018000000b77501,41232585a9900000,41382511a2000000) AND !*+(7fe800000000051b,fff0000000000000,0000000000000000) => c1382511a2000000 7ff0000000000000 +#2: xvnmaddmdp !*+(0123214569900000,fff0000000000000,0123214569900000) AND !*+(0000000000000000,fff0000000000000,7ff0000000000000) => 7ff0000000000000 7ff8000000000000 +#3: xvnmaddmdp !*+(8000000000000000,fff0000000000000,7ff7ffffffffffff) AND !*+(7ff0000000000000,fff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvnmaddmdp !*+(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND !*+(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) => 7ff8000000000000 7fffffffffffffff +#5: xvnmaddmdp !*+(fff7ffffffffffff,c0d0650f5a07b353,8000000000000000) AND !*+(7ff8000000000000,c0d0650f5a07b353,0000000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvnmaddmdp !*+(fff8000000000000,c0d0650f5a07b353,0123214569900000) AND !*+(8008340000078000,c0d0650f5a07b353,7ff0000000000000) => fff8000000000000 fff0000000000000 +#7: xvnmaddmdp !*+(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) AND !*+(41232585a9900000,c0d0650f5a07b353,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#8: xvnmaddmdp !*+(404f000000000000,8000000000000000,fff0000000000000) AND !*+(0018000000b77501,8000000000000000,c0d0650f5a07b353) => 7ff0000000000000 40d0650f5a07b353 +#9: xvnmaddmdp !*+(7fe800000000051b,8000000000000000,8000000000000000) AND !*+(0123214569900000,8000000000000000,0000000000000000) => 0000000000000000 8000000000000000 +#10: xvnmaddmdp !*+(0000000000000000,8000000000000000,0123214569900000) AND !*+(8000000000000000,8000000000000000,7ff0000000000000) => 8123214569900000 fff0000000000000 +#11: xvnmaddmdp !*+(7ff0000000000000,8000000000000000,7ff7ffffffffffff) AND !*+(fff0000000000000,8000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvnmaddmdp !*+(7ff7ffffffffffff,0000000000000000,fff0000000000000) AND !*+(fff7ffffffffffff,0000000000000000,c0d0650f5a07b353) => 7fffffffffffffff ffffffffffffffff +#13: xvnmaddmdp !*+(7ff8000000000000,0000000000000000,8000000000000000) AND !*+(fff8000000000000,0000000000000000,0000000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvnmaddmdp !*+(8008340000078000,0000000000000000,0123214569900000) AND !*+(c0d0650f5a07b353,0000000000000000,7ff0000000000000) => 8123214569900000 fff0000000000000 +#15: xvnmaddmdp !*+(3fd8000000000000,0000000000000000,7ff7ffffffffffff) AND !*+(404f000000000000,0000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvnmaddmdp !*+(0018000000b77501,0123214569900000,fff0000000000000) AND !*+(7fe800000000051b,0123214569900000,c0d0650f5a07b353) => 7ff0000000000000 c11bab9728b78ae5 +#17: xvnmaddmdp !*+(0123214569900000,0123214569900000,8000000000000000) AND !*+(0000000000000000,0123214569900000,0000000000000000) => 8000000000000000 8000000000000000 +#18: xvnmaddmdp !*+(8000000000000000,0123214569900000,404f000000000000) AND !*+(7ff0000000000000,0123214569900000,7ff0000000000000) => c04f000000000000 fff0000000000000 +#19: xvnmaddmdp !*+(fff0000000000000,0123214569900000,7ff7ffffffffffff) AND !*+(7ff7ffffffffffff,0123214569900000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#20: xvnmaddmdp !*+(fff7ffffffffffff,7ff0000000000000,fff0000000000000) AND !*+(7ff8000000000000,7ff0000000000000,c0d0650f5a07b353) => ffffffffffffffff 7ff8000000000000 +#21: xvnmaddmdp !*+(fff8000000000000,7ff0000000000000,8000000000000000) AND !*+(8008340000078000,7ff0000000000000,0000000000000000) => fff8000000000000 7ff0000000000000 +#22: xvnmaddmdp !*+(c0d0650f5a07b353,7ff0000000000000,0123214569900000) AND !*+(41232585a9900000,7ff0000000000000,7ff0000000000000) => 7ff0000000000000 fff0000000000000 +#23: xvnmaddmdp !*+(404f000000000000,7ff0000000000000,7ff7ffffffffffff) AND !*+(0018000000b77501,7ff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#24: xvnmaddmdp !*+(7fe800000000051b,fff7ffffffffffff,fff0000000000000) AND !*+(0123214569900000,fff7ffffffffffff,c0d0650f5a07b353) => ffffffffffffffff ffffffffffffffff +#25: xvnmaddmdp !*+(0000000000000000,fff8000000000000,8000000000000000) AND !*+(8000000000000000,fff8000000000000,0000000000000000) => fff8000000000000 fff8000000000000 +#26: xvnmaddmdp !*+(7ff0000000000000,fff7ffffffffffff,0123214569900000) AND !*+(fff0000000000000,fff7ffffffffffff,7ff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvnmaddmdp !*+(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND !*+(fff7ffffffffffff,fff7ffffffffffff,7ff8000000000000) => ffffffffffffffff ffffffffffffffff +#28: xvnmaddmdp !*+(7ff8000000000000,fff8000000000000,fff0000000000000) AND !*+(fff8000000000000,fff8000000000000,c0d0650f5a07b353) => fff8000000000000 fff8000000000000 +#29: xvnmaddmdp !*+(8008340000078000,fff8000000000000,8000000000000000) AND !*+(c0d0650f5a07b353,41232585a9900000,41382511a2000000) => fff8000000000000 42039db3bbaae2d2 +#30: xvnmaddmdp !*+(3fd8000000000000,41232585a9900000,41382511a2000000) AND !*+(404f000000000000,7ff7ffffffffffff,7ff8000000000000) => c13bbc1ab1cb0000 7fffffffffffffff +#31: xvnmaddmdp !*+(0018000000b77501,7ff8000000000000,7ff8000000000000) AND !*+(7fe800000000051b,7ff8000000000000,fff8000000000000) => 7ff8000000000000 7ff8000000000000 + +#0: xvnmaddasp !*+(ff800000,ff800000,3ec00000) AND !*+(c683287b,ff800000,42780000) AND !*+(49c1288d,49192c2d,00000000) AND !*+(00000000,ff800000,7f800000) => 7f800000 7f800000 c9c1288d 7f800000 +#1: xvnmaddasp !*+(00000000,ff800000,00000000) AND !*+(7f800000,ff800000,00000000) AND !*+(7fffffff,ff800000,80000000) AND !*+(7fc00000,ff800000,7f800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvnmaddasp !*+(ff800000,c683287b,ff800000) AND !*+(c683287b,c683287b,7fffffff) AND !*+(80000000,c683287b,ffffffff) AND !*+(00000000,c683287b,7fc00000) => 7fc00000 7fffffff ffffffff 7fc00000 +#3: xvnmaddasp !*+(00000000,c683287b,ffc00000) AND !*+(7f800000,c683287b,80000000) AND !*+(7fffffff,c683287b,c683287b) AND !*+(7fc00000,c683287b,49192c2d) => ffc00000 ff800000 7fffffff 7fc00000 +#4: xvnmaddasp !*+(ff800000,80000000,7f800000) AND !*+(c683287b,80000000,00000000) AND !*+(80000000,80000000,00000000) AND !*+(00000000,80000000,80000000) => 7fc00000 4683287b 00000000 80000000 +#5: xvnmaddasp !*+(00000000,80000000,7f800000) AND !*+(7f800000,80000000,ff800000) AND !*+(7fffffff,80000000,7fffffff) AND !*+(7fc00000,80000000,ffffffff) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvnmaddasp !*+(ff800000,00000000,7fc00000) AND !*+(c683287b,00000000,ffc00000) AND !*+(80000000,00000000,80000000) AND !*+(00000000,00000000,c683287b) => 7fc00000 ffc00000 00000000 80000000 +#7: xvnmaddasp !*+(00000000,00000000,00000000) AND !*+(7f800000,00000000,7f800000) AND !*+(7fffffff,00000000,00000000) AND !*+(7fc00000,00000000,00000000) => 80000000 7fc00000 7fffffff 7fc00000 +#8: xvnmaddasp !*+(ff800000,00000000,80000000) AND !*+(c683287b,00000000,7f800000) AND !*+(80000000,00000000,ff800000) AND !*+(00000000,00000000,7fffffff) => 7f800000 7fc00000 7fc00000 7fffffff +#9: xvnmaddasp !*+(42780000,00000000,ffffffff) AND !*+(7f800000,00000000,7fc00000) AND !*+(7fffffff,00000000,ffc00000) AND !*+(7fc00000,00000000,80000000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvnmaddasp !*+(ff800000,7f800000,42780000) AND !*+(c683287b,7f800000,00000000) AND !*+(80000000,7f800000,7f800000) AND !*+(00000000,7f800000,00000000) => 7fc00000 7fc00000 ff800000 7fc00000 +#11: xvnmaddasp !*+(00000000,7f800000,00000000) AND !*+(7f800000,7f800000,80000000) AND !*+(7fffffff,7f800000,7f800000) AND !*+(7fc00000,7f800000,ff800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvnmaddasp !*+(ff800000,ffffffff,7fffffff) AND !*+(c683287b,ffffffff,ffffffff) AND !*+(80000000,ffc00000,7fc00000) AND !*+(00000000,ffc00000,ffc00000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvnmaddasp !*+(00000000,ffffffff,3ec00000) AND !*+(7f800000,ffffffff,42780000) AND !*+(7fffffff,ffffffff,00000000) AND !*+(7fc00000,ffffffff,7f800000) => ffffffff ffffffff ffffffff ffffffff +#14: xvnmaddasp !*+(ff800000,ffc00000,00000000) AND !*+(c683287b,ffc00000,00000000) AND !*+(80000000,ffc00000,80000000) AND !*+(49c1288d,49192c2d,7f800000) => ffc00000 ffc00000 ffc00000 ff800000 +#15: xvnmaddasp !*+(49c1288d,49192c2d,ff800000) AND !*+(7fc00000,7fffffff,7fffffff) AND !*+(7fc00000,7fc00000,ffffffff) AND !*+(ffc00000,7fc00000,7fc00000) => 7f800000 7fffffff 7fc00000 7fc00000 + +#0: xvnmaddmsp !*+(3ec00000,ff800000,ff800000) AND !*+(42780000,ff800000,c683287b) AND !*+(00000000,49192c2d,49c1288d) AND !*+(7f800000,ff800000,00000000) => 7f800000 7f800000 c9c1288d 7f800000 +#1: xvnmaddmsp !*+(00000000,ff800000,00000000) AND !*+(00000000,ff800000,7f800000) AND !*+(80000000,ff800000,7fffffff) AND !*+(7f800000,ff800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvnmaddmsp !*+(ff800000,c683287b,ff800000) AND !*+(7fffffff,c683287b,c683287b) AND !*+(ffffffff,c683287b,80000000) AND !*+(7fc00000,c683287b,00000000) => 7fc00000 7fffffff ffffffff 7fc00000 +#3: xvnmaddmsp !*+(ffc00000,c683287b,00000000) AND !*+(80000000,c683287b,7f800000) AND !*+(c683287b,c683287b,7fffffff) AND !*+(49192c2d,c683287b,7fc00000) => ffc00000 ff800000 7fffffff 7fc00000 +#4: xvnmaddmsp !*+(7f800000,80000000,ff800000) AND !*+(00000000,80000000,c683287b) AND !*+(00000000,80000000,80000000) AND !*+(80000000,80000000,00000000) => 7fc00000 4683287b 00000000 80000000 +#5: xvnmaddmsp !*+(7f800000,80000000,00000000) AND !*+(ff800000,80000000,7f800000) AND !*+(7fffffff,80000000,7fffffff) AND !*+(ffffffff,80000000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvnmaddmsp !*+(7fc00000,00000000,ff800000) AND !*+(ffc00000,00000000,c683287b) AND !*+(80000000,00000000,80000000) AND !*+(c683287b,00000000,00000000) => 7fc00000 ffc00000 00000000 80000000 +#7: xvnmaddmsp !*+(00000000,00000000,00000000) AND !*+(7f800000,00000000,7f800000) AND !*+(00000000,00000000,7fffffff) AND !*+(00000000,00000000,7fc00000) => 80000000 7fc00000 7fffffff 7fc00000 +#8: xvnmaddmsp !*+(80000000,00000000,ff800000) AND !*+(7f800000,00000000,c683287b) AND !*+(ff800000,00000000,80000000) AND !*+(7fffffff,00000000,00000000) => 7f800000 7fc00000 7fc00000 7fffffff +#9: xvnmaddmsp !*+(ffffffff,00000000,42780000) AND !*+(7fc00000,00000000,7f800000) AND !*+(ffc00000,00000000,7fffffff) AND !*+(80000000,00000000,7fc00000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvnmaddmsp !*+(42780000,7f800000,ff800000) AND !*+(00000000,7f800000,c683287b) AND !*+(7f800000,7f800000,80000000) AND !*+(00000000,7f800000,00000000) => 7fc00000 7fc00000 ff800000 7fc00000 +#11: xvnmaddmsp !*+(00000000,7f800000,00000000) AND !*+(80000000,7f800000,7f800000) AND !*+(7f800000,7f800000,7fffffff) AND !*+(ff800000,7f800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvnmaddmsp !*+(7fffffff,ffffffff,ff800000) AND !*+(ffffffff,ffffffff,c683287b) AND !*+(7fc00000,ffc00000,80000000) AND !*+(ffc00000,ffc00000,00000000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvnmaddmsp !*+(3ec00000,ffffffff,00000000) AND !*+(42780000,ffffffff,7f800000) AND !*+(00000000,ffffffff,7fffffff) AND !*+(7f800000,ffffffff,7fc00000) => ffffffff ffffffff ffffffff ffffffff +#14: xvnmaddmsp !*+(00000000,ffc00000,ff800000) AND !*+(00000000,ffc00000,c683287b) AND !*+(80000000,ffc00000,80000000) AND !*+(7f800000,49192c2d,49c1288d) => ffc00000 ffc00000 ffc00000 ff800000 +#15: xvnmaddmsp !*+(ff800000,49192c2d,49c1288d) AND !*+(7fffffff,7fffffff,7fc00000) AND !*+(ffffffff,7fc00000,7fc00000) AND !*+(7fc00000,7fc00000,ffc00000) => 7f800000 7fffffff 7fc00000 7fc00000 + +#0: xvmsubadp *-(fff0000000000000,fff0000000000000,3fd8000000000000) AND *-(c0d0650f5a07b353,fff0000000000000,404f000000000000) => 7ff8000000000000 fff0000000000000 +#1: xvmsubadp *-(41382511a2000000,41232585a9900000,0018000000b77501) AND *-(0000000000000000,fff0000000000000,7fe800000000051b) => c1382511a2000000 fff0000000000000 +#2: xvmsubadp *-(0123214569900000,fff0000000000000,0123214569900000) AND *-(7ff0000000000000,fff0000000000000,0000000000000000) => fff0000000000000 7ff8000000000000 +#3: xvmsubadp *-(7ff7ffffffffffff,fff0000000000000,8000000000000000) AND *-(7ff8000000000000,fff0000000000000,7ff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvmsubadp *-(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND *-(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) => 7ff0000000000000 7fffffffffffffff +#5: xvmsubadp *-(8000000000000000,c0d0650f5a07b353,fff7ffffffffffff) AND *-(0000000000000000,c0d0650f5a07b353,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvmsubadp *-(0123214569900000,c0d0650f5a07b353,fff8000000000000) AND *-(7ff0000000000000,c0d0650f5a07b353,8008340000078000) => fff8000000000000 fff0000000000000 +#7: xvmsubadp *-(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) AND *-(7ff8000000000000,c0d0650f5a07b353,41232585a9900000) => 7fffffffffffffff 7ff8000000000000 +#8: xvmsubadp *-(fff0000000000000,8000000000000000,404f000000000000) AND *-(c0d0650f5a07b353,8000000000000000,0018000000b77501) => 7ff0000000000000 40d0650f5a07b353 +#9: xvmsubadp *-(8000000000000000,8000000000000000,7fe800000000051b) AND *-(0000000000000000,8000000000000000,0123214569900000) => 0000000000000000 8000000000000000 +#10: xvmsubadp *-(0123214569900000,8000000000000000,0000000000000000) AND *-(7ff0000000000000,8000000000000000,8000000000000000) => 8123214569900000 fff0000000000000 +#11: xvmsubadp *-(7ff7ffffffffffff,8000000000000000,7ff0000000000000) AND *-(7ff8000000000000,8000000000000000,fff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvmsubadp *-(fff0000000000000,0000000000000000,7ff7ffffffffffff) AND *-(c0d0650f5a07b353,0000000000000000,fff7ffffffffffff) => 7fffffffffffffff ffffffffffffffff +#13: xvmsubadp *-(8000000000000000,0000000000000000,7ff8000000000000) AND *-(0000000000000000,0000000000000000,fff8000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvmsubadp *-(0123214569900000,0000000000000000,8008340000078000) AND *-(7ff0000000000000,0000000000000000,c0d0650f5a07b353) => 8123214569900000 fff0000000000000 +#15: xvmsubadp *-(7ff7ffffffffffff,0000000000000000,3fd8000000000000) AND *-(7ff8000000000000,0000000000000000,404f000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvmsubadp *-(fff0000000000000,0123214569900000,0018000000b77501) AND *-(c0d0650f5a07b353,0123214569900000,7fe800000000051b) => 7ff0000000000000 411db83913f88150 +#17: xvmsubadp *-(8000000000000000,0123214569900000,0123214569900000) AND *-(0000000000000000,0123214569900000,0000000000000000) => 0000000000000000 0000000000000000 +#18: xvmsubadp *-(404f000000000000,0123214569900000,8000000000000000) AND *-(7ff0000000000000,0123214569900000,7ff0000000000000) => c04f000000000000 7ff8000000000000 +#19: xvmsubadp *-(7ff7ffffffffffff,0123214569900000,fff0000000000000) AND *-(7ff8000000000000,0123214569900000,7ff7ffffffffffff) => 7fffffffffffffff 7ff8000000000000 +#20: xvmsubadp *-(fff0000000000000,7ff0000000000000,fff7ffffffffffff) AND *-(c0d0650f5a07b353,7ff0000000000000,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#21: xvmsubadp *-(8000000000000000,7ff0000000000000,fff8000000000000) AND *-(0000000000000000,7ff0000000000000,8008340000078000) => fff8000000000000 fff0000000000000 +#22: xvmsubadp *-(0123214569900000,7ff0000000000000,c0d0650f5a07b353) AND *-(7ff0000000000000,7ff0000000000000,41232585a9900000) => fff0000000000000 7ff8000000000000 +#23: xvmsubadp *-(7ff7ffffffffffff,7ff0000000000000,404f000000000000) AND *-(7ff8000000000000,7ff0000000000000,0018000000b77501) => 7fffffffffffffff 7ff8000000000000 +#24: xvmsubadp *-(fff0000000000000,fff7ffffffffffff,7fe800000000051b) AND *-(c0d0650f5a07b353,fff7ffffffffffff,0123214569900000) => ffffffffffffffff ffffffffffffffff +#25: xvmsubadp *-(8000000000000000,fff8000000000000,0000000000000000) AND *-(0000000000000000,fff8000000000000,8000000000000000) => fff8000000000000 fff8000000000000 +#26: xvmsubadp *-(0123214569900000,fff7ffffffffffff,7ff0000000000000) AND *-(7ff0000000000000,fff7ffffffffffff,fff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvmsubadp *-(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND *-(7ff8000000000000,fff7ffffffffffff,fff7ffffffffffff) => ffffffffffffffff ffffffffffffffff +#28: xvmsubadp *-(fff0000000000000,fff8000000000000,7ff8000000000000) AND *-(c0d0650f5a07b353,fff8000000000000,fff8000000000000) => fff8000000000000 fff8000000000000 +#29: xvmsubadp *-(8000000000000000,fff8000000000000,8008340000078000) AND *-(41382511a2000000,41232585a9900000,c0d0650f5a07b353) => fff8000000000000 c2039f360cc502d2 +#30: xvmsubadp *-(41382511a2000000,41232585a9900000,3fd8000000000000) AND *-(7ff8000000000000,7ff7ffffffffffff,404f000000000000) => c1348e0892350000 7fffffffffffffff +#31: xvmsubadp *-(7ff8000000000000,7ff8000000000000,0018000000b77501) AND *-(fff8000000000000,7ff8000000000000,7fe800000000051b) => 7ff8000000000000 7ff8000000000000 + +#0: xvmsubmdp *-(3fd8000000000000,fff0000000000000,fff0000000000000) AND *-(404f000000000000,fff0000000000000,c0d0650f5a07b353) => 7ff8000000000000 fff0000000000000 +#1: xvmsubmdp *-(0018000000b77501,41232585a9900000,41382511a2000000) AND *-(7fe800000000051b,fff0000000000000,0000000000000000) => c1382511a2000000 fff0000000000000 +#2: xvmsubmdp *-(0123214569900000,fff0000000000000,0123214569900000) AND *-(0000000000000000,fff0000000000000,7ff0000000000000) => fff0000000000000 7ff8000000000000 +#3: xvmsubmdp *-(8000000000000000,fff0000000000000,7ff7ffffffffffff) AND *-(7ff0000000000000,fff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvmsubmdp *-(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND *-(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) => 7ff0000000000000 7fffffffffffffff +#5: xvmsubmdp *-(fff7ffffffffffff,c0d0650f5a07b353,8000000000000000) AND *-(7ff8000000000000,c0d0650f5a07b353,0000000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvmsubmdp *-(fff8000000000000,c0d0650f5a07b353,0123214569900000) AND *-(8008340000078000,c0d0650f5a07b353,7ff0000000000000) => fff8000000000000 fff0000000000000 +#7: xvmsubmdp *-(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) AND *-(41232585a9900000,c0d0650f5a07b353,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#8: xvmsubmdp *-(404f000000000000,8000000000000000,fff0000000000000) AND *-(0018000000b77501,8000000000000000,c0d0650f5a07b353) => 7ff0000000000000 40d0650f5a07b353 +#9: xvmsubmdp *-(7fe800000000051b,8000000000000000,8000000000000000) AND *-(0123214569900000,8000000000000000,0000000000000000) => 0000000000000000 8000000000000000 +#10: xvmsubmdp *-(0000000000000000,8000000000000000,0123214569900000) AND *-(8000000000000000,8000000000000000,7ff0000000000000) => 8123214569900000 fff0000000000000 +#11: xvmsubmdp *-(7ff0000000000000,8000000000000000,7ff7ffffffffffff) AND *-(fff0000000000000,8000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvmsubmdp *-(7ff7ffffffffffff,0000000000000000,fff0000000000000) AND *-(fff7ffffffffffff,0000000000000000,c0d0650f5a07b353) => 7fffffffffffffff ffffffffffffffff +#13: xvmsubmdp *-(7ff8000000000000,0000000000000000,8000000000000000) AND *-(fff8000000000000,0000000000000000,0000000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvmsubmdp *-(8008340000078000,0000000000000000,0123214569900000) AND *-(c0d0650f5a07b353,0000000000000000,7ff0000000000000) => 8123214569900000 fff0000000000000 +#15: xvmsubmdp *-(3fd8000000000000,0000000000000000,7ff7ffffffffffff) AND *-(404f000000000000,0000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvmsubmdp *-(0018000000b77501,0123214569900000,fff0000000000000) AND *-(7fe800000000051b,0123214569900000,c0d0650f5a07b353) => 7ff0000000000000 411db83913f88150 +#17: xvmsubmdp *-(0123214569900000,0123214569900000,8000000000000000) AND *-(0000000000000000,0123214569900000,0000000000000000) => 0000000000000000 0000000000000000 +#18: xvmsubmdp *-(8000000000000000,0123214569900000,404f000000000000) AND *-(7ff0000000000000,0123214569900000,7ff0000000000000) => c04f000000000000 7ff8000000000000 +#19: xvmsubmdp *-(fff0000000000000,0123214569900000,7ff7ffffffffffff) AND *-(7ff7ffffffffffff,0123214569900000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#20: xvmsubmdp *-(fff7ffffffffffff,7ff0000000000000,fff0000000000000) AND *-(7ff8000000000000,7ff0000000000000,c0d0650f5a07b353) => ffffffffffffffff 7ff8000000000000 +#21: xvmsubmdp *-(fff8000000000000,7ff0000000000000,8000000000000000) AND *-(8008340000078000,7ff0000000000000,0000000000000000) => fff8000000000000 fff0000000000000 +#22: xvmsubmdp *-(c0d0650f5a07b353,7ff0000000000000,0123214569900000) AND *-(41232585a9900000,7ff0000000000000,7ff0000000000000) => fff0000000000000 7ff8000000000000 +#23: xvmsubmdp *-(404f000000000000,7ff0000000000000,7ff7ffffffffffff) AND *-(0018000000b77501,7ff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#24: xvmsubmdp *-(7fe800000000051b,fff7ffffffffffff,fff0000000000000) AND *-(0123214569900000,fff7ffffffffffff,c0d0650f5a07b353) => ffffffffffffffff ffffffffffffffff +#25: xvmsubmdp *-(0000000000000000,fff8000000000000,8000000000000000) AND *-(8000000000000000,fff8000000000000,0000000000000000) => fff8000000000000 fff8000000000000 +#26: xvmsubmdp *-(7ff0000000000000,fff7ffffffffffff,0123214569900000) AND *-(fff0000000000000,fff7ffffffffffff,7ff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvmsubmdp *-(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND *-(fff7ffffffffffff,fff7ffffffffffff,7ff8000000000000) => ffffffffffffffff ffffffffffffffff +#28: xvmsubmdp *-(7ff8000000000000,fff8000000000000,fff0000000000000) AND *-(fff8000000000000,fff8000000000000,c0d0650f5a07b353) => fff8000000000000 fff8000000000000 +#29: xvmsubmdp *-(8008340000078000,fff8000000000000,8000000000000000) AND *-(c0d0650f5a07b353,41232585a9900000,41382511a2000000) => fff8000000000000 c2039f360cc502d2 +#30: xvmsubmdp *-(3fd8000000000000,41232585a9900000,41382511a2000000) AND *-(404f000000000000,7ff7ffffffffffff,7ff8000000000000) => c1348e0892350000 7fffffffffffffff +#31: xvmsubmdp *-(0018000000b77501,7ff8000000000000,7ff8000000000000) AND *-(7fe800000000051b,7ff8000000000000,fff8000000000000) => 7ff8000000000000 7ff8000000000000 + +#0: xvmsubasp *-(ff800000,ff800000,3ec00000) AND *-(c683287b,ff800000,42780000) AND *-(49c1288d,49192c2d,00000000) AND *-(00000000,ff800000,7f800000) => 7fc00000 ff800000 c9c1288d ff800000 +#1: xvmsubasp *-(00000000,ff800000,00000000) AND *-(7f800000,ff800000,00000000) AND *-(7fffffff,ff800000,80000000) AND *-(7fc00000,ff800000,7f800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvmsubasp *-(ff800000,c683287b,ff800000) AND *-(c683287b,c683287b,7fffffff) AND *-(80000000,c683287b,ffffffff) AND *-(00000000,c683287b,7fc00000) => 7f800000 7fffffff ffffffff 7fc00000 +#3: xvmsubasp *-(00000000,c683287b,ffc00000) AND *-(7f800000,c683287b,80000000) AND *-(7fffffff,c683287b,c683287b) AND *-(7fc00000,c683287b,49192c2d) => ffc00000 ff800000 7fffffff 7fc00000 +#4: xvmsubasp *-(ff800000,80000000,7f800000) AND *-(c683287b,80000000,00000000) AND *-(80000000,80000000,00000000) AND *-(00000000,80000000,80000000) => 7fc00000 4683287b 00000000 00000000 +#5: xvmsubasp *-(00000000,80000000,7f800000) AND *-(7f800000,80000000,ff800000) AND *-(7fffffff,80000000,7fffffff) AND *-(7fc00000,80000000,ffffffff) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvmsubasp *-(ff800000,00000000,7fc00000) AND *-(c683287b,00000000,ffc00000) AND *-(80000000,00000000,80000000) AND *-(00000000,00000000,c683287b) => 7fc00000 ffc00000 00000000 80000000 +#7: xvmsubasp *-(00000000,00000000,00000000) AND *-(7f800000,00000000,7f800000) AND *-(7fffffff,00000000,00000000) AND *-(7fc00000,00000000,00000000) => 00000000 7fc00000 7fffffff 7fc00000 +#8: xvmsubasp *-(ff800000,00000000,80000000) AND *-(c683287b,00000000,7f800000) AND *-(80000000,00000000,ff800000) AND *-(00000000,00000000,7fffffff) => 7f800000 7fc00000 7fc00000 7fffffff +#9: xvmsubasp *-(42780000,00000000,ffffffff) AND *-(7f800000,00000000,7fc00000) AND *-(7fffffff,00000000,ffc00000) AND *-(7fc00000,00000000,80000000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvmsubasp *-(ff800000,7f800000,42780000) AND *-(c683287b,7f800000,00000000) AND *-(80000000,7f800000,7f800000) AND *-(00000000,7f800000,00000000) => 7f800000 7fc00000 7f800000 7fc00000 +#11: xvmsubasp *-(00000000,7f800000,00000000) AND *-(7f800000,7f800000,80000000) AND *-(7fffffff,7f800000,7f800000) AND *-(7fc00000,7f800000,ff800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvmsubasp *-(ff800000,ffffffff,7fffffff) AND *-(c683287b,ffffffff,ffffffff) AND *-(80000000,ffc00000,7fc00000) AND *-(00000000,ffc00000,ffc00000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvmsubasp *-(00000000,ffffffff,3ec00000) AND *-(7f800000,ffffffff,42780000) AND *-(7fffffff,ffffffff,00000000) AND *-(7fc00000,ffffffff,7f800000) => ffffffff ffffffff ffffffff ffffffff +#14: xvmsubasp *-(ff800000,ffc00000,00000000) AND *-(c683287b,ffc00000,00000000) AND *-(80000000,ffc00000,80000000) AND *-(49c1288d,49192c2d,7f800000) => ffc00000 ffc00000 ffc00000 7f800000 +#15: xvmsubasp *-(49c1288d,49192c2d,ff800000) AND *-(7fc00000,7fffffff,7fffffff) AND *-(7fc00000,7fc00000,ffffffff) AND *-(ffc00000,7fc00000,7fc00000) => ff800000 7fffffff 7fc00000 7fc00000 + +#0: xvmsubmsp *-(3ec00000,ff800000,ff800000) AND *-(42780000,ff800000,c683287b) AND *-(00000000,49192c2d,49c1288d) AND *-(7f800000,ff800000,00000000) => 7fc00000 ff800000 c9c1288d ff800000 +#1: xvmsubmsp *-(00000000,ff800000,00000000) AND *-(00000000,ff800000,7f800000) AND *-(80000000,ff800000,7fffffff) AND *-(7f800000,ff800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvmsubmsp *-(ff800000,c683287b,ff800000) AND *-(7fffffff,c683287b,c683287b) AND *-(ffffffff,c683287b,80000000) AND *-(7fc00000,c683287b,00000000) => 7f800000 7fffffff ffffffff 7fc00000 +#3: xvmsubmsp *-(ffc00000,c683287b,00000000) AND *-(80000000,c683287b,7f800000) AND *-(c683287b,c683287b,7fffffff) AND *-(49192c2d,c683287b,7fc00000) => ffc00000 ff800000 7fffffff 7fc00000 +#4: xvmsubmsp *-(7f800000,80000000,ff800000) AND *-(00000000,80000000,c683287b) AND *-(00000000,80000000,80000000) AND *-(80000000,80000000,00000000) => 7fc00000 4683287b 00000000 00000000 +#5: xvmsubmsp *-(7f800000,80000000,00000000) AND *-(ff800000,80000000,7f800000) AND *-(7fffffff,80000000,7fffffff) AND *-(ffffffff,80000000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvmsubmsp *-(7fc00000,00000000,ff800000) AND *-(ffc00000,00000000,c683287b) AND *-(80000000,00000000,80000000) AND *-(c683287b,00000000,00000000) => 7fc00000 ffc00000 00000000 80000000 +#7: xvmsubmsp *-(00000000,00000000,00000000) AND *-(7f800000,00000000,7f800000) AND *-(00000000,00000000,7fffffff) AND *-(00000000,00000000,7fc00000) => 00000000 7fc00000 7fffffff 7fc00000 +#8: xvmsubmsp *-(80000000,00000000,ff800000) AND *-(7f800000,00000000,c683287b) AND *-(ff800000,00000000,80000000) AND *-(7fffffff,00000000,00000000) => 7f800000 7fc00000 7fc00000 7fffffff +#9: xvmsubmsp *-(ffffffff,00000000,42780000) AND *-(7fc00000,00000000,7f800000) AND *-(ffc00000,00000000,7fffffff) AND *-(80000000,00000000,7fc00000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvmsubmsp *-(42780000,7f800000,ff800000) AND *-(00000000,7f800000,c683287b) AND *-(7f800000,7f800000,80000000) AND *-(00000000,7f800000,00000000) => 7f800000 7fc00000 7f800000 7fc00000 +#11: xvmsubmsp *-(00000000,7f800000,00000000) AND *-(80000000,7f800000,7f800000) AND *-(7f800000,7f800000,7fffffff) AND *-(ff800000,7f800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvmsubmsp *-(7fffffff,ffffffff,ff800000) AND *-(ffffffff,ffffffff,c683287b) AND *-(7fc00000,ffc00000,80000000) AND *-(ffc00000,ffc00000,00000000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvmsubmsp *-(3ec00000,ffffffff,00000000) AND *-(42780000,ffffffff,7f800000) AND *-(00000000,ffffffff,7fffffff) AND *-(7f800000,ffffffff,7fc00000) => ffffffff ffffffff ffffffff ffffffff +#14: xvmsubmsp *-(00000000,ffc00000,ff800000) AND *-(00000000,ffc00000,c683287b) AND *-(80000000,ffc00000,80000000) AND *-(7f800000,49192c2d,49c1288d) => ffc00000 ffc00000 ffc00000 7f800000 +#15: xvmsubmsp *-(ff800000,49192c2d,49c1288d) AND *-(7fffffff,7fffffff,7fc00000) AND *-(ffffffff,7fc00000,7fc00000) AND *-(7fc00000,7fc00000,ffc00000) => ff800000 7fffffff 7fc00000 7fc00000 + +#0: xvnmsubadp !*-(fff0000000000000,fff0000000000000,3fd8000000000000) AND !*-(c0d0650f5a07b353,fff0000000000000,404f000000000000) => 7ff8000000000000 7ff0000000000000 +#1: xvnmsubadp !*-(41382511a2000000,41232585a9900000,0018000000b77501) AND !*-(0000000000000000,fff0000000000000,7fe800000000051b) => 41382511a2000000 7ff0000000000000 +#2: xvnmsubadp !*-(0123214569900000,fff0000000000000,0123214569900000) AND !*-(7ff0000000000000,fff0000000000000,0000000000000000) => 7ff0000000000000 7ff8000000000000 +#3: xvnmsubadp !*-(7ff7ffffffffffff,fff0000000000000,8000000000000000) AND !*-(7ff8000000000000,fff0000000000000,7ff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvnmsubadp !*-(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND !*-(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) => fff0000000000000 7fffffffffffffff +#5: xvnmsubadp !*-(8000000000000000,c0d0650f5a07b353,fff7ffffffffffff) AND !*-(0000000000000000,c0d0650f5a07b353,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvnmsubadp !*-(0123214569900000,c0d0650f5a07b353,fff8000000000000) AND !*-(7ff0000000000000,c0d0650f5a07b353,8008340000078000) => fff8000000000000 7ff0000000000000 +#7: xvnmsubadp !*-(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) AND !*-(7ff8000000000000,c0d0650f5a07b353,41232585a9900000) => 7fffffffffffffff 7ff8000000000000 +#8: xvnmsubadp !*-(fff0000000000000,8000000000000000,404f000000000000) AND !*-(c0d0650f5a07b353,8000000000000000,0018000000b77501) => fff0000000000000 c0d0650f5a07b353 +#9: xvnmsubadp !*-(8000000000000000,8000000000000000,7fe800000000051b) AND !*-(0000000000000000,8000000000000000,0123214569900000) => 8000000000000000 0000000000000000 +#10: xvnmsubadp !*-(0123214569900000,8000000000000000,0000000000000000) AND !*-(7ff0000000000000,8000000000000000,8000000000000000) => 0123214569900000 7ff0000000000000 +#11: xvnmsubadp !*-(7ff7ffffffffffff,8000000000000000,7ff0000000000000) AND !*-(7ff8000000000000,8000000000000000,fff0000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvnmsubadp !*-(fff0000000000000,0000000000000000,7ff7ffffffffffff) AND !*-(c0d0650f5a07b353,0000000000000000,fff7ffffffffffff) => 7fffffffffffffff ffffffffffffffff +#13: xvnmsubadp !*-(8000000000000000,0000000000000000,7ff8000000000000) AND !*-(0000000000000000,0000000000000000,fff8000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvnmsubadp !*-(0123214569900000,0000000000000000,8008340000078000) AND !*-(7ff0000000000000,0000000000000000,c0d0650f5a07b353) => 0123214569900000 7ff0000000000000 +#15: xvnmsubadp !*-(7ff7ffffffffffff,0000000000000000,3fd8000000000000) AND !*-(7ff8000000000000,0000000000000000,404f000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvnmsubadp !*-(fff0000000000000,0123214569900000,0018000000b77501) AND !*-(c0d0650f5a07b353,0123214569900000,7fe800000000051b) => fff0000000000000 c11db83913f88150 +#17: xvnmsubadp !*-(8000000000000000,0123214569900000,0123214569900000) AND !*-(0000000000000000,0123214569900000,0000000000000000) => 8000000000000000 8000000000000000 +#18: xvnmsubadp !*-(404f000000000000,0123214569900000,8000000000000000) AND !*-(7ff0000000000000,0123214569900000,7ff0000000000000) => 404f000000000000 7ff8000000000000 +#19: xvnmsubadp !*-(7ff7ffffffffffff,0123214569900000,fff0000000000000) AND !*-(7ff8000000000000,0123214569900000,7ff7ffffffffffff) => 7fffffffffffffff 7ff8000000000000 +#20: xvnmsubadp !*-(fff0000000000000,7ff0000000000000,fff7ffffffffffff) AND !*-(c0d0650f5a07b353,7ff0000000000000,7ff8000000000000) => ffffffffffffffff 7ff8000000000000 +#21: xvnmsubadp !*-(8000000000000000,7ff0000000000000,fff8000000000000) AND !*-(0000000000000000,7ff0000000000000,8008340000078000) => fff8000000000000 7ff0000000000000 +#22: xvnmsubadp !*-(0123214569900000,7ff0000000000000,c0d0650f5a07b353) AND !*-(7ff0000000000000,7ff0000000000000,41232585a9900000) => 7ff0000000000000 7ff8000000000000 +#23: xvnmsubadp !*-(7ff7ffffffffffff,7ff0000000000000,404f000000000000) AND !*-(7ff8000000000000,7ff0000000000000,0018000000b77501) => 7fffffffffffffff 7ff8000000000000 +#24: xvnmsubadp !*-(fff0000000000000,fff7ffffffffffff,7fe800000000051b) AND !*-(c0d0650f5a07b353,fff7ffffffffffff,0123214569900000) => ffffffffffffffff ffffffffffffffff +#25: xvnmsubadp !*-(8000000000000000,fff8000000000000,0000000000000000) AND !*-(0000000000000000,fff8000000000000,8000000000000000) => fff8000000000000 fff8000000000000 +#26: xvnmsubadp !*-(0123214569900000,fff7ffffffffffff,7ff0000000000000) AND !*-(7ff0000000000000,fff7ffffffffffff,fff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvnmsubadp !*-(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND !*-(7ff8000000000000,fff7ffffffffffff,fff7ffffffffffff) => ffffffffffffffff ffffffffffffffff +#28: xvnmsubadp !*-(fff0000000000000,fff8000000000000,7ff8000000000000) AND !*-(c0d0650f5a07b353,fff8000000000000,fff8000000000000) => fff8000000000000 fff8000000000000 +#29: xvnmsubadp !*-(8000000000000000,fff8000000000000,8008340000078000) AND !*-(41382511a2000000,41232585a9900000,c0d0650f5a07b353) => fff8000000000000 42039f360cc502d2 +#30: xvnmsubadp !*-(41382511a2000000,41232585a9900000,3fd8000000000000) AND !*-(7ff8000000000000,7ff7ffffffffffff,404f000000000000) => 41348e0892350000 7fffffffffffffff +#31: xvnmsubadp !*-(7ff8000000000000,7ff8000000000000,0018000000b77501) AND !*-(fff8000000000000,7ff8000000000000,7fe800000000051b) => 7ff8000000000000 7ff8000000000000 + +#0: xvnmsubmdp !*-(3fd8000000000000,fff0000000000000,fff0000000000000) AND !*-(404f000000000000,fff0000000000000,c0d0650f5a07b353) => 7ff8000000000000 7ff0000000000000 +#1: xvnmsubmdp !*-(0018000000b77501,41232585a9900000,41382511a2000000) AND !*-(7fe800000000051b,fff0000000000000,0000000000000000) => 41382511a2000000 7ff0000000000000 +#2: xvnmsubmdp !*-(0123214569900000,fff0000000000000,0123214569900000) AND !*-(0000000000000000,fff0000000000000,7ff0000000000000) => 7ff0000000000000 7ff8000000000000 +#3: xvnmsubmdp !*-(8000000000000000,fff0000000000000,7ff7ffffffffffff) AND !*-(7ff0000000000000,fff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#4: xvnmsubmdp !*-(fff0000000000000,c0d0650f5a07b353,fff0000000000000) AND !*-(7ff7ffffffffffff,c0d0650f5a07b353,c0d0650f5a07b353) => fff0000000000000 7fffffffffffffff +#5: xvnmsubmdp !*-(fff7ffffffffffff,c0d0650f5a07b353,8000000000000000) AND !*-(7ff8000000000000,c0d0650f5a07b353,0000000000000000) => ffffffffffffffff 7ff8000000000000 +#6: xvnmsubmdp !*-(fff8000000000000,c0d0650f5a07b353,0123214569900000) AND !*-(8008340000078000,c0d0650f5a07b353,7ff0000000000000) => fff8000000000000 7ff0000000000000 +#7: xvnmsubmdp !*-(c0d0650f5a07b353,c0d0650f5a07b353,7ff7ffffffffffff) AND !*-(41232585a9900000,c0d0650f5a07b353,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#8: xvnmsubmdp !*-(404f000000000000,8000000000000000,fff0000000000000) AND !*-(0018000000b77501,8000000000000000,c0d0650f5a07b353) => fff0000000000000 c0d0650f5a07b353 +#9: xvnmsubmdp !*-(7fe800000000051b,8000000000000000,8000000000000000) AND !*-(0123214569900000,8000000000000000,0000000000000000) => 8000000000000000 0000000000000000 +#10: xvnmsubmdp !*-(0000000000000000,8000000000000000,0123214569900000) AND !*-(8000000000000000,8000000000000000,7ff0000000000000) => 0123214569900000 7ff0000000000000 +#11: xvnmsubmdp !*-(7ff0000000000000,8000000000000000,7ff7ffffffffffff) AND !*-(fff0000000000000,8000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#12: xvnmsubmdp !*-(7ff7ffffffffffff,0000000000000000,fff0000000000000) AND !*-(fff7ffffffffffff,0000000000000000,c0d0650f5a07b353) => 7fffffffffffffff ffffffffffffffff +#13: xvnmsubmdp !*-(7ff8000000000000,0000000000000000,8000000000000000) AND !*-(fff8000000000000,0000000000000000,0000000000000000) => 7ff8000000000000 fff8000000000000 +#14: xvnmsubmdp !*-(8008340000078000,0000000000000000,0123214569900000) AND !*-(c0d0650f5a07b353,0000000000000000,7ff0000000000000) => 0123214569900000 7ff0000000000000 +#15: xvnmsubmdp !*-(3fd8000000000000,0000000000000000,7ff7ffffffffffff) AND !*-(404f000000000000,0000000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#16: xvnmsubmdp !*-(0018000000b77501,0123214569900000,fff0000000000000) AND !*-(7fe800000000051b,0123214569900000,c0d0650f5a07b353) => fff0000000000000 c11db83913f88150 +#17: xvnmsubmdp !*-(0123214569900000,0123214569900000,8000000000000000) AND !*-(0000000000000000,0123214569900000,0000000000000000) => 8000000000000000 8000000000000000 +#18: xvnmsubmdp !*-(8000000000000000,0123214569900000,404f000000000000) AND !*-(7ff0000000000000,0123214569900000,7ff0000000000000) => 404f000000000000 7ff8000000000000 +#19: xvnmsubmdp !*-(fff0000000000000,0123214569900000,7ff7ffffffffffff) AND !*-(7ff7ffffffffffff,0123214569900000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#20: xvnmsubmdp !*-(fff7ffffffffffff,7ff0000000000000,fff0000000000000) AND !*-(7ff8000000000000,7ff0000000000000,c0d0650f5a07b353) => ffffffffffffffff 7ff8000000000000 +#21: xvnmsubmdp !*-(fff8000000000000,7ff0000000000000,8000000000000000) AND !*-(8008340000078000,7ff0000000000000,0000000000000000) => fff8000000000000 7ff0000000000000 +#22: xvnmsubmdp !*-(c0d0650f5a07b353,7ff0000000000000,0123214569900000) AND !*-(41232585a9900000,7ff0000000000000,7ff0000000000000) => 7ff0000000000000 7ff8000000000000 +#23: xvnmsubmdp !*-(404f000000000000,7ff0000000000000,7ff7ffffffffffff) AND !*-(0018000000b77501,7ff0000000000000,7ff8000000000000) => 7fffffffffffffff 7ff8000000000000 +#24: xvnmsubmdp !*-(7fe800000000051b,fff7ffffffffffff,fff0000000000000) AND !*-(0123214569900000,fff7ffffffffffff,c0d0650f5a07b353) => ffffffffffffffff ffffffffffffffff +#25: xvnmsubmdp !*-(0000000000000000,fff8000000000000,8000000000000000) AND !*-(8000000000000000,fff8000000000000,0000000000000000) => fff8000000000000 fff8000000000000 +#26: xvnmsubmdp !*-(7ff0000000000000,fff7ffffffffffff,0123214569900000) AND !*-(fff0000000000000,fff7ffffffffffff,7ff0000000000000) => ffffffffffffffff ffffffffffffffff +#27: xvnmsubmdp !*-(7ff7ffffffffffff,fff7ffffffffffff,7ff7ffffffffffff) AND !*-(fff7ffffffffffff,fff7ffffffffffff,7ff8000000000000) => ffffffffffffffff ffffffffffffffff +#28: xvnmsubmdp !*-(7ff8000000000000,fff8000000000000,fff0000000000000) AND !*-(fff8000000000000,fff8000000000000,c0d0650f5a07b353) => fff8000000000000 fff8000000000000 +#29: xvnmsubmdp !*-(8008340000078000,fff8000000000000,8000000000000000) AND !*-(c0d0650f5a07b353,41232585a9900000,41382511a2000000) => fff8000000000000 42039f360cc502d2 +#30: xvnmsubmdp !*-(3fd8000000000000,41232585a9900000,41382511a2000000) AND !*-(404f000000000000,7ff7ffffffffffff,7ff8000000000000) => 41348e0892350000 7fffffffffffffff +#31: xvnmsubmdp !*-(0018000000b77501,7ff8000000000000,7ff8000000000000) AND !*-(7fe800000000051b,7ff8000000000000,fff8000000000000) => 7ff8000000000000 7ff8000000000000 + +#0: xvnmsubasp !*-(ff800000,ff800000,3ec00000) AND !*-(c683287b,ff800000,42780000) AND !*-(49c1288d,49192c2d,00000000) AND !*-(00000000,ff800000,7f800000) => 7fc00000 7f800000 49c1288d 7f800000 +#1: xvnmsubasp !*-(00000000,ff800000,00000000) AND !*-(7f800000,ff800000,00000000) AND !*-(7fffffff,ff800000,80000000) AND !*-(7fc00000,ff800000,7f800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvnmsubasp !*-(ff800000,c683287b,ff800000) AND !*-(c683287b,c683287b,7fffffff) AND !*-(80000000,c683287b,ffffffff) AND !*-(00000000,c683287b,7fc00000) => ff800000 7fffffff ffffffff 7fc00000 +#3: xvnmsubasp !*-(00000000,c683287b,ffc00000) AND !*-(7f800000,c683287b,80000000) AND !*-(7fffffff,c683287b,c683287b) AND !*-(7fc00000,c683287b,49192c2d) => ffc00000 7f800000 7fffffff 7fc00000 +#4: xvnmsubasp !*-(ff800000,80000000,7f800000) AND !*-(c683287b,80000000,00000000) AND !*-(80000000,80000000,00000000) AND !*-(00000000,80000000,80000000) => 7fc00000 c683287b 80000000 80000000 +#5: xvnmsubasp !*-(00000000,80000000,7f800000) AND !*-(7f800000,80000000,ff800000) AND !*-(7fffffff,80000000,7fffffff) AND !*-(7fc00000,80000000,ffffffff) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvnmsubasp !*-(ff800000,00000000,7fc00000) AND !*-(c683287b,00000000,ffc00000) AND !*-(80000000,00000000,80000000) AND !*-(00000000,00000000,c683287b) => 7fc00000 ffc00000 80000000 00000000 +#7: xvnmsubasp !*-(00000000,00000000,00000000) AND !*-(7f800000,00000000,7f800000) AND !*-(7fffffff,00000000,00000000) AND !*-(7fc00000,00000000,00000000) => 80000000 7fc00000 7fffffff 7fc00000 +#8: xvnmsubasp !*-(ff800000,00000000,80000000) AND !*-(c683287b,00000000,7f800000) AND !*-(80000000,00000000,ff800000) AND !*-(00000000,00000000,7fffffff) => ff800000 7fc00000 7fc00000 7fffffff +#9: xvnmsubasp !*-(42780000,00000000,ffffffff) AND !*-(7f800000,00000000,7fc00000) AND !*-(7fffffff,00000000,ffc00000) AND !*-(7fc00000,00000000,80000000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvnmsubasp !*-(ff800000,7f800000,42780000) AND !*-(c683287b,7f800000,00000000) AND !*-(80000000,7f800000,7f800000) AND !*-(00000000,7f800000,00000000) => ff800000 7fc00000 ff800000 7fc00000 +#11: xvnmsubasp !*-(00000000,7f800000,00000000) AND !*-(7f800000,7f800000,80000000) AND !*-(7fffffff,7f800000,7f800000) AND !*-(7fc00000,7f800000,ff800000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvnmsubasp !*-(ff800000,ffffffff,7fffffff) AND !*-(c683287b,ffffffff,ffffffff) AND !*-(80000000,ffc00000,7fc00000) AND !*-(00000000,ffc00000,ffc00000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvnmsubasp !*-(00000000,ffffffff,3ec00000) AND !*-(7f800000,ffffffff,42780000) AND !*-(7fffffff,ffffffff,00000000) AND !*-(7fc00000,ffffffff,7f800000) => ffffffff ffffffff ffffffff ffffffff +#14: xvnmsubasp !*-(ff800000,ffc00000,00000000) AND !*-(c683287b,ffc00000,00000000) AND !*-(80000000,ffc00000,80000000) AND !*-(49c1288d,49192c2d,7f800000) => ffc00000 ffc00000 ffc00000 ff800000 +#15: xvnmsubasp !*-(49c1288d,49192c2d,ff800000) AND !*-(7fc00000,7fffffff,7fffffff) AND !*-(7fc00000,7fc00000,ffffffff) AND !*-(ffc00000,7fc00000,7fc00000) => 7f800000 7fffffff 7fc00000 7fc00000 + +#0: xvnmsubmsp !*-(3ec00000,ff800000,ff800000) AND !*-(42780000,ff800000,c683287b) AND !*-(00000000,49192c2d,49c1288d) AND !*-(7f800000,ff800000,00000000) => 7fc00000 7f800000 49c1288d 7f800000 +#1: xvnmsubmsp !*-(00000000,ff800000,00000000) AND !*-(00000000,ff800000,7f800000) AND !*-(80000000,ff800000,7fffffff) AND !*-(7f800000,ff800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#2: xvnmsubmsp !*-(ff800000,c683287b,ff800000) AND !*-(7fffffff,c683287b,c683287b) AND !*-(ffffffff,c683287b,80000000) AND !*-(7fc00000,c683287b,00000000) => ff800000 7fffffff ffffffff 7fc00000 +#3: xvnmsubmsp !*-(ffc00000,c683287b,00000000) AND !*-(80000000,c683287b,7f800000) AND !*-(c683287b,c683287b,7fffffff) AND !*-(49192c2d,c683287b,7fc00000) => ffc00000 7f800000 7fffffff 7fc00000 +#4: xvnmsubmsp !*-(7f800000,80000000,ff800000) AND !*-(00000000,80000000,c683287b) AND !*-(00000000,80000000,80000000) AND !*-(80000000,80000000,00000000) => 7fc00000 c683287b 80000000 80000000 +#5: xvnmsubmsp !*-(7f800000,80000000,00000000) AND !*-(ff800000,80000000,7f800000) AND !*-(7fffffff,80000000,7fffffff) AND !*-(ffffffff,80000000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#6: xvnmsubmsp !*-(7fc00000,00000000,ff800000) AND !*-(ffc00000,00000000,c683287b) AND !*-(80000000,00000000,80000000) AND !*-(c683287b,00000000,00000000) => 7fc00000 ffc00000 80000000 00000000 +#7: xvnmsubmsp !*-(00000000,00000000,00000000) AND !*-(7f800000,00000000,7f800000) AND !*-(00000000,00000000,7fffffff) AND !*-(00000000,00000000,7fc00000) => 80000000 7fc00000 7fffffff 7fc00000 +#8: xvnmsubmsp !*-(80000000,00000000,ff800000) AND !*-(7f800000,00000000,c683287b) AND !*-(ff800000,00000000,80000000) AND !*-(7fffffff,00000000,00000000) => ff800000 7fc00000 7fc00000 7fffffff +#9: xvnmsubmsp !*-(ffffffff,00000000,42780000) AND !*-(7fc00000,00000000,7f800000) AND !*-(ffc00000,00000000,7fffffff) AND !*-(80000000,00000000,7fc00000) => ffffffff 7fc00000 7fffffff 7fc00000 +#10: xvnmsubmsp !*-(42780000,7f800000,ff800000) AND !*-(00000000,7f800000,c683287b) AND !*-(7f800000,7f800000,80000000) AND !*-(00000000,7f800000,00000000) => ff800000 7fc00000 ff800000 7fc00000 +#11: xvnmsubmsp !*-(00000000,7f800000,00000000) AND !*-(80000000,7f800000,7f800000) AND !*-(7f800000,7f800000,7fffffff) AND !*-(ff800000,7f800000,7fc00000) => 7fc00000 7fc00000 7fffffff 7fc00000 +#12: xvnmsubmsp !*-(7fffffff,ffffffff,ff800000) AND !*-(ffffffff,ffffffff,c683287b) AND !*-(7fc00000,ffc00000,80000000) AND !*-(ffc00000,ffc00000,00000000) => ffffffff ffffffff ffc00000 ffc00000 +#13: xvnmsubmsp !*-(3ec00000,ffffffff,00000000) AND !*-(42780000,ffffffff,7f800000) AND !*-(00000000,ffffffff,7fffffff) AND !*-(7f800000,ffffffff,7fc00000) => ffffffff ffffffff ffffffff ffffffff +#14: xvnmsubmsp !*-(00000000,ffc00000,ff800000) AND !*-(00000000,ffc00000,c683287b) AND !*-(80000000,ffc00000,80000000) AND !*-(7f800000,49192c2d,49c1288d) => ffc00000 ffc00000 ffc00000 ff800000 +#15: xvnmsubmsp !*-(ff800000,49192c2d,49c1288d) AND !*-(7fffffff,7fffffff,7fc00000) AND !*-(ffffffff,7fc00000,7fc00000) AND !*-(7fc00000,7fc00000,ffc00000) => 7f800000 7fffffff 7fc00000 7fc00000 + + +Test scalar floating point arithmetic instructions +#0: xssqrtdp 3fd8000000000000 => 3fe3988e1409212e +#1: xssqrtdp 404f000000000000 => 401f7efbeb8d4f12 +#2: xssqrtdp 0018000000b77501 => 2003988e14540690 +#3: xssqrtdp 7fe800000000051b => 5febb67ae8584f9d +#4: xssqrtdp 0123214569900000 => 2088bde98d60ebe6 +#5: xssqrtdp 0000000000000000 => 0000000000000000 +#6: xssqrtdp 8000000000000000 => 8000000000000000 +#7: xssqrtdp 7ff0000000000000 => 7ff0000000000000 +#8: xssqrtdp fff0000000000000 => 7ff8000000000000 +#9: xssqrtdp 7ff7ffffffffffff => 7fffffffffffffff +#10: xssqrtdp fff7ffffffffffff => ffffffffffffffff +#11: xssqrtdp 7ff8000000000000 => 7ff8000000000000 +#12: xssqrtdp fff8000000000000 => fff8000000000000 +#13: xssqrtdp 8008340000078000 => 7ff8000000000000 +#14: xssqrtdp c0d0650f5a07b353 => 7ff8000000000000 +#15: xssqrtdp 41232585a9900000 => 4088c0a9258a4a8b +#16: xssqrtdp 41382511a2000000 => 4093a7aa60f34e85 + +#0: xsrdpim 3fd8000000000000 => 0000000000000000 +#1: xsrdpim 404f000000000000 => 404f000000000000 +#2: xsrdpim 0018000000b77501 => 0000000000000000 +#3: xsrdpim 7fe800000000051b => 7fe800000000051b +#4: xsrdpim 0123214569900000 => 0000000000000000 +#5: xsrdpim 0000000000000000 => 0000000000000000 +#6: xsrdpim 8000000000000000 => 8000000000000000 +#7: xsrdpim 7ff0000000000000 => 7ff0000000000000 +#8: xsrdpim fff0000000000000 => fff0000000000000 +#9: xsrdpim 7ff7ffffffffffff => 7fffffffffffffff +#10: xsrdpim fff7ffffffffffff => ffffffffffffffff +#11: xsrdpim 7ff8000000000000 => 7ff8000000000000 +#12: xsrdpim fff8000000000000 => fff8000000000000 +#13: xsrdpim 8008340000078000 => bff0000000000000 +#14: xsrdpim c0d0650f5a07b353 => c0d0654000000000 +#15: xsrdpim 41232585a9900000 => 4123258400000000 +#16: xsrdpim 41382511a2000000 => 4138251100000000 + +#0: xsrdpip 3fd8000000000000 => 3ff0000000000000 +#1: xsrdpip 404f000000000000 => 404f000000000000 +#2: xsrdpip 0018000000b77501 => 3ff0000000000000 +#3: xsrdpip 7fe800000000051b => 7fe800000000051b +#4: xsrdpip 0123214569900000 => 3ff0000000000000 +#5: xsrdpip 0000000000000000 => 0000000000000000 +#6: xsrdpip 8000000000000000 => 8000000000000000 +#7: xsrdpip 7ff0000000000000 => 7ff0000000000000 +#8: xsrdpip fff0000000000000 => fff0000000000000 +#9: xsrdpip 7ff7ffffffffffff => 7fffffffffffffff +#10: xsrdpip fff7ffffffffffff => ffffffffffffffff +#11: xsrdpip 7ff8000000000000 => 7ff8000000000000 +#12: xsrdpip fff8000000000000 => fff8000000000000 +#13: xsrdpip 8008340000078000 => 8000000000000000 +#14: xsrdpip c0d0650f5a07b353 => c0d0650000000000 +#15: xsrdpip 41232585a9900000 => 4123258600000000 +#16: xsrdpip 41382511a2000000 => 4138251200000000 + +#0: xstdivdp fff0000000000000,fff0000000000000 => cr e +#1: xstdivdp fff0000000000000,c0d0650f5a07b353 => cr e +#2: xstdivdp 41232585a9900000,41382511a2000000 => cr 8 +#3: xstdivdp fff0000000000000,0000000000000000 => cr e +#4: xstdivdp fff0000000000000,0123214569900000 => cr e +#5: xstdivdp fff0000000000000,7ff0000000000000 => cr e +#6: xstdivdp fff0000000000000,7ff7ffffffffffff => cr e +#7: xstdivdp fff0000000000000,7ff8000000000000 => cr e +#8: xstdivdp c0d0650f5a07b353,fff0000000000000 => cr e +#9: xstdivdp c0d0650f5a07b353,c0d0650f5a07b353 => cr 8 +#10: xstdivdp c0d0650f5a07b353,8000000000000000 => cr e +#11: xstdivdp c0d0650f5a07b353,0000000000000000 => cr e +#12: xstdivdp c0d0650f5a07b353,0123214569900000 => cr 8 +#13: xstdivdp c0d0650f5a07b353,7ff0000000000000 => cr e +#14: xstdivdp c0d0650f5a07b353,7ff7ffffffffffff => cr a +#15: xstdivdp c0d0650f5a07b353,7ff8000000000000 => cr a +#16: xstdivdp 8000000000000000,fff0000000000000 => cr e +#17: xstdivdp 8000000000000000,c0d0650f5a07b353 => cr 8 +#18: xstdivdp 8000000000000000,8000000000000000 => cr e +#19: xstdivdp 8000000000000000,0000000000000000 => cr e +#20: xstdivdp 8000000000000000,0123214569900000 => cr 8 +#21: xstdivdp 8000000000000000,7ff0000000000000 => cr e +#22: xstdivdp 8000000000000000,7ff7ffffffffffff => cr a +#23: xstdivdp 8000000000000000,7ff8000000000000 => cr a +#24: xstdivdp 0000000000000000,fff0000000000000 => cr e +#25: xstdivdp 0000000000000000,c0d0650f5a07b353 => cr 8 +#26: xstdivdp 0000000000000000,8000000000000000 => cr e +#27: xstdivdp 0000000000000000,0000000000000000 => cr e +#28: xstdivdp 0000000000000000,0123214569900000 => cr 8 +#29: xstdivdp 0000000000000000,7ff0000000000000 => cr e +#30: xstdivdp 0000000000000000,7ff7ffffffffffff => cr a +#31: xstdivdp 0000000000000000,7ff8000000000000 => cr a +#32: xstdivdp 0123214569900000,fff0000000000000 => cr e +#33: xstdivdp 0123214569900000,c0d0650f5a07b353 => cr a +#34: xstdivdp 0123214569900000,8000000000000000 => cr e +#35: xstdivdp 0123214569900000,0000000000000000 => cr e +#36: xstdivdp 0123214569900000,404f000000000000 => cr a +#37: xstdivdp 0123214569900000,7ff0000000000000 => cr e +#38: xstdivdp 0123214569900000,7ff7ffffffffffff => cr a +#39: xstdivdp 0123214569900000,7ff8000000000000 => cr a +#40: xstdivdp 7ff0000000000000,fff0000000000000 => cr e +#41: xstdivdp 7ff0000000000000,c0d0650f5a07b353 => cr e +#42: xstdivdp 7ff0000000000000,8000000000000000 => cr e +#43: xstdivdp 7ff0000000000000,0000000000000000 => cr e +#44: xstdivdp 7ff0000000000000,0123214569900000 => cr e +#45: xstdivdp 7ff0000000000000,7ff0000000000000 => cr e +#46: xstdivdp 7ff0000000000000,7ff7ffffffffffff => cr e +#47: xstdivdp 7ff0000000000000,7ff8000000000000 => cr e +#48: xstdivdp fff7ffffffffffff,fff0000000000000 => cr e +#49: xstdivdp fff7ffffffffffff,c0d0650f5a07b353 => cr a +#50: xstdivdp fff8000000000000,8000000000000000 => cr e +#51: xstdivdp fff8000000000000,0000000000000000 => cr e +#52: xstdivdp fff7ffffffffffff,0123214569900000 => cr a +#53: xstdivdp fff7ffffffffffff,7ff0000000000000 => cr e +#54: xstdivdp fff7ffffffffffff,7ff7ffffffffffff => cr a +#55: xstdivdp fff7ffffffffffff,7ff8000000000000 => cr a +#56: xstdivdp fff8000000000000,fff0000000000000 => cr e +#57: xstdivdp fff8000000000000,c0d0650f5a07b353 => cr a +#58: xstdivdp fff8000000000000,8000000000000000 => cr e +#59: xstdivdp 41232585a9900000,41382511a2000000 => cr 8 +#60: xstdivdp 41232585a9900000,41382511a2000000 => cr 8 +#61: xstdivdp 7ff7ffffffffffff,7ff8000000000000 => cr a +#62: xstdivdp 7ff8000000000000,7ff8000000000000 => cr a +#63: xstdivdp 7ff8000000000000,fff8000000000000 => cr a + +#0: xsmaxdp fff0000000000000,fff0000000000000 => fff0000000000000 +#1: xsmaxdp fff0000000000000,c0d0650f5a07b353 => c0d0650f5a07b353 +#2: xsmaxdp 41232585a9900000,41382511a2000000 => 41382511a2000000 +#3: xsmaxdp fff0000000000000,0000000000000000 => 0000000000000000 +#4: xsmaxdp fff0000000000000,0123214569900000 => 0123214569900000 +#5: xsmaxdp fff0000000000000,7ff0000000000000 => 7ff0000000000000 +#6: xsmaxdp fff0000000000000,7ff7ffffffffffff => 7fffffffffffffff +#7: xsmaxdp fff0000000000000,7ff8000000000000 => fff0000000000000 +#8: xsmaxdp c0d0650f5a07b353,fff0000000000000 => c0d0650f5a07b353 +#9: xsmaxdp c0d0650f5a07b353,c0d0650f5a07b353 => c0d0650f5a07b353 +#10: xsmaxdp c0d0650f5a07b353,8000000000000000 => 8000000000000000 +#11: xsmaxdp c0d0650f5a07b353,0000000000000000 => 0000000000000000 +#12: xsmaxdp c0d0650f5a07b353,0123214569900000 => 0123214569900000 +#13: xsmaxdp c0d0650f5a07b353,7ff0000000000000 => 7ff0000000000000 +#14: xsmaxdp c0d0650f5a07b353,7ff7ffffffffffff => 7fffffffffffffff +#15: xsmaxdp c0d0650f5a07b353,7ff8000000000000 => c0d0650f5a07b353 +#16: xsmaxdp 8000000000000000,fff0000000000000 => 8000000000000000 +#17: xsmaxdp 8000000000000000,c0d0650f5a07b353 => 8000000000000000 +#18: xsmaxdp 8000000000000000,8000000000000000 => 8000000000000000 +#19: xsmaxdp 8000000000000000,0000000000000000 => 0000000000000000 +#20: xsmaxdp 8000000000000000,0123214569900000 => 0123214569900000 +#21: xsmaxdp 8000000000000000,7ff0000000000000 => 7ff0000000000000 +#22: xsmaxdp 8000000000000000,7ff7ffffffffffff => 7fffffffffffffff +#23: xsmaxdp 8000000000000000,7ff8000000000000 => 8000000000000000 +#24: xsmaxdp 0000000000000000,fff0000000000000 => 0000000000000000 +#25: xsmaxdp 0000000000000000,c0d0650f5a07b353 => 0000000000000000 +#26: xsmaxdp 0000000000000000,8000000000000000 => 0000000000000000 +#27: xsmaxdp 0000000000000000,0000000000000000 => 0000000000000000 +#28: xsmaxdp 0000000000000000,0123214569900000 => 0123214569900000 +#29: xsmaxdp 0000000000000000,7ff0000000000000 => 7ff0000000000000 +#30: xsmaxdp 0000000000000000,7ff7ffffffffffff => 7fffffffffffffff +#31: xsmaxdp 0000000000000000,7ff8000000000000 => 0000000000000000 +#32: xsmaxdp 0123214569900000,fff0000000000000 => 0123214569900000 +#33: xsmaxdp 0123214569900000,c0d0650f5a07b353 => 0123214569900000 +#34: xsmaxdp 0123214569900000,8000000000000000 => 0123214569900000 +#35: xsmaxdp 0123214569900000,0000000000000000 => 0123214569900000 +#36: xsmaxdp 0123214569900000,404f000000000000 => 404f000000000000 +#37: xsmaxdp 0123214569900000,7ff0000000000000 => 7ff0000000000000 +#38: xsmaxdp 0123214569900000,7ff7ffffffffffff => 7fffffffffffffff +#39: xsmaxdp 0123214569900000,7ff8000000000000 => 0123214569900000 +#40: xsmaxdp 7ff0000000000000,fff0000000000000 => 7ff0000000000000 +#41: xsmaxdp 7ff0000000000000,c0d0650f5a07b353 => 7ff0000000000000 +#42: xsmaxdp 7ff0000000000000,8000000000000000 => 7ff0000000000000 +#43: xsmaxdp 7ff0000000000000,0000000000000000 => 7ff0000000000000 +#44: xsmaxdp 7ff0000000000000,0123214569900000 => 7ff0000000000000 +#45: xsmaxdp 7ff0000000000000,7ff0000000000000 => 7ff0000000000000 +#46: xsmaxdp 7ff0000000000000,7ff7ffffffffffff => 7fffffffffffffff +#47: xsmaxdp 7ff0000000000000,7ff8000000000000 => 7ff0000000000000 +#48: xsmaxdp fff7ffffffffffff,fff0000000000000 => ffffffffffffffff +#49: xsmaxdp fff7ffffffffffff,c0d0650f5a07b353 => ffffffffffffffff +#50: xsmaxdp fff8000000000000,8000000000000000 => 8000000000000000 +#51: xsmaxdp fff8000000000000,0000000000000000 => 0000000000000000 +#52: xsmaxdp fff7ffffffffffff,0123214569900000 => ffffffffffffffff +#53: xsmaxdp fff7ffffffffffff,7ff0000000000000 => ffffffffffffffff +#54: xsmaxdp fff7ffffffffffff,7ff7ffffffffffff => ffffffffffffffff +#55: xsmaxdp fff7ffffffffffff,7ff8000000000000 => ffffffffffffffff +#56: xsmaxdp fff8000000000000,fff0000000000000 => fff0000000000000 +#57: xsmaxdp fff8000000000000,c0d0650f5a07b353 => c0d0650f5a07b353 +#58: xsmaxdp fff8000000000000,8000000000000000 => 8000000000000000 +#59: xsmaxdp 41232585a9900000,41382511a2000000 => 41382511a2000000 +#60: xsmaxdp 41232585a9900000,41382511a2000000 => 41382511a2000000 +#61: xsmaxdp 7ff7ffffffffffff,7ff8000000000000 => 7fffffffffffffff +#62: xsmaxdp 7ff8000000000000,7ff8000000000000 => 7ff8000000000000 +#63: xsmaxdp 7ff8000000000000,fff8000000000000 => 7ff8000000000000 + +#0: xsmindp fff0000000000000,fff0000000000000 => fff0000000000000 +#1: xsmindp fff0000000000000,c0d0650f5a07b353 => fff0000000000000 +#2: xsmindp 41232585a9900000,41382511a2000000 => 41232585a9900000 +#3: xsmindp fff0000000000000,0000000000000000 => fff0000000000000 +#4: xsmindp fff0000000000000,0123214569900000 => fff0000000000000 +#5: xsmindp fff0000000000000,7ff0000000000000 => fff0000000000000 +#6: xsmindp fff0000000000000,7ff7ffffffffffff => 7fffffffffffffff +#7: xsmindp fff0000000000000,7ff8000000000000 => fff0000000000000 +#8: xsmindp c0d0650f5a07b353,fff0000000000000 => fff0000000000000 +#9: xsmindp c0d0650f5a07b353,c0d0650f5a07b353 => c0d0650f5a07b353 +#10: xsmindp c0d0650f5a07b353,8000000000000000 => c0d0650f5a07b353 +#11: xsmindp c0d0650f5a07b353,0000000000000000 => c0d0650f5a07b353 +#12: xsmindp c0d0650f5a07b353,0123214569900000 => c0d0650f5a07b353 +#13: xsmindp c0d0650f5a07b353,7ff0000000000000 => c0d0650f5a07b353 +#14: xsmindp c0d0650f5a07b353,7ff7ffffffffffff => 7fffffffffffffff +#15: xsmindp c0d0650f5a07b353,7ff8000000000000 => c0d0650f5a07b353 +#16: xsmindp 8000000000000000,fff0000000000000 => fff0000000000000 +#17: xsmindp 8000000000000000,c0d0650f5a07b353 => c0d0650f5a07b353 +#18: xsmindp 8000000000000000,8000000000000000 => 8000000000000000 +#19: xsmindp 8000000000000000,0000000000000000 => 8000000000000000 +#20: xsmindp 8000000000000000,0123214569900000 => 8000000000000000 +#21: xsmindp 8000000000000000,7ff0000000000000 => 8000000000000000 +#22: xsmindp 8000000000000000,7ff7ffffffffffff => 7fffffffffffffff +#23: xsmindp 8000000000000000,7ff8000000000000 => 8000000000000000 +#24: xsmindp 0000000000000000,fff0000000000000 => fff0000000000000 +#25: xsmindp 0000000000000000,c0d0650f5a07b353 => c0d0650f5a07b353 +#26: xsmindp 0000000000000000,8000000000000000 => 8000000000000000 +#27: xsmindp 0000000000000000,0000000000000000 => 0000000000000000 +#28: xsmindp 0000000000000000,0123214569900000 => 0000000000000000 +#29: xsmindp 0000000000000000,7ff0000000000000 => 0000000000000000 +#30: xsmindp 0000000000000000,7ff7ffffffffffff => 7fffffffffffffff +#31: xsmindp 0000000000000000,7ff8000000000000 => 0000000000000000 +#32: xsmindp 0123214569900000,fff0000000000000 => fff0000000000000 +#33: xsmindp 0123214569900000,c0d0650f5a07b353 => c0d0650f5a07b353 +#34: xsmindp 0123214569900000,8000000000000000 => 8000000000000000 +#35: xsmindp 0123214569900000,0000000000000000 => 0000000000000000 +#36: xsmindp 0123214569900000,404f000000000000 => 0123214569900000 +#37: xsmindp 0123214569900000,7ff0000000000000 => 0123214569900000 +#38: xsmindp 0123214569900000,7ff7ffffffffffff => 7fffffffffffffff +#39: xsmindp 0123214569900000,7ff8000000000000 => 0123214569900000 +#40: xsmindp 7ff0000000000000,fff0000000000000 => fff0000000000000 +#41: xsmindp 7ff0000000000000,c0d0650f5a07b353 => c0d0650f5a07b353 +#42: xsmindp 7ff0000000000000,8000000000000000 => 8000000000000000 +#43: xsmindp 7ff0000000000000,0000000000000000 => 0000000000000000 +#44: xsmindp 7ff0000000000000,0123214569900000 => 0123214569900000 +#45: xsmindp 7ff0000000000000,7ff0000000000000 => 7ff0000000000000 +#46: xsmindp 7ff0000000000000,7ff7ffffffffffff => 7fffffffffffffff +#47: xsmindp 7ff0000000000000,7ff8000000000000 => 7ff0000000000000 +#48: xsmindp fff7ffffffffffff,fff0000000000000 => ffffffffffffffff +#49: xsmindp fff7ffffffffffff,c0d0650f5a07b353 => ffffffffffffffff +#50: xsmindp fff8000000000000,8000000000000000 => 8000000000000000 +#51: xsmindp fff8000000000000,0000000000000000 => 0000000000000000 +#52: xsmindp fff7ffffffffffff,0123214569900000 => ffffffffffffffff +#53: xsmindp fff7ffffffffffff,7ff0000000000000 => ffffffffffffffff +#54: xsmindp fff7ffffffffffff,7ff7ffffffffffff => ffffffffffffffff +#55: xsmindp fff7ffffffffffff,7ff8000000000000 => ffffffffffffffff +#56: xsmindp fff8000000000000,fff0000000000000 => fff0000000000000 +#57: xsmindp fff8000000000000,c0d0650f5a07b353 => c0d0650f5a07b353 +#58: xsmindp fff8000000000000,8000000000000000 => 8000000000000000 +#59: xsmindp 41232585a9900000,41382511a2000000 => 41232585a9900000 +#60: xsmindp 41232585a9900000,41382511a2000000 => 41232585a9900000 +#61: xsmindp 7ff7ffffffffffff,7ff8000000000000 => 7fffffffffffffff +#62: xsmindp 7ff8000000000000,7ff8000000000000 => 7ff8000000000000 +#63: xsmindp 7ff8000000000000,fff8000000000000 => 7ff8000000000000 + +#0: xscvdpsxws 3fd8000000000000 => 0000000000000000 +#1: xscvdpsxws 404f000000000000 => 000000000000003e +#2: xscvdpsxws 0018000000b77501 => 0000000000000000 +#3: xscvdpsxws 7fe800000000051b => 000000007fffffff +#4: xscvdpsxws 0123214569900000 => 0000000000000000 +#5: xscvdpsxws 0000000000000000 => 0000000000000000 +#6: xscvdpsxws 8000000000000000 => 0000000000000000 +#7: xscvdpsxws 7ff0000000000000 => 000000007fffffff +#8: xscvdpsxws fff0000000000000 => 0000000080000000 +#9: xscvdpsxws 7ff7ffffffffffff => 0000000080000000 +#10: xscvdpsxws fff7ffffffffffff => 0000000080000000 +#11: xscvdpsxws 7ff8000000000000 => 0000000080000000 +#12: xscvdpsxws fff8000000000000 => 0000000080000000 +#13: xscvdpsxws 8008340000078000 => 0000000000000000 +#14: xscvdpsxws c0d0650f5a07b353 => 00000000ffffbe6c +#15: xscvdpsxws 41232585a9900000 => 00000000000992c2 +#16: xscvdpsxws 41382511a2000000 => 0000000000182511 + +#0: xscvdpuxds 3fd8000000000000 => 0000000000000000 +#1: xscvdpuxds 404f000000000000 => 000000000000003e +#2: xscvdpuxds 0018000000b77501 => 0000000000000000 +#3: xscvdpuxds 7fe800000000051b => ffffffffffffffff +#4: xscvdpuxds 0123214569900000 => 0000000000000000 +#5: xscvdpuxds 0000000000000000 => 0000000000000000 +#6: xscvdpuxds 8000000000000000 => 0000000000000000 +#7: xscvdpuxds 7ff0000000000000 => ffffffffffffffff +#8: xscvdpuxds fff0000000000000 => 0000000000000000 +#9: xscvdpuxds 7ff7ffffffffffff => 0000000000000000 +#10: xscvdpuxds fff7ffffffffffff => 0000000000000000 +#11: xscvdpuxds 7ff8000000000000 => 0000000000000000 +#12: xscvdpuxds fff8000000000000 => 0000000000000000 +#13: xscvdpuxds 8008340000078000 => 0000000000000000 +#14: xscvdpuxds c0d0650f5a07b353 => 0000000000000000 +#15: xscvdpuxds 41232585a9900000 => 00000000000992c2 +#16: xscvdpuxds 41382511a2000000 => 0000000000182511 + diff --git a/none/tests/ppc64/test_isa_2_06_part2.vgtest b/none/tests/ppc64/test_isa_2_06_part2.vgtest new file mode 100644 index 0000000000..7ae01beb87 --- /dev/null +++ b/none/tests/ppc64/test_isa_2_06_part2.vgtest @@ -0,0 +1,2 @@ +prereq: ../../../tests/check_isa-2_06_cap +prog: test_isa_2_06_part2