Home | History | Annotate | Download | only in tests
      1 ; Exhaustive test of AVX condition code aliases
      2 ; Also includes based-upon SSE instructions for comparison
      3 ;
      4 ;  Copyright (C) 2008  Peter Johnson
      5 ;
      6 ; Redistribution and use in source and binary forms, with or without
      7 ; modification, are permitted provided that the following conditions
      8 ; are met:
      9 ; 1. Redistributions of source code must retain the above copyright
     10 ;    notice, this list of conditions and the following disclaimer.
     11 ; 2. Redistributions in binary form must reproduce the above copyright
     12 ;    notice, this list of conditions and the following disclaimer in the
     13 ;    documentation and/or other materials provided with the distribution.
     14 ;
     15 ; THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND OTHER CONTRIBUTORS ``AS IS''
     16 ; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
     17 ; IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
     18 ; ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR OTHER CONTRIBUTORS BE
     19 ; LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
     20 ; CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
     21 ; SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
     22 ; INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
     23 ; CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
     24 ; ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     25 ; POSSIBILITY OF SUCH DAMAGE.
     26 ;
     27 
     28 [bits 64]
     29 
     30 cmpeqpd xmm1, xmm2			; 00h
     31 cmpltpd xmm1, xmm2			; 01h
     32 cmplepd xmm1, xmm2			; 02h
     33 cmpunordpd xmm1, xmm2			; 03h
     34 cmpneqpd xmm1, xmm2			; 04h
     35 cmpnltpd xmm1, xmm2			; 05h
     36 cmpnlepd xmm1, xmm2			; 06h
     37 cmpordpd xmm1, xmm2			; 07h
     38 
     39 vcmpeqpd xmm1, xmm2			; 00h
     40 vcmpltpd xmm1, xmm2			; 01h
     41 vcmplepd xmm1, xmm2			; 02h
     42 vcmpunordpd xmm1, xmm2			; 03h
     43 vcmpneqpd xmm1, xmm2			; 04h
     44 vcmpnltpd xmm1, xmm2			; 05h
     45 vcmpnlepd xmm1, xmm2			; 06h
     46 vcmpordpd xmm1, xmm2			; 07h
     47 
     48 vcmpeqpd xmm1, xmm2, xmm3		; 00h
     49 vcmpltpd xmm1, xmm2, xmm3		; 01h
     50 vcmplepd xmm1, xmm2, xmm3		; 02h
     51 vcmpunordpd xmm1, xmm2, xmm3		; 03h
     52 vcmpneqpd xmm1, xmm2, xmm3		; 04h
     53 vcmpnltpd xmm1, xmm2, xmm3		; 05h
     54 vcmpnlepd xmm1, xmm2, xmm3		; 06h
     55 vcmpordpd xmm1, xmm2, xmm3		; 07h
     56 
     57 vcmpeq_uqpd xmm1, xmm2, xmm3		; 08h
     58 vcmpngepd xmm1, xmm2, xmm3		; 09h
     59 vcmpngtpd xmm1, xmm2, xmm3		; 0Ah
     60 vcmpfalsepd xmm1, xmm2, xmm3		; 0Bh
     61 vcmpneq_oqpd xmm1, xmm2, xmm3		; 0Ch
     62 vcmpgepd xmm1, xmm2, xmm3		; 0Dh
     63 vcmpgtpd xmm1, xmm2, xmm3		; 0Eh
     64 vcmptruepd xmm1, xmm2, xmm3		; 0Fh
     65 
     66 vcmpeq_ospd xmm1, xmm2, xmm3		; 10h
     67 vcmplt_oqpd xmm1, xmm2, xmm3		; 11h
     68 vcmple_oqpd xmm1, xmm2, xmm3		; 12h
     69 vcmpunord_spd xmm1, xmm2, xmm3		; 13h
     70 vcmpneq_uspd xmm1, xmm2, xmm3		; 14h
     71 vcmpnlt_uqpd xmm1, xmm2, xmm3		; 15h
     72 vcmpnle_uqpd xmm1, xmm2, xmm3		; 16h
     73 vcmpord_spd xmm1, xmm2, xmm3		; 17h
     74 
     75 vcmpeq_uspd xmm1, xmm2, xmm3		; 18h
     76 vcmpnge_uqpd xmm1, xmm2, xmm3		; 19h
     77 vcmpngt_uqpd xmm1, xmm2, xmm3		; 1Ah
     78 vcmpfalse_ospd xmm1, xmm2, xmm3		; 1Bh
     79 vcmpneq_ospd xmm1, xmm2, xmm3		; 1Ch
     80 vcmpge_oqpd xmm1, xmm2, xmm3		; 1Dh
     81 vcmpgt_oqpd xmm1, xmm2, xmm3		; 1Eh
     82 vcmptrue_uspd xmm1, xmm2, xmm3		; 1Fh
     83 
     84 cmpeqpd xmm1, [rax]			; 00h
     85 cmpltpd xmm1, [rax]			; 01h
     86 cmplepd xmm1, [rax]			; 02h
     87 cmpunordpd xmm1, [rax]			; 03h
     88 cmpneqpd xmm1, [rax]			; 04h
     89 cmpnltpd xmm1, [rax]			; 05h
     90 cmpnlepd xmm1, [rax]			; 06h
     91 cmpordpd xmm1, [rax]			; 07h
     92 
     93 vcmpeqpd xmm1, [rax]			; 00h
     94 vcmpltpd xmm1, [rax]			; 01h
     95 vcmplepd xmm1, [rax]			; 02h
     96 vcmpunordpd xmm1, [rax]			; 03h
     97 vcmpneqpd xmm1, [rax]			; 04h
     98 vcmpnltpd xmm1, [rax]			; 05h
     99 vcmpnlepd xmm1, [rax]			; 06h
    100 vcmpordpd xmm1, [rax]			; 07h
    101 
    102 vcmpeqpd xmm1, xmm2, [rax]		; 00h
    103 vcmpltpd xmm1, xmm2, [rax]		; 01h
    104 vcmplepd xmm1, xmm2, [rax]		; 02h
    105 vcmpunordpd xmm1, xmm2, [rax]		; 03h
    106 vcmpneqpd xmm1, xmm2, [rax]		; 04h
    107 vcmpnltpd xmm1, xmm2, [rax]		; 05h
    108 vcmpnlepd xmm1, xmm2, [rax]		; 06h
    109 vcmpordpd xmm1, xmm2, [rax]		; 07h
    110 
    111 vcmpeq_uqpd xmm1, xmm2, [rax]		; 08h
    112 vcmpngepd xmm1, xmm2, [rax]		; 09h
    113 vcmpngtpd xmm1, xmm2, [rax]		; 0Ah
    114 vcmpfalsepd xmm1, xmm2, [rax]		; 0Bh
    115 vcmpneq_oqpd xmm1, xmm2, [rax]		; 0Ch
    116 vcmpgepd xmm1, xmm2, [rax]		; 0Dh
    117 vcmpgtpd xmm1, xmm2, [rax]		; 0Eh
    118 vcmptruepd xmm1, xmm2, [rax]		; 0Fh
    119 
    120 vcmpeq_ospd xmm1, xmm2, [rax]		; 10h
    121 vcmplt_oqpd xmm1, xmm2, [rax]		; 11h
    122 vcmple_oqpd xmm1, xmm2, [rax]		; 12h
    123 vcmpunord_spd xmm1, xmm2, [rax]		; 13h
    124 vcmpneq_uspd xmm1, xmm2, [rax]		; 14h
    125 vcmpnlt_uqpd xmm1, xmm2, [rax]		; 15h
    126 vcmpnle_uqpd xmm1, xmm2, [rax]		; 16h
    127 vcmpord_spd xmm1, xmm2, [rax]		; 17h
    128 
    129 vcmpeq_uspd xmm1, xmm2, [rax]		; 18h
    130 vcmpnge_uqpd xmm1, xmm2, [rax]		; 19h
    131 vcmpngt_uqpd xmm1, xmm2, [rax]		; 1Ah
    132 vcmpfalse_ospd xmm1, xmm2, [rax]	; 1Bh
    133 vcmpneq_ospd xmm1, xmm2, [rax]		; 1Ch
    134 vcmpge_oqpd xmm1, xmm2, [rax]		; 1Dh
    135 vcmpgt_oqpd xmm1, xmm2, [rax]		; 1Eh
    136 vcmptrue_uspd xmm1, xmm2, [rax]		; 1Fh
    137 
    138 cmpeqpd xmm1, dqword [rax]			; 00h
    139 cmpltpd xmm1, dqword [rax]			; 01h
    140 cmplepd xmm1, dqword [rax]			; 02h
    141 cmpunordpd xmm1, dqword [rax]			; 03h
    142 cmpneqpd xmm1, dqword [rax]			; 04h
    143 cmpnltpd xmm1, dqword [rax]			; 05h
    144 cmpnlepd xmm1, dqword [rax]			; 06h
    145 cmpordpd xmm1, dqword [rax]			; 07h
    146 
    147 vcmpeqpd xmm1, dqword [rax]			; 00h
    148 vcmpltpd xmm1, dqword [rax]			; 01h
    149 vcmplepd xmm1, dqword [rax]			; 02h
    150 vcmpunordpd xmm1, dqword [rax]			; 03h
    151 vcmpneqpd xmm1, dqword [rax]			; 04h
    152 vcmpnltpd xmm1, dqword [rax]			; 05h
    153 vcmpnlepd xmm1, dqword [rax]			; 06h
    154 vcmpordpd xmm1, dqword [rax]			; 07h
    155 
    156 vcmpeqpd xmm1, xmm2, dqword [rax]		; 00h
    157 vcmpltpd xmm1, xmm2, dqword [rax]		; 01h
    158 vcmplepd xmm1, xmm2, dqword [rax]		; 02h
    159 vcmpunordpd xmm1, xmm2, dqword [rax]		; 03h
    160 vcmpneqpd xmm1, xmm2, dqword [rax]		; 04h
    161 vcmpnltpd xmm1, xmm2, dqword [rax]		; 05h
    162 vcmpnlepd xmm1, xmm2, dqword [rax]		; 06h
    163 vcmpordpd xmm1, xmm2, dqword [rax]		; 07h
    164 
    165 vcmpeq_uqpd xmm1, xmm2, dqword [rax]		; 08h
    166 vcmpngepd xmm1, xmm2, dqword [rax]		; 09h
    167 vcmpngtpd xmm1, xmm2, dqword [rax]		; 0Ah
    168 vcmpfalsepd xmm1, xmm2, dqword [rax]		; 0Bh
    169 vcmpneq_oqpd xmm1, xmm2, dqword [rax]		; 0Ch
    170 vcmpgepd xmm1, xmm2, dqword [rax]		; 0Dh
    171 vcmpgtpd xmm1, xmm2, dqword [rax]		; 0Eh
    172 vcmptruepd xmm1, xmm2, dqword [rax]		; 0Fh
    173 
    174 vcmpeq_ospd xmm1, xmm2, dqword [rax]		; 10h
    175 vcmplt_oqpd xmm1, xmm2, dqword [rax]		; 11h
    176 vcmple_oqpd xmm1, xmm2, dqword [rax]		; 12h
    177 vcmpunord_spd xmm1, xmm2, dqword [rax]		; 13h
    178 vcmpneq_uspd xmm1, xmm2, dqword [rax]		; 14h
    179 vcmpnlt_uqpd xmm1, xmm2, dqword [rax]		; 15h
    180 vcmpnle_uqpd xmm1, xmm2, dqword [rax]		; 16h
    181 vcmpord_spd xmm1, xmm2, dqword [rax]		; 17h
    182 
    183 vcmpeq_uspd xmm1, xmm2, dqword [rax]		; 18h
    184 vcmpnge_uqpd xmm1, xmm2, dqword [rax]		; 19h
    185 vcmpngt_uqpd xmm1, xmm2, dqword [rax]		; 1Ah
    186 vcmpfalse_ospd xmm1, xmm2, dqword [rax]		; 1Bh
    187 vcmpneq_ospd xmm1, xmm2, dqword [rax]		; 1Ch
    188 vcmpge_oqpd xmm1, xmm2, dqword [rax]		; 1Dh
    189 vcmpgt_oqpd xmm1, xmm2, dqword [rax]		; 1Eh
    190 vcmptrue_uspd xmm1, xmm2, dqword [rax]		; 1Fh
    191 
    192 vcmpeqpd ymm1, ymm2, ymm3		; 00h
    193 vcmpltpd ymm1, ymm2, ymm3		; 01h
    194 vcmplepd ymm1, ymm2, ymm3		; 02h
    195 vcmpunordpd ymm1, ymm2, ymm3		; 03h
    196 vcmpneqpd ymm1, ymm2, ymm3		; 04h
    197 vcmpnltpd ymm1, ymm2, ymm3		; 05h
    198 vcmpnlepd ymm1, ymm2, ymm3		; 06h
    199 vcmpordpd ymm1, ymm2, ymm3		; 07h
    200 
    201 vcmpeq_uqpd ymm1, ymm2, ymm3		; 08h
    202 vcmpngepd ymm1, ymm2, ymm3		; 09h
    203 vcmpngtpd ymm1, ymm2, ymm3		; 0Ah
    204 vcmpfalsepd ymm1, ymm2, ymm3		; 0Bh
    205 vcmpneq_oqpd ymm1, ymm2, ymm3		; 0Ch
    206 vcmpgepd ymm1, ymm2, ymm3		; 0Dh
    207 vcmpgtpd ymm1, ymm2, ymm3		; 0Eh
    208 vcmptruepd ymm1, ymm2, ymm3		; 0Fh
    209 
    210 vcmpeq_ospd ymm1, ymm2, ymm3		; 10h
    211 vcmplt_oqpd ymm1, ymm2, ymm3		; 11h
    212 vcmple_oqpd ymm1, ymm2, ymm3		; 12h
    213 vcmpunord_spd ymm1, ymm2, ymm3		; 13h
    214 vcmpneq_uspd ymm1, ymm2, ymm3		; 14h
    215 vcmpnlt_uqpd ymm1, ymm2, ymm3		; 15h
    216 vcmpnle_uqpd ymm1, ymm2, ymm3		; 16h
    217 vcmpord_spd ymm1, ymm2, ymm3		; 17h
    218 
    219 vcmpeq_uspd ymm1, ymm2, ymm3		; 18h
    220 vcmpnge_uqpd ymm1, ymm2, ymm3		; 19h
    221 vcmpngt_uqpd ymm1, ymm2, ymm3		; 1Ah
    222 vcmpfalse_ospd ymm1, ymm2, ymm3		; 1Bh
    223 vcmpneq_ospd ymm1, ymm2, ymm3		; 1Ch
    224 vcmpge_oqpd ymm1, ymm2, ymm3		; 1Dh
    225 vcmpgt_oqpd ymm1, ymm2, ymm3		; 1Eh
    226 vcmptrue_uspd ymm1, ymm2, ymm3		; 1Fh
    227 
    228 vcmpeqpd ymm1, ymm2, [rax]		; 00h
    229 vcmpltpd ymm1, ymm2, [rax]		; 01h
    230 vcmplepd ymm1, ymm2, [rax]		; 02h
    231 vcmpunordpd ymm1, ymm2, [rax]		; 03h
    232 vcmpneqpd ymm1, ymm2, [rax]		; 04h
    233 vcmpnltpd ymm1, ymm2, [rax]		; 05h
    234 vcmpnlepd ymm1, ymm2, [rax]		; 06h
    235 vcmpordpd ymm1, ymm2, [rax]		; 07h
    236 
    237 vcmpeq_uqpd ymm1, ymm2, [rax]		; 08h
    238 vcmpngepd ymm1, ymm2, [rax]		; 09h
    239 vcmpngtpd ymm1, ymm2, [rax]		; 0Ah
    240 vcmpfalsepd ymm1, ymm2, [rax]		; 0Bh
    241 vcmpneq_oqpd ymm1, ymm2, [rax]		; 0Ch
    242 vcmpgepd ymm1, ymm2, [rax]		; 0Dh
    243 vcmpgtpd ymm1, ymm2, [rax]		; 0Eh
    244 vcmptruepd ymm1, ymm2, [rax]		; 0Fh
    245 
    246 vcmpeq_ospd ymm1, ymm2, [rax]		; 10h
    247 vcmplt_oqpd ymm1, ymm2, [rax]		; 11h
    248 vcmple_oqpd ymm1, ymm2, [rax]		; 12h
    249 vcmpunord_spd ymm1, ymm2, [rax]		; 13h
    250 vcmpneq_uspd ymm1, ymm2, [rax]		; 14h
    251 vcmpnlt_uqpd ymm1, ymm2, [rax]		; 15h
    252 vcmpnle_uqpd ymm1, ymm2, [rax]		; 16h
    253 vcmpord_spd ymm1, ymm2, [rax]		; 17h
    254 
    255 vcmpeq_uspd ymm1, ymm2, [rax]		; 18h
    256 vcmpnge_uqpd ymm1, ymm2, [rax]		; 19h
    257 vcmpngt_uqpd ymm1, ymm2, [rax]		; 1Ah
    258 vcmpfalse_ospd ymm1, ymm2, [rax]	; 1Bh
    259 vcmpneq_ospd ymm1, ymm2, [rax]		; 1Ch
    260 vcmpge_oqpd ymm1, ymm2, [rax]		; 1Dh
    261 vcmpgt_oqpd ymm1, ymm2, [rax]		; 1Eh
    262 vcmptrue_uspd ymm1, ymm2, [rax]		; 1Fh
    263 
    264 vcmpeqpd ymm1, ymm2, yword [rax]		; 00h
    265 vcmpltpd ymm1, ymm2, yword [rax]		; 01h
    266 vcmplepd ymm1, ymm2, yword [rax]		; 02h
    267 vcmpunordpd ymm1, ymm2, yword [rax]		; 03h
    268 vcmpneqpd ymm1, ymm2, yword [rax]		; 04h
    269 vcmpnltpd ymm1, ymm2, yword [rax]		; 05h
    270 vcmpnlepd ymm1, ymm2, yword [rax]		; 06h
    271 vcmpordpd ymm1, ymm2, yword [rax]		; 07h
    272 
    273 vcmpeq_uqpd ymm1, ymm2, yword [rax]		; 08h
    274 vcmpngepd ymm1, ymm2, yword [rax]		; 09h
    275 vcmpngtpd ymm1, ymm2, yword [rax]		; 0Ah
    276 vcmpfalsepd ymm1, ymm2, yword [rax]		; 0Bh
    277 vcmpneq_oqpd ymm1, ymm2, yword [rax]		; 0Ch
    278 vcmpgepd ymm1, ymm2, yword [rax]		; 0Dh
    279 vcmpgtpd ymm1, ymm2, yword [rax]		; 0Eh
    280 vcmptruepd ymm1, ymm2, yword [rax]		; 0Fh
    281 
    282 vcmpeq_ospd ymm1, ymm2, yword [rax]		; 10h
    283 vcmplt_oqpd ymm1, ymm2, yword [rax]		; 11h
    284 vcmple_oqpd ymm1, ymm2, yword [rax]		; 12h
    285 vcmpunord_spd ymm1, ymm2, yword [rax]		; 13h
    286 vcmpneq_uspd ymm1, ymm2, yword [rax]		; 14h
    287 vcmpnlt_uqpd ymm1, ymm2, yword [rax]		; 15h
    288 vcmpnle_uqpd ymm1, ymm2, yword [rax]		; 16h
    289 vcmpord_spd ymm1, ymm2, yword [rax]		; 17h
    290 
    291 vcmpeq_uspd ymm1, ymm2, yword [rax]		; 18h
    292 vcmpnge_uqpd ymm1, ymm2, yword [rax]		; 19h
    293 vcmpngt_uqpd ymm1, ymm2, yword [rax]		; 1Ah
    294 vcmpfalse_ospd ymm1, ymm2, yword [rax]		; 1Bh
    295 vcmpneq_ospd ymm1, ymm2, yword [rax]		; 1Ch
    296 vcmpge_oqpd ymm1, ymm2, yword [rax]		; 1Dh
    297 vcmpgt_oqpd ymm1, ymm2, yword [rax]		; 1Eh
    298 vcmptrue_uspd ymm1, ymm2, yword [rax]		; 1Fh
    299 
    300 ;-----------------------------------------------------------------------------
    301 
    302 cmpeqps xmm1, xmm2			; 00h
    303 cmpltps xmm1, xmm2			; 01h
    304 cmpleps xmm1, xmm2			; 02h
    305 cmpunordps xmm1, xmm2			; 03h
    306 cmpneqps xmm1, xmm2			; 04h
    307 cmpnltps xmm1, xmm2			; 05h
    308 cmpnleps xmm1, xmm2			; 06h
    309 cmpordps xmm1, xmm2			; 07h
    310 
    311 vcmpeqps xmm1, xmm2			; 00h
    312 vcmpltps xmm1, xmm2			; 01h
    313 vcmpleps xmm1, xmm2			; 02h
    314 vcmpunordps xmm1, xmm2			; 03h
    315 vcmpneqps xmm1, xmm2			; 04h
    316 vcmpnltps xmm1, xmm2			; 05h
    317 vcmpnleps xmm1, xmm2			; 06h
    318 vcmpordps xmm1, xmm2			; 07h
    319 
    320 vcmpeqps xmm1, xmm2, xmm3		; 00h
    321 vcmpltps xmm1, xmm2, xmm3		; 01h
    322 vcmpleps xmm1, xmm2, xmm3		; 02h
    323 vcmpunordps xmm1, xmm2, xmm3		; 03h
    324 vcmpneqps xmm1, xmm2, xmm3		; 04h
    325 vcmpnltps xmm1, xmm2, xmm3		; 05h
    326 vcmpnleps xmm1, xmm2, xmm3		; 06h
    327 vcmpordps xmm1, xmm2, xmm3		; 07h
    328 
    329 vcmpeq_uqps xmm1, xmm2, xmm3		; 08h
    330 vcmpngeps xmm1, xmm2, xmm3		; 09h
    331 vcmpngtps xmm1, xmm2, xmm3		; 0Ah
    332 vcmpfalseps xmm1, xmm2, xmm3		; 0Bh
    333 vcmpneq_oqps xmm1, xmm2, xmm3		; 0Ch
    334 vcmpgeps xmm1, xmm2, xmm3		; 0Dh
    335 vcmpgtps xmm1, xmm2, xmm3		; 0Eh
    336 vcmptrueps xmm1, xmm2, xmm3		; 0Fh
    337 
    338 vcmpeq_osps xmm1, xmm2, xmm3		; 10h
    339 vcmplt_oqps xmm1, xmm2, xmm3		; 11h
    340 vcmple_oqps xmm1, xmm2, xmm3		; 12h
    341 vcmpunord_sps xmm1, xmm2, xmm3		; 13h
    342 vcmpneq_usps xmm1, xmm2, xmm3		; 14h
    343 vcmpnlt_uqps xmm1, xmm2, xmm3		; 15h
    344 vcmpnle_uqps xmm1, xmm2, xmm3		; 16h
    345 vcmpord_sps xmm1, xmm2, xmm3		; 17h
    346 
    347 vcmpeq_usps xmm1, xmm2, xmm3		; 18h
    348 vcmpnge_uqps xmm1, xmm2, xmm3		; 19h
    349 vcmpngt_uqps xmm1, xmm2, xmm3		; 1Ah
    350 vcmpfalse_osps xmm1, xmm2, xmm3		; 1Bh
    351 vcmpneq_osps xmm1, xmm2, xmm3		; 1Ch
    352 vcmpge_oqps xmm1, xmm2, xmm3		; 1Dh
    353 vcmpgt_oqps xmm1, xmm2, xmm3		; 1Eh
    354 vcmptrue_usps xmm1, xmm2, xmm3		; 1Fh
    355 
    356 cmpeqps xmm1, [rax]			; 00h
    357 cmpltps xmm1, [rax]			; 01h
    358 cmpleps xmm1, [rax]			; 02h
    359 cmpunordps xmm1, [rax]			; 03h
    360 cmpneqps xmm1, [rax]			; 04h
    361 cmpnltps xmm1, [rax]			; 05h
    362 cmpnleps xmm1, [rax]			; 06h
    363 cmpordps xmm1, [rax]			; 07h
    364 
    365 vcmpeqps xmm1, [rax]			; 00h
    366 vcmpltps xmm1, [rax]			; 01h
    367 vcmpleps xmm1, [rax]			; 02h
    368 vcmpunordps xmm1, [rax]			; 03h
    369 vcmpneqps xmm1, [rax]			; 04h
    370 vcmpnltps xmm1, [rax]			; 05h
    371 vcmpnleps xmm1, [rax]			; 06h
    372 vcmpordps xmm1, [rax]			; 07h
    373 
    374 vcmpeqps xmm1, xmm2, [rax]		; 00h
    375 vcmpltps xmm1, xmm2, [rax]		; 01h
    376 vcmpleps xmm1, xmm2, [rax]		; 02h
    377 vcmpunordps xmm1, xmm2, [rax]		; 03h
    378 vcmpneqps xmm1, xmm2, [rax]		; 04h
    379 vcmpnltps xmm1, xmm2, [rax]		; 05h
    380 vcmpnleps xmm1, xmm2, [rax]		; 06h
    381 vcmpordps xmm1, xmm2, [rax]		; 07h
    382 
    383 vcmpeq_uqps xmm1, xmm2, [rax]		; 08h
    384 vcmpngeps xmm1, xmm2, [rax]		; 09h
    385 vcmpngtps xmm1, xmm2, [rax]		; 0Ah
    386 vcmpfalseps xmm1, xmm2, [rax]		; 0Bh
    387 vcmpneq_oqps xmm1, xmm2, [rax]		; 0Ch
    388 vcmpgeps xmm1, xmm2, [rax]		; 0Dh
    389 vcmpgtps xmm1, xmm2, [rax]		; 0Eh
    390 vcmptrueps xmm1, xmm2, [rax]		; 0Fh
    391 
    392 vcmpeq_osps xmm1, xmm2, [rax]		; 10h
    393 vcmplt_oqps xmm1, xmm2, [rax]		; 11h
    394 vcmple_oqps xmm1, xmm2, [rax]		; 12h
    395 vcmpunord_sps xmm1, xmm2, [rax]		; 13h
    396 vcmpneq_usps xmm1, xmm2, [rax]		; 14h
    397 vcmpnlt_uqps xmm1, xmm2, [rax]		; 15h
    398 vcmpnle_uqps xmm1, xmm2, [rax]		; 16h
    399 vcmpord_sps xmm1, xmm2, [rax]		; 17h
    400 
    401 vcmpeq_usps xmm1, xmm2, [rax]		; 18h
    402 vcmpnge_uqps xmm1, xmm2, [rax]		; 19h
    403 vcmpngt_uqps xmm1, xmm2, [rax]		; 1Ah
    404 vcmpfalse_osps xmm1, xmm2, [rax]	; 1Bh
    405 vcmpneq_osps xmm1, xmm2, [rax]		; 1Ch
    406 vcmpge_oqps xmm1, xmm2, [rax]		; 1Dh
    407 vcmpgt_oqps xmm1, xmm2, [rax]		; 1Eh
    408 vcmptrue_usps xmm1, xmm2, [rax]		; 1Fh
    409 
    410 cmpeqps xmm1, dqword [rax]			; 00h
    411 cmpltps xmm1, dqword [rax]			; 01h
    412 cmpleps xmm1, dqword [rax]			; 02h
    413 cmpunordps xmm1, dqword [rax]			; 03h
    414 cmpneqps xmm1, dqword [rax]			; 04h
    415 cmpnltps xmm1, dqword [rax]			; 05h
    416 cmpnleps xmm1, dqword [rax]			; 06h
    417 cmpordps xmm1, dqword [rax]			; 07h
    418 
    419 vcmpeqps xmm1, dqword [rax]			; 00h
    420 vcmpltps xmm1, dqword [rax]			; 01h
    421 vcmpleps xmm1, dqword [rax]			; 02h
    422 vcmpunordps xmm1, dqword [rax]			; 03h
    423 vcmpneqps xmm1, dqword [rax]			; 04h
    424 vcmpnltps xmm1, dqword [rax]			; 05h
    425 vcmpnleps xmm1, dqword [rax]			; 06h
    426 vcmpordps xmm1, dqword [rax]			; 07h
    427 
    428 vcmpeqps xmm1, xmm2, dqword [rax]		; 00h
    429 vcmpltps xmm1, xmm2, dqword [rax]		; 01h
    430 vcmpleps xmm1, xmm2, dqword [rax]		; 02h
    431 vcmpunordps xmm1, xmm2, dqword [rax]		; 03h
    432 vcmpneqps xmm1, xmm2, dqword [rax]		; 04h
    433 vcmpnltps xmm1, xmm2, dqword [rax]		; 05h
    434 vcmpnleps xmm1, xmm2, dqword [rax]		; 06h
    435 vcmpordps xmm1, xmm2, dqword [rax]		; 07h
    436 
    437 vcmpeq_uqps xmm1, xmm2, dqword [rax]		; 08h
    438 vcmpngeps xmm1, xmm2, dqword [rax]		; 09h
    439 vcmpngtps xmm1, xmm2, dqword [rax]		; 0Ah
    440 vcmpfalseps xmm1, xmm2, dqword [rax]		; 0Bh
    441 vcmpneq_oqps xmm1, xmm2, dqword [rax]		; 0Ch
    442 vcmpgeps xmm1, xmm2, dqword [rax]		; 0Dh
    443 vcmpgtps xmm1, xmm2, dqword [rax]		; 0Eh
    444 vcmptrueps xmm1, xmm2, dqword [rax]		; 0Fh
    445 
    446 vcmpeq_osps xmm1, xmm2, dqword [rax]		; 10h
    447 vcmplt_oqps xmm1, xmm2, dqword [rax]		; 11h
    448 vcmple_oqps xmm1, xmm2, dqword [rax]		; 12h
    449 vcmpunord_sps xmm1, xmm2, dqword [rax]		; 13h
    450 vcmpneq_usps xmm1, xmm2, dqword [rax]		; 14h
    451 vcmpnlt_uqps xmm1, xmm2, dqword [rax]		; 15h
    452 vcmpnle_uqps xmm1, xmm2, dqword [rax]		; 16h
    453 vcmpord_sps xmm1, xmm2, dqword [rax]		; 17h
    454 
    455 vcmpeq_usps xmm1, xmm2, dqword [rax]		; 18h
    456 vcmpnge_uqps xmm1, xmm2, dqword [rax]		; 19h
    457 vcmpngt_uqps xmm1, xmm2, dqword [rax]		; 1Ah
    458 vcmpfalse_osps xmm1, xmm2, dqword [rax]		; 1Bh
    459 vcmpneq_osps xmm1, xmm2, dqword [rax]		; 1Ch
    460 vcmpge_oqps xmm1, xmm2, dqword [rax]		; 1Dh
    461 vcmpgt_oqps xmm1, xmm2, dqword [rax]		; 1Eh
    462 vcmptrue_usps xmm1, xmm2, dqword [rax]		; 1Fh
    463 
    464 vcmpeqps ymm1, ymm2, ymm3		; 00h
    465 vcmpltps ymm1, ymm2, ymm3		; 01h
    466 vcmpleps ymm1, ymm2, ymm3		; 02h
    467 vcmpunordps ymm1, ymm2, ymm3		; 03h
    468 vcmpneqps ymm1, ymm2, ymm3		; 04h
    469 vcmpnltps ymm1, ymm2, ymm3		; 05h
    470 vcmpnleps ymm1, ymm2, ymm3		; 06h
    471 vcmpordps ymm1, ymm2, ymm3		; 07h
    472 
    473 vcmpeq_uqps ymm1, ymm2, ymm3		; 08h
    474 vcmpngeps ymm1, ymm2, ymm3		; 09h
    475 vcmpngtps ymm1, ymm2, ymm3		; 0Ah
    476 vcmpfalseps ymm1, ymm2, ymm3		; 0Bh
    477 vcmpneq_oqps ymm1, ymm2, ymm3		; 0Ch
    478 vcmpgeps ymm1, ymm2, ymm3		; 0Dh
    479 vcmpgtps ymm1, ymm2, ymm3		; 0Eh
    480 vcmptrueps ymm1, ymm2, ymm3		; 0Fh
    481 
    482 vcmpeq_osps ymm1, ymm2, ymm3		; 10h
    483 vcmplt_oqps ymm1, ymm2, ymm3		; 11h
    484 vcmple_oqps ymm1, ymm2, ymm3		; 12h
    485 vcmpunord_sps ymm1, ymm2, ymm3		; 13h
    486 vcmpneq_usps ymm1, ymm2, ymm3		; 14h
    487 vcmpnlt_uqps ymm1, ymm2, ymm3		; 15h
    488 vcmpnle_uqps ymm1, ymm2, ymm3		; 16h
    489 vcmpord_sps ymm1, ymm2, ymm3		; 17h
    490 
    491 vcmpeq_usps ymm1, ymm2, ymm3		; 18h
    492 vcmpnge_uqps ymm1, ymm2, ymm3		; 19h
    493 vcmpngt_uqps ymm1, ymm2, ymm3		; 1Ah
    494 vcmpfalse_osps ymm1, ymm2, ymm3		; 1Bh
    495 vcmpneq_osps ymm1, ymm2, ymm3		; 1Ch
    496 vcmpge_oqps ymm1, ymm2, ymm3		; 1Dh
    497 vcmpgt_oqps ymm1, ymm2, ymm3		; 1Eh
    498 vcmptrue_usps ymm1, ymm2, ymm3		; 1Fh
    499 
    500 vcmpeqps ymm1, ymm2, [rax]		; 00h
    501 vcmpltps ymm1, ymm2, [rax]		; 01h
    502 vcmpleps ymm1, ymm2, [rax]		; 02h
    503 vcmpunordps ymm1, ymm2, [rax]		; 03h
    504 vcmpneqps ymm1, ymm2, [rax]		; 04h
    505 vcmpnltps ymm1, ymm2, [rax]		; 05h
    506 vcmpnleps ymm1, ymm2, [rax]		; 06h
    507 vcmpordps ymm1, ymm2, [rax]		; 07h
    508 
    509 vcmpeq_uqps ymm1, ymm2, [rax]		; 08h
    510 vcmpngeps ymm1, ymm2, [rax]		; 09h
    511 vcmpngtps ymm1, ymm2, [rax]		; 0Ah
    512 vcmpfalseps ymm1, ymm2, [rax]		; 0Bh
    513 vcmpneq_oqps ymm1, ymm2, [rax]		; 0Ch
    514 vcmpgeps ymm1, ymm2, [rax]		; 0Dh
    515 vcmpgtps ymm1, ymm2, [rax]		; 0Eh
    516 vcmptrueps ymm1, ymm2, [rax]		; 0Fh
    517 
    518 vcmpeq_osps ymm1, ymm2, [rax]		; 10h
    519 vcmplt_oqps ymm1, ymm2, [rax]		; 11h
    520 vcmple_oqps ymm1, ymm2, [rax]		; 12h
    521 vcmpunord_sps ymm1, ymm2, [rax]		; 13h
    522 vcmpneq_usps ymm1, ymm2, [rax]		; 14h
    523 vcmpnlt_uqps ymm1, ymm2, [rax]		; 15h
    524 vcmpnle_uqps ymm1, ymm2, [rax]		; 16h
    525 vcmpord_sps ymm1, ymm2, [rax]		; 17h
    526 
    527 vcmpeq_usps ymm1, ymm2, [rax]		; 18h
    528 vcmpnge_uqps ymm1, ymm2, [rax]		; 19h
    529 vcmpngt_uqps ymm1, ymm2, [rax]		; 1Ah
    530 vcmpfalse_osps ymm1, ymm2, [rax]	; 1Bh
    531 vcmpneq_osps ymm1, ymm2, [rax]		; 1Ch
    532 vcmpge_oqps ymm1, ymm2, [rax]		; 1Dh
    533 vcmpgt_oqps ymm1, ymm2, [rax]		; 1Eh
    534 vcmptrue_usps ymm1, ymm2, [rax]		; 1Fh
    535 
    536 vcmpeqps ymm1, ymm2, yword [rax]		; 00h
    537 vcmpltps ymm1, ymm2, yword [rax]		; 01h
    538 vcmpleps ymm1, ymm2, yword [rax]		; 02h
    539 vcmpunordps ymm1, ymm2, yword [rax]		; 03h
    540 vcmpneqps ymm1, ymm2, yword [rax]		; 04h
    541 vcmpnltps ymm1, ymm2, yword [rax]		; 05h
    542 vcmpnleps ymm1, ymm2, yword [rax]		; 06h
    543 vcmpordps ymm1, ymm2, yword [rax]		; 07h
    544 
    545 vcmpeq_uqps ymm1, ymm2, yword [rax]		; 08h
    546 vcmpngeps ymm1, ymm2, yword [rax]		; 09h
    547 vcmpngtps ymm1, ymm2, yword [rax]		; 0Ah
    548 vcmpfalseps ymm1, ymm2, yword [rax]		; 0Bh
    549 vcmpneq_oqps ymm1, ymm2, yword [rax]		; 0Ch
    550 vcmpgeps ymm1, ymm2, yword [rax]		; 0Dh
    551 vcmpgtps ymm1, ymm2, yword [rax]		; 0Eh
    552 vcmptrueps ymm1, ymm2, yword [rax]		; 0Fh
    553 
    554 vcmpeq_osps ymm1, ymm2, yword [rax]		; 10h
    555 vcmplt_oqps ymm1, ymm2, yword [rax]		; 11h
    556 vcmple_oqps ymm1, ymm2, yword [rax]		; 12h
    557 vcmpunord_sps ymm1, ymm2, yword [rax]		; 13h
    558 vcmpneq_usps ymm1, ymm2, yword [rax]		; 14h
    559 vcmpnlt_uqps ymm1, ymm2, yword [rax]		; 15h
    560 vcmpnle_uqps ymm1, ymm2, yword [rax]		; 16h
    561 vcmpord_sps ymm1, ymm2, yword [rax]		; 17h
    562 
    563 vcmpeq_usps ymm1, ymm2, yword [rax]		; 18h
    564 vcmpnge_uqps ymm1, ymm2, yword [rax]		; 19h
    565 vcmpngt_uqps ymm1, ymm2, yword [rax]		; 1Ah
    566 vcmpfalse_osps ymm1, ymm2, yword [rax]		; 1Bh
    567 vcmpneq_osps ymm1, ymm2, yword [rax]		; 1Ch
    568 vcmpge_oqps ymm1, ymm2, yword [rax]		; 1Dh
    569 vcmpgt_oqps ymm1, ymm2, yword [rax]		; 1Eh
    570 vcmptrue_usps ymm1, ymm2, yword [rax]		; 1Fh
    571 
    572 ;-----------------------------------------------------------------------------
    573 
    574 cmpeqsd xmm1, xmm2			; 00h
    575 cmpltsd xmm1, xmm2			; 01h
    576 cmplesd xmm1, xmm2			; 02h
    577 cmpunordsd xmm1, xmm2			; 03h
    578 cmpneqsd xmm1, xmm2			; 04h
    579 cmpnltsd xmm1, xmm2			; 05h
    580 cmpnlesd xmm1, xmm2			; 06h
    581 cmpordsd xmm1, xmm2			; 07h
    582 
    583 vcmpeqsd xmm1, xmm2			; 00h
    584 vcmpltsd xmm1, xmm2			; 01h
    585 vcmplesd xmm1, xmm2			; 02h
    586 vcmpunordsd xmm1, xmm2			; 03h
    587 vcmpneqsd xmm1, xmm2			; 04h
    588 vcmpnltsd xmm1, xmm2			; 05h
    589 vcmpnlesd xmm1, xmm2			; 06h
    590 vcmpordsd xmm1, xmm2			; 07h
    591 
    592 vcmpeqsd xmm1, xmm2, xmm3		; 00h
    593 vcmpltsd xmm1, xmm2, xmm3		; 01h
    594 vcmplesd xmm1, xmm2, xmm3		; 02h
    595 vcmpunordsd xmm1, xmm2, xmm3		; 03h
    596 vcmpneqsd xmm1, xmm2, xmm3		; 04h
    597 vcmpnltsd xmm1, xmm2, xmm3		; 05h
    598 vcmpnlesd xmm1, xmm2, xmm3		; 06h
    599 vcmpordsd xmm1, xmm2, xmm3		; 07h
    600 
    601 vcmpeq_uqsd xmm1, xmm2, xmm3		; 08h
    602 vcmpngesd xmm1, xmm2, xmm3		; 09h
    603 vcmpngtsd xmm1, xmm2, xmm3		; 0Ah
    604 vcmpfalsesd xmm1, xmm2, xmm3		; 0Bh
    605 vcmpneq_oqsd xmm1, xmm2, xmm3		; 0Ch
    606 vcmpgesd xmm1, xmm2, xmm3		; 0Dh
    607 vcmpgtsd xmm1, xmm2, xmm3		; 0Eh
    608 vcmptruesd xmm1, xmm2, xmm3		; 0Fh
    609 
    610 vcmpeq_ossd xmm1, xmm2, xmm3		; 10h
    611 vcmplt_oqsd xmm1, xmm2, xmm3		; 11h
    612 vcmple_oqsd xmm1, xmm2, xmm3		; 12h
    613 vcmpunord_ssd xmm1, xmm2, xmm3		; 13h
    614 vcmpneq_ussd xmm1, xmm2, xmm3		; 14h
    615 vcmpnlt_uqsd xmm1, xmm2, xmm3		; 15h
    616 vcmpnle_uqsd xmm1, xmm2, xmm3		; 16h
    617 vcmpord_ssd xmm1, xmm2, xmm3		; 17h
    618 
    619 vcmpeq_ussd xmm1, xmm2, xmm3		; 18h
    620 vcmpnge_uqsd xmm1, xmm2, xmm3		; 19h
    621 vcmpngt_uqsd xmm1, xmm2, xmm3		; 1Ah
    622 vcmpfalse_ossd xmm1, xmm2, xmm3		; 1Bh
    623 vcmpneq_ossd xmm1, xmm2, xmm3		; 1Ch
    624 vcmpge_oqsd xmm1, xmm2, xmm3		; 1Dh
    625 vcmpgt_oqsd xmm1, xmm2, xmm3		; 1Eh
    626 vcmptrue_ussd xmm1, xmm2, xmm3		; 1Fh
    627 
    628 cmpeqsd xmm1, [rax]			; 00h
    629 cmpltsd xmm1, [rax]			; 01h
    630 cmplesd xmm1, [rax]			; 02h
    631 cmpunordsd xmm1, [rax]			; 03h
    632 cmpneqsd xmm1, [rax]			; 04h
    633 cmpnltsd xmm1, [rax]			; 05h
    634 cmpnlesd xmm1, [rax]			; 06h
    635 cmpordsd xmm1, [rax]			; 07h
    636 
    637 vcmpeqsd xmm1, [rax]			; 00h
    638 vcmpltsd xmm1, [rax]			; 01h
    639 vcmplesd xmm1, [rax]			; 02h
    640 vcmpunordsd xmm1, [rax]			; 03h
    641 vcmpneqsd xmm1, [rax]			; 04h
    642 vcmpnltsd xmm1, [rax]			; 05h
    643 vcmpnlesd xmm1, [rax]			; 06h
    644 vcmpordsd xmm1, [rax]			; 07h
    645 
    646 vcmpeqsd xmm1, xmm2, [rax]		; 00h
    647 vcmpltsd xmm1, xmm2, [rax]		; 01h
    648 vcmplesd xmm1, xmm2, [rax]		; 02h
    649 vcmpunordsd xmm1, xmm2, [rax]		; 03h
    650 vcmpneqsd xmm1, xmm2, [rax]		; 04h
    651 vcmpnltsd xmm1, xmm2, [rax]		; 05h
    652 vcmpnlesd xmm1, xmm2, [rax]		; 06h
    653 vcmpordsd xmm1, xmm2, [rax]		; 07h
    654 
    655 vcmpeq_uqsd xmm1, xmm2, [rax]		; 08h
    656 vcmpngesd xmm1, xmm2, [rax]		; 09h
    657 vcmpngtsd xmm1, xmm2, [rax]		; 0Ah
    658 vcmpfalsesd xmm1, xmm2, [rax]		; 0Bh
    659 vcmpneq_oqsd xmm1, xmm2, [rax]		; 0Ch
    660 vcmpgesd xmm1, xmm2, [rax]		; 0Dh
    661 vcmpgtsd xmm1, xmm2, [rax]		; 0Eh
    662 vcmptruesd xmm1, xmm2, [rax]		; 0Fh
    663 
    664 vcmpeq_ossd xmm1, xmm2, [rax]		; 10h
    665 vcmplt_oqsd xmm1, xmm2, [rax]		; 11h
    666 vcmple_oqsd xmm1, xmm2, [rax]		; 12h
    667 vcmpunord_ssd xmm1, xmm2, [rax]		; 13h
    668 vcmpneq_ussd xmm1, xmm2, [rax]		; 14h
    669 vcmpnlt_uqsd xmm1, xmm2, [rax]		; 15h
    670 vcmpnle_uqsd xmm1, xmm2, [rax]		; 16h
    671 vcmpord_ssd xmm1, xmm2, [rax]		; 17h
    672 
    673 vcmpeq_ussd xmm1, xmm2, [rax]		; 18h
    674 vcmpnge_uqsd xmm1, xmm2, [rax]		; 19h
    675 vcmpngt_uqsd xmm1, xmm2, [rax]		; 1Ah
    676 vcmpfalse_ossd xmm1, xmm2, [rax]	; 1Bh
    677 vcmpneq_ossd xmm1, xmm2, [rax]		; 1Ch
    678 vcmpge_oqsd xmm1, xmm2, [rax]		; 1Dh
    679 vcmpgt_oqsd xmm1, xmm2, [rax]		; 1Eh
    680 vcmptrue_ussd xmm1, xmm2, [rax]		; 1Fh
    681 
    682 cmpeqsd xmm1, qword [rax]			; 00h
    683 cmpltsd xmm1, qword [rax]			; 01h
    684 cmplesd xmm1, qword [rax]			; 02h
    685 cmpunordsd xmm1, qword [rax]			; 03h
    686 cmpneqsd xmm1, qword [rax]			; 04h
    687 cmpnltsd xmm1, qword [rax]			; 05h
    688 cmpnlesd xmm1, qword [rax]			; 06h
    689 cmpordsd xmm1, qword [rax]			; 07h
    690 
    691 vcmpeqsd xmm1, qword [rax]			; 00h
    692 vcmpltsd xmm1, qword [rax]			; 01h
    693 vcmplesd xmm1, qword [rax]			; 02h
    694 vcmpunordsd xmm1, qword [rax]			; 03h
    695 vcmpneqsd xmm1, qword [rax]			; 04h
    696 vcmpnltsd xmm1, qword [rax]			; 05h
    697 vcmpnlesd xmm1, qword [rax]			; 06h
    698 vcmpordsd xmm1, qword [rax]			; 07h
    699 
    700 vcmpeqsd xmm1, xmm2, qword [rax]		; 00h
    701 vcmpltsd xmm1, xmm2, qword [rax]		; 01h
    702 vcmplesd xmm1, xmm2, qword [rax]		; 02h
    703 vcmpunordsd xmm1, xmm2, qword [rax]		; 03h
    704 vcmpneqsd xmm1, xmm2, qword [rax]		; 04h
    705 vcmpnltsd xmm1, xmm2, qword [rax]		; 05h
    706 vcmpnlesd xmm1, xmm2, qword [rax]		; 06h
    707 vcmpordsd xmm1, xmm2, qword [rax]		; 07h
    708 
    709 vcmpeq_uqsd xmm1, xmm2, qword [rax]		; 08h
    710 vcmpngesd xmm1, xmm2, qword [rax]		; 09h
    711 vcmpngtsd xmm1, xmm2, qword [rax]		; 0Ah
    712 vcmpfalsesd xmm1, xmm2, qword [rax]		; 0Bh
    713 vcmpneq_oqsd xmm1, xmm2, qword [rax]		; 0Ch
    714 vcmpgesd xmm1, xmm2, qword [rax]		; 0Dh
    715 vcmpgtsd xmm1, xmm2, qword [rax]		; 0Eh
    716 vcmptruesd xmm1, xmm2, qword [rax]		; 0Fh
    717 
    718 vcmpeq_ossd xmm1, xmm2, qword [rax]		; 10h
    719 vcmplt_oqsd xmm1, xmm2, qword [rax]		; 11h
    720 vcmple_oqsd xmm1, xmm2, qword [rax]		; 12h
    721 vcmpunord_ssd xmm1, xmm2, qword [rax]		; 13h
    722 vcmpneq_ussd xmm1, xmm2, qword [rax]		; 14h
    723 vcmpnlt_uqsd xmm1, xmm2, qword [rax]		; 15h
    724 vcmpnle_uqsd xmm1, xmm2, qword [rax]		; 16h
    725 vcmpord_ssd xmm1, xmm2, qword [rax]		; 17h
    726 
    727 vcmpeq_ussd xmm1, xmm2, qword [rax]		; 18h
    728 vcmpnge_uqsd xmm1, xmm2, qword [rax]		; 19h
    729 vcmpngt_uqsd xmm1, xmm2, qword [rax]		; 1Ah
    730 vcmpfalse_ossd xmm1, xmm2, qword [rax]		; 1Bh
    731 vcmpneq_ossd xmm1, xmm2, qword [rax]		; 1Ch
    732 vcmpge_oqsd xmm1, xmm2, qword [rax]		; 1Dh
    733 vcmpgt_oqsd xmm1, xmm2, qword [rax]		; 1Eh
    734 vcmptrue_ussd xmm1, xmm2, qword [rax]		; 1Fh
    735 
    736 ;-----------------------------------------------------------------------------
    737 
    738 cmpeqss xmm1, xmm2			; 00h
    739 cmpltss xmm1, xmm2			; 01h
    740 cmpless xmm1, xmm2			; 02h
    741 cmpunordss xmm1, xmm2			; 03h
    742 cmpneqss xmm1, xmm2			; 04h
    743 cmpnltss xmm1, xmm2			; 05h
    744 cmpnless xmm1, xmm2			; 06h
    745 cmpordss xmm1, xmm2			; 07h
    746 
    747 vcmpeqss xmm1, xmm2			; 00h
    748 vcmpltss xmm1, xmm2			; 01h
    749 vcmpless xmm1, xmm2			; 02h
    750 vcmpunordss xmm1, xmm2			; 03h
    751 vcmpneqss xmm1, xmm2			; 04h
    752 vcmpnltss xmm1, xmm2			; 05h
    753 vcmpnless xmm1, xmm2			; 06h
    754 vcmpordss xmm1, xmm2			; 07h
    755 
    756 vcmpeqss xmm1, xmm2, xmm3		; 00h
    757 vcmpltss xmm1, xmm2, xmm3		; 01h
    758 vcmpless xmm1, xmm2, xmm3		; 02h
    759 vcmpunordss xmm1, xmm2, xmm3		; 03h
    760 vcmpneqss xmm1, xmm2, xmm3		; 04h
    761 vcmpnltss xmm1, xmm2, xmm3		; 05h
    762 vcmpnless xmm1, xmm2, xmm3		; 06h
    763 vcmpordss xmm1, xmm2, xmm3		; 07h
    764 
    765 vcmpeq_uqss xmm1, xmm2, xmm3		; 08h
    766 vcmpngess xmm1, xmm2, xmm3		; 09h
    767 vcmpngtss xmm1, xmm2, xmm3		; 0Ah
    768 vcmpfalsess xmm1, xmm2, xmm3		; 0Bh
    769 vcmpneq_oqss xmm1, xmm2, xmm3		; 0Ch
    770 vcmpgess xmm1, xmm2, xmm3		; 0Dh
    771 vcmpgtss xmm1, xmm2, xmm3		; 0Eh
    772 vcmptruess xmm1, xmm2, xmm3		; 0Fh
    773 
    774 vcmpeq_osss xmm1, xmm2, xmm3		; 10h
    775 vcmplt_oqss xmm1, xmm2, xmm3		; 11h
    776 vcmple_oqss xmm1, xmm2, xmm3		; 12h
    777 vcmpunord_sss xmm1, xmm2, xmm3		; 13h
    778 vcmpneq_usss xmm1, xmm2, xmm3		; 14h
    779 vcmpnlt_uqss xmm1, xmm2, xmm3		; 15h
    780 vcmpnle_uqss xmm1, xmm2, xmm3		; 16h
    781 vcmpord_sss xmm1, xmm2, xmm3		; 17h
    782 
    783 vcmpeq_usss xmm1, xmm2, xmm3		; 18h
    784 vcmpnge_uqss xmm1, xmm2, xmm3		; 19h
    785 vcmpngt_uqss xmm1, xmm2, xmm3		; 1Ah
    786 vcmpfalse_osss xmm1, xmm2, xmm3		; 1Bh
    787 vcmpneq_osss xmm1, xmm2, xmm3		; 1Ch
    788 vcmpge_oqss xmm1, xmm2, xmm3		; 1Dh
    789 vcmpgt_oqss xmm1, xmm2, xmm3		; 1Eh
    790 vcmptrue_usss xmm1, xmm2, xmm3		; 1Fh
    791 
    792 cmpeqss xmm1, [rax]			; 00h
    793 cmpltss xmm1, [rax]			; 01h
    794 cmpless xmm1, [rax]			; 02h
    795 cmpunordss xmm1, [rax]			; 03h
    796 cmpneqss xmm1, [rax]			; 04h
    797 cmpnltss xmm1, [rax]			; 05h
    798 cmpnless xmm1, [rax]			; 06h
    799 cmpordss xmm1, [rax]			; 07h
    800 
    801 vcmpeqss xmm1, [rax]			; 00h
    802 vcmpltss xmm1, [rax]			; 01h
    803 vcmpless xmm1, [rax]			; 02h
    804 vcmpunordss xmm1, [rax]			; 03h
    805 vcmpneqss xmm1, [rax]			; 04h
    806 vcmpnltss xmm1, [rax]			; 05h
    807 vcmpnless xmm1, [rax]			; 06h
    808 vcmpordss xmm1, [rax]			; 07h
    809 
    810 vcmpeqss xmm1, xmm2, [rax]		; 00h
    811 vcmpltss xmm1, xmm2, [rax]		; 01h
    812 vcmpless xmm1, xmm2, [rax]		; 02h
    813 vcmpunordss xmm1, xmm2, [rax]		; 03h
    814 vcmpneqss xmm1, xmm2, [rax]		; 04h
    815 vcmpnltss xmm1, xmm2, [rax]		; 05h
    816 vcmpnless xmm1, xmm2, [rax]		; 06h
    817 vcmpordss xmm1, xmm2, [rax]		; 07h
    818 
    819 vcmpeq_uqss xmm1, xmm2, [rax]		; 08h
    820 vcmpngess xmm1, xmm2, [rax]		; 09h
    821 vcmpngtss xmm1, xmm2, [rax]		; 0Ah
    822 vcmpfalsess xmm1, xmm2, [rax]		; 0Bh
    823 vcmpneq_oqss xmm1, xmm2, [rax]		; 0Ch
    824 vcmpgess xmm1, xmm2, [rax]		; 0Dh
    825 vcmpgtss xmm1, xmm2, [rax]		; 0Eh
    826 vcmptruess xmm1, xmm2, [rax]		; 0Fh
    827 
    828 vcmpeq_osss xmm1, xmm2, [rax]		; 10h
    829 vcmplt_oqss xmm1, xmm2, [rax]		; 11h
    830 vcmple_oqss xmm1, xmm2, [rax]		; 12h
    831 vcmpunord_sss xmm1, xmm2, [rax]		; 13h
    832 vcmpneq_usss xmm1, xmm2, [rax]		; 14h
    833 vcmpnlt_uqss xmm1, xmm2, [rax]		; 15h
    834 vcmpnle_uqss xmm1, xmm2, [rax]		; 16h
    835 vcmpord_sss xmm1, xmm2, [rax]		; 17h
    836 
    837 vcmpeq_usss xmm1, xmm2, [rax]		; 18h
    838 vcmpnge_uqss xmm1, xmm2, [rax]		; 19h
    839 vcmpngt_uqss xmm1, xmm2, [rax]		; 1Ah
    840 vcmpfalse_osss xmm1, xmm2, [rax]	; 1Bh
    841 vcmpneq_osss xmm1, xmm2, [rax]		; 1Ch
    842 vcmpge_oqss xmm1, xmm2, [rax]		; 1Dh
    843 vcmpgt_oqss xmm1, xmm2, [rax]		; 1Eh
    844 vcmptrue_usss xmm1, xmm2, [rax]		; 1Fh
    845 
    846 cmpeqss xmm1, dword [rax]			; 00h
    847 cmpltss xmm1, dword [rax]			; 01h
    848 cmpless xmm1, dword [rax]			; 02h
    849 cmpunordss xmm1, dword [rax]			; 03h
    850 cmpneqss xmm1, dword [rax]			; 04h
    851 cmpnltss xmm1, dword [rax]			; 05h
    852 cmpnless xmm1, dword [rax]			; 06h
    853 cmpordss xmm1, dword [rax]			; 07h
    854 
    855 vcmpeqss xmm1, dword [rax]			; 00h
    856 vcmpltss xmm1, dword [rax]			; 01h
    857 vcmpless xmm1, dword [rax]			; 02h
    858 vcmpunordss xmm1, dword [rax]			; 03h
    859 vcmpneqss xmm1, dword [rax]			; 04h
    860 vcmpnltss xmm1, dword [rax]			; 05h
    861 vcmpnless xmm1, dword [rax]			; 06h
    862 vcmpordss xmm1, dword [rax]			; 07h
    863 
    864 vcmpeqss xmm1, xmm2, dword [rax]		; 00h
    865 vcmpltss xmm1, xmm2, dword [rax]		; 01h
    866 vcmpless xmm1, xmm2, dword [rax]		; 02h
    867 vcmpunordss xmm1, xmm2, dword [rax]		; 03h
    868 vcmpneqss xmm1, xmm2, dword [rax]		; 04h
    869 vcmpnltss xmm1, xmm2, dword [rax]		; 05h
    870 vcmpnless xmm1, xmm2, dword [rax]		; 06h
    871 vcmpordss xmm1, xmm2, dword [rax]		; 07h
    872 
    873 vcmpeq_uqss xmm1, xmm2, dword [rax]		; 08h
    874 vcmpngess xmm1, xmm2, dword [rax]		; 09h
    875 vcmpngtss xmm1, xmm2, dword [rax]		; 0Ah
    876 vcmpfalsess xmm1, xmm2, dword [rax]		; 0Bh
    877 vcmpneq_oqss xmm1, xmm2, dword [rax]		; 0Ch
    878 vcmpgess xmm1, xmm2, dword [rax]		; 0Dh
    879 vcmpgtss xmm1, xmm2, dword [rax]		; 0Eh
    880 vcmptruess xmm1, xmm2, dword [rax]		; 0Fh
    881 
    882 vcmpeq_osss xmm1, xmm2, dword [rax]		; 10h
    883 vcmplt_oqss xmm1, xmm2, dword [rax]		; 11h
    884 vcmple_oqss xmm1, xmm2, dword [rax]		; 12h
    885 vcmpunord_sss xmm1, xmm2, dword [rax]		; 13h
    886 vcmpneq_usss xmm1, xmm2, dword [rax]		; 14h
    887 vcmpnlt_uqss xmm1, xmm2, dword [rax]		; 15h
    888 vcmpnle_uqss xmm1, xmm2, dword [rax]		; 16h
    889 vcmpord_sss xmm1, xmm2, dword [rax]		; 17h
    890 
    891 vcmpeq_usss xmm1, xmm2, dword [rax]		; 18h
    892 vcmpnge_uqss xmm1, xmm2, dword [rax]		; 19h
    893 vcmpngt_uqss xmm1, xmm2, dword [rax]		; 1Ah
    894 vcmpfalse_osss xmm1, xmm2, dword [rax]		; 1Bh
    895 vcmpneq_osss xmm1, xmm2, dword [rax]		; 1Ch
    896 vcmpge_oqss xmm1, xmm2, dword [rax]		; 1Dh
    897 vcmpgt_oqss xmm1, xmm2, dword [rax]		; 1Eh
    898 vcmptrue_usss xmm1, xmm2, dword [rax]		; 1Fh
    899 
    900