1<!-- 2 Copyright (C) 2020 Collabora Ltd. 3 4 Permission is hereby granted, free of charge, to any person obtaining a 5 copy of this software and associated documentation files (the "Software"), 6 to deal in the Software without restriction, including without limitation 7 the rights to use, copy, modify, merge, publish, distribute, sublicense, 8 and/or sell copies of the Software, and to permit persons to whom the 9 Software is furnished to do so, subject to the following conditions: 10 11 The above copyright notice and this permission notice (including the next 12 paragraph) shall be included in all copies or substantial portions of the 13 Software. 14 15 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 18 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 SOFTWARE. 22--> 23 24<bifrost> 25 26 <ins name="*ARSHIFT.i32" mask="0x7ff838" exact="0x335018"> 27 <src start="0" mask="0xfb"/> 28 <src start="3" mask="0x8"/> 29 <src start="6"/> 30 <mod name="lane2" start="9" size="2" default="b0"> 31 <opt>b0</opt> 32 <opt>b1</opt> 33 <opt>b2</opt> 34 <opt>b3</opt> 35 </mod> 36 </ins> 37 38 <ins name="*ARSHIFT.v2i16"> 39 <src start="0" mask="0xfb"/> 40 <src start="3" mask="0x8"/> 41 <src start="6"/> 42 <mod name="lanes2" size="3" default="b02"> 43 <opt>b00</opt> 44 <opt>b11</opt> 45 <opt>b22</opt> 46 <opt>b33</opt> 47 <opt>b01</opt> 48 <opt>b23</opt> 49 <opt>b02</opt> 50 </mod> 51 <encoding mask="0x7ff838" exact="0x334818"> 52 <or> 53 <eq left="lanes2" right="#b00"/> 54 <eq left="lanes2" right="#b11"/> 55 <eq left="lanes2" right="#b22"/> 56 <eq left="lanes2" right="#b33"/> 57 </or> 58 <derived start="9" size="2"> 59 <eq left="lanes2" right="#b00"/> 60 <eq left="lanes2" right="#b11"/> 61 <eq left="lanes2" right="#b22"/> 62 <eq left="lanes2" right="#b33"/> 63 </derived> 64 </encoding> 65 <encoding mask="0x7ff838" exact="0x335818"> 66 <or> 67 <eq left="lanes2" right="#b01"/> 68 <eq left="lanes2" right="#b23"/> 69 <eq left="lanes2" right="#b02"/> 70 </or> 71 <derived start="9" size="2"> 72 <reserved/> 73 <eq left="lanes2" right="#b01"/> 74 <eq left="lanes2" right="#b23"/> 75 <eq left="lanes2" right="#b02"/> 76 </derived> 77 </encoding> 78 </ins> 79 80 <ins name="*ARSHIFT.v4i8"> 81 <src start="0" mask="0xfb"/> 82 <src start="3" mask="0x8"/> 83 <src start="6"/> 84 <mod name="lanes2" size="3" default="b0123"> 85 <opt>b0123</opt> 86 <opt>b0000</opt> 87 <opt>b1111</opt> 88 <opt>b2222</opt> 89 <opt>b3333</opt> 90 </mod> 91 <encoding mask="0x7ff838" exact="0x334018"> 92 <neq left="lanes2" right="#b0123"/> 93 <derived start="9" size="2"> 94 <eq left="lanes2" right="#b0000"/> 95 <eq left="lanes2" right="#b1111"/> 96 <eq left="lanes2" right="#b2222"/> 97 <eq left="lanes2" right="#b3333"/> 98 </derived> 99 </encoding> 100 <encoding mask="0x7ffe38" exact="0x335818"> 101 <eq left="lanes2" right="#b0123"/> 102 </encoding> 103 </ins> 104 105 <ins name="*ARSHIFT_DOUBLE.i32" mask="0x7ff000" exact="0x33e000"> 106 <src start="0" mask="0xfb"/> 107 <src start="3" mask="0xfb"/> 108 <src start="6"/> 109 <mod name="bytes2" start="9" size="1" opt="bytes2"/> 110 <mod name="lane2" start="10" size="1" default="b0"> 111 <opt>b0</opt> 112 <opt>b2</opt> 113 </mod> 114 <mod name="result_word" start="11" size="1" default="w0"> 115 <opt>w0</opt> 116 <opt>w1</opt> 117 </mod> 118 </ins> 119 120 <ins name="*ATOM_C.i32" mask="0x7fe000" exact="0x2f4000" last="true" dests="0"> 121 <src start="0" mask="0xf3"/> 122 <src start="3" mask="0xf3"/> 123 <src start="6" mask="0xf7"/> 124 <mod name="atom_opc" start="9" size="4"> 125 <reserved/> 126 <reserved/> 127 <opt>aadd</opt> 128 <reserved/> 129 <reserved/> 130 <reserved/> 131 <reserved/> 132 <reserved/> 133 <opt>asmin</opt> 134 <opt>asmax</opt> 135 <opt>aumin</opt> 136 <opt>aumax</opt> 137 <opt>aand</opt> 138 <opt>aor</opt> 139 <opt>axor</opt> 140 </mod> 141 </ins> 142 143 <ins name="*ATOM_C.i64" mask="0x7fe000" exact="0x2f0000" last="true" dests="0"> 144 <src start="0" mask="0xf3"/> 145 <src start="3" mask="0xf3"/> 146 <src start="6" mask="0xf7"/> 147 <mod name="atom_opc" start="9" size="4"> 148 <opt>aaddu</opt> 149 <opt>aadds</opt> 150 <opt>aadd</opt> 151 <reserved/> 152 <reserved/> 153 <reserved/> 154 <reserved/> 155 <reserved/> 156 <opt>asmin</opt> 157 <opt>asmax</opt> 158 <opt>aumin</opt> 159 <opt>aumax</opt> 160 <opt>aand</opt> 161 <opt>aor</opt> 162 <opt>axor</opt> 163 </mod> 164 </ins> 165 166 <ins name="*ATOM_C1.i32" mask="0x7ffe00" exact="0x2f5e00" last="true" dests="0"> 167 <src start="0" mask="0xf3"/> 168 <src start="3" mask="0xf3"/> 169 <mod name="atom_opc" start="6" size="3"> 170 <opt>ainc</opt> 171 <opt>adec</opt> 172 <opt>aumax1</opt> 173 <opt>asmax1</opt> 174 <opt>aor1</opt> 175 </mod> 176 </ins> 177 178 <ins name="*ATOM_C1.i64" mask="0x7ffe00" exact="0x2f1e00" last="true" dests="0"> 179 <src start="0" mask="0xf3"/> 180 <src start="3" mask="0xf3"/> 181 <mod name="atom_opc" start="6" size="3"> 182 <opt>ainc</opt> 183 <opt>adec</opt> 184 <opt>aumax1</opt> 185 <opt>asmax1</opt> 186 <opt>aor1</opt> 187 </mod> 188 </ins> 189 190 <ins name="*ATOM_C1_RETURN.i32" mask="0x7ffe00" exact="0x2f7e00" last="true" dests="0"> 191 <src start="0" mask="0xf3"/> 192 <src start="3" mask="0xf3"/> 193 <mod name="atom_opc" start="6" size="3"> 194 <opt>ainc</opt> 195 <opt>adec</opt> 196 <opt>aumax1</opt> 197 <opt>asmax1</opt> 198 <opt>aor1</opt> 199 </mod> 200 </ins> 201 202 <ins name="*ATOM_C1_RETURN.i64" mask="0x7ffe00" exact="0x2f3e00" last="true" dests="0"> 203 <src start="0" mask="0xf3"/> 204 <src start="3" mask="0xf3"/> 205 <mod name="atom_opc" start="6" size="3"> 206 <opt>ainc</opt> 207 <opt>adec</opt> 208 <opt>aumax1</opt> 209 <opt>asmax1</opt> 210 <opt>aor1</opt> 211 </mod> 212 </ins> 213 214 <ins name="*ATOM_C_RETURN.i32" mask="0x7fe000" exact="0x2f6000" last="true" dests="0"> 215 <src start="0" mask="0xf3"/> 216 <src start="3" mask="0xf3"/> 217 <src start="6" mask="0xf7"/> 218 <mod name="atom_opc" start="9" size="4"> 219 <reserved/> 220 <reserved/> 221 <opt>aadd</opt> 222 <reserved/> 223 <reserved/> 224 <reserved/> 225 <reserved/> 226 <reserved/> 227 <opt>asmin</opt> 228 <opt>asmax</opt> 229 <opt>aumin</opt> 230 <opt>aumax</opt> 231 <opt>aand</opt> 232 <opt>aor</opt> 233 <opt>axor</opt> 234 </mod> 235 </ins> 236 237 <ins name="*ATOM_C_RETURN.i64" mask="0x7fe000" exact="0x2f2000" last="true" dests="0"> 238 <src start="0" mask="0xf3"/> 239 <src start="3" mask="0xf3"/> 240 <src start="6" mask="0xf7"/> 241 <mod name="atom_opc" start="9" size="4"> 242 <opt>aaddu</opt> 243 <opt>aadds</opt> 244 <opt>aadd</opt> 245 <reserved/> 246 <reserved/> 247 <reserved/> 248 <reserved/> 249 <reserved/> 250 <opt>asmin</opt> 251 <opt>asmax</opt> 252 <opt>aumin</opt> 253 <opt>aumax</opt> 254 <opt>aand</opt> 255 <opt>aor</opt> 256 <opt>axor</opt> 257 </mod> 258 </ins> 259 260 <ins name="*ATOM_POST.i32" mask="0x7ffc00" exact="0x6ee400"> 261 <src start="0" mask="0xfb"/> 262 <src start="3" mask="0xfb"/> 263 <mod name="atom_opc" start="6" size="4"> 264 <reserved/> 265 <reserved/> 266 <opt>aadd</opt> 267 <reserved/> 268 <reserved/> 269 <reserved/> 270 <reserved/> 271 <reserved/> 272 <opt>asmin</opt> 273 <opt>asmax</opt> 274 <opt>aumin</opt> 275 <opt>aumax</opt> 276 <opt>aand</opt> 277 <opt>aor</opt> 278 <opt>axor</opt> 279 </mod> 280 </ins> 281 282 <ins name="*ATOM_POST.i64" mask="0x7ffc00" exact="0x6ee000"> 283 <src start="0" mask="0xfb"/> 284 <src start="3" mask="0xfb"/> 285 <mod name="atom_opc" start="6" size="4"> 286 <opt>aaddu</opt> 287 <opt>aadds</opt> 288 <opt>aadd</opt> 289 <reserved/> 290 <reserved/> 291 <reserved/> 292 <reserved/> 293 <reserved/> 294 <opt>asmin</opt> 295 <opt>asmax</opt> 296 <opt>aumin</opt> 297 <opt>aumax</opt> 298 <opt>aand</opt> 299 <opt>aor</opt> 300 <opt>axor</opt> 301 </mod> 302 </ins> 303 304 <ins name="*ATOM_PRE.i64" mask="0x7fe000" exact="0x6ec000"> 305 <src start="0" mask="0xfb"/> 306 <src start="3" mask="0xfb"/> 307 <src start="6"/> 308 <mod name="atom_opc" start="9" size="4"> 309 <opt>aaddu</opt> 310 <opt>aadds</opt> 311 <opt>aadd</opt> 312 <reserved/> 313 <reserved/> 314 <reserved/> 315 <reserved/> 316 <reserved/> 317 <opt>asmin</opt> 318 <opt>asmax</opt> 319 <opt>aumin</opt> 320 <opt>aumax</opt> 321 <opt>aand</opt> 322 <opt>aor</opt> 323 <opt>axor</opt> 324 </mod> 325 </ins> 326 327 <ins name="*BITREV.i32" mask="0x7ffff8" exact="0x701fc0"> 328 <src start="0" mask="0xfb"/> 329 </ins> 330 331 <ins name="*CLZ.u32" mask="0x7ffff0" exact="0x701fd0"> 332 <src start="0" mask="0xfb"/> 333 <mod name="mask" start="3" size="1" opt="mask"/> 334 </ins> 335 336 <ins name="*CLZ.v2u16" mask="0x7fffc0" exact="0x701ec0"> 337 <src start="0" mask="0xfb"/> 338 <mod name="mask" start="3" size="1" opt="mask"/> 339 <mod name="swz0" start="4" size="2" default="h01"> 340 <opt>h00</opt> 341 <opt>h10</opt> 342 <opt>h01</opt> 343 <opt>h11</opt> 344 </mod> 345 </ins> 346 347 <ins name="*CLZ.v4u8" mask="0x7ffff0" exact="0x701f90"> 348 <src start="0" mask="0xfb"/> 349 <mod name="mask" start="3" size="1" opt="mask"/> 350 </ins> 351 352 <ins name="*CSEL.f32" mask="0x7fc000" exact="0x2e0000"> 353 <src start="0" mask="0xfb"/> 354 <src start="3" mask="0xfb"/> 355 <src start="6"/> 356 <src start="9"/> 357 <mod name="cmpf" size="3"> 358 <opt>eq</opt> 359 <opt>gt</opt> 360 <opt>ge</opt> 361 <opt>ne</opt> 362 <opt>lt</opt> 363 <opt>le</opt> 364 </mod> 365 <derived start="12" size="2"> 366 <eq left="cmpf" right="#eq"/> 367 <eq left="cmpf" right="#gt"/> 368 <eq left="cmpf" right="#ge"/> 369 <reserved/> 370 </derived> 371 <swap left="0" right="1"> 372 <or> 373 <eq left="cmpf" right="#lt"/> 374 <eq left="cmpf" right="#le"/> 375 </or> 376 <rewrite name="cmpf"> 377 <map from="lt" to="gt"/> 378 <map from="le" to="ge"/> 379 </rewrite> 380 </swap> 381 <swap left="2" right="3"> 382 <eq left="cmpf" right="#ne"/> 383 <rewrite name="cmpf"> 384 <map from="ne" to="eq"/> 385 </rewrite> 386 </swap> 387 </ins> 388 389 <ins name="*CSEL.i32" mask="0x7f8000" exact="0x2e0000"> 390 <src start="0" mask="0xfb"/> 391 <src start="3" mask="0xfb"/> 392 <src start="6"/> 393 <src start="9"/> 394 <mod name="cmpf" size="1"> 395 <opt>eq</opt> 396 <opt>ne</opt> 397 </mod> 398 <derived start="12" size="3"> 399 <reserved/> 400 <reserved/> 401 <reserved/> 402 <eq left="cmpf" right="#eq"/> 403 <reserved/> 404 <reserved/> 405 <reserved/> 406 <reserved/> 407 </derived> 408 <swap left="2" right="3"> 409 <eq left="cmpf" right="#ne"/> 410 <rewrite name="cmpf"> 411 <map from="ne" to="eq"/> 412 </rewrite> 413 </swap> 414 </ins> 415 416 <ins name="*CSEL.s32" mask="0x7fe000" exact="0x2e4000"> 417 <src start="0" mask="0xfb"/> 418 <src start="3" mask="0xfb"/> 419 <src start="6"/> 420 <src start="9"/> 421 <mod name="cmpf" size="2"> 422 <opt>gt</opt> 423 <opt>ge</opt> 424 <opt>lt</opt> 425 <opt>le</opt> 426 </mod> 427 <derived start="12" size="1"> 428 <eq left="cmpf" right="#gt"/> 429 <eq left="cmpf" right="#ge"/> 430 </derived> 431 <swap left="0" right="1"> 432 <or> 433 <eq left="cmpf" right="#lt"/> 434 <eq left="cmpf" right="#le"/> 435 </or> 436 <rewrite name="cmpf"> 437 <map from="lt" to="gt"/> 438 <map from="le" to="ge"/> 439 </rewrite> 440 </swap> 441 </ins> 442 443 <ins name="*CSEL.u32" mask="0x7fe000" exact="0x2e6000"> 444 <src start="0" mask="0xfb"/> 445 <src start="3" mask="0xfb"/> 446 <src start="6"/> 447 <src start="9"/> 448 <mod name="cmpf" size="2"> 449 <opt>gt</opt> 450 <opt>ge</opt> 451 <opt>lt</opt> 452 <opt>le</opt> 453 </mod> 454 <derived start="12" size="1"> 455 <eq left="cmpf" right="#gt"/> 456 <eq left="cmpf" right="#ge"/> 457 </derived> 458 <swap left="0" right="1"> 459 <or> 460 <eq left="cmpf" right="#lt"/> 461 <eq left="cmpf" right="#le"/> 462 </or> 463 <rewrite name="cmpf"> 464 <map from="lt" to="gt"/> 465 <map from="le" to="ge"/> 466 </rewrite> 467 </swap> 468 </ins> 469 470 <ins name="*CSEL.v2f16" mask="0x7fc000" exact="0x6e0000"> 471 <src start="0" mask="0xfb"/> 472 <src start="3" mask="0xfb"/> 473 <src start="6"/> 474 <src start="9"/> 475 <mod name="cmpf" size="3"> 476 <opt>eq</opt> 477 <opt>gt</opt> 478 <opt>ge</opt> 479 <opt>ne</opt> 480 <opt>lt</opt> 481 <opt>le</opt> 482 </mod> 483 <derived start="12" size="2"> 484 <eq left="cmpf" right="#eq"/> 485 <eq left="cmpf" right="#gt"/> 486 <eq left="cmpf" right="#ge"/> 487 <reserved/> 488 </derived> 489 <swap left="0" right="1"> 490 <or> 491 <eq left="cmpf" right="#lt"/> 492 <eq left="cmpf" right="#le"/> 493 </or> 494 <rewrite name="cmpf"> 495 <map from="lt" to="gt"/> 496 <map from="le" to="ge"/> 497 </rewrite> 498 </swap> 499 <swap left="2" right="3"> 500 <eq left="cmpf" right="#ne"/> 501 <rewrite name="cmpf"> 502 <map from="ne" to="eq"/> 503 </rewrite> 504 </swap> 505 </ins> 506 507 <ins name="*CSEL.v2i16" mask="0x7f8000" exact="0x6e0000"> 508 <src start="0" mask="0xfb"/> 509 <src start="3" mask="0xfb"/> 510 <src start="6"/> 511 <src start="9"/> 512 <mod name="cmpf" size="1"> 513 <opt>eq</opt> 514 <opt>ne</opt> 515 </mod> 516 <derived start="12" size="3"> 517 <reserved/> 518 <reserved/> 519 <reserved/> 520 <eq left="cmpf" right="#eq"/> 521 <reserved/> 522 <reserved/> 523 <reserved/> 524 <reserved/> 525 </derived> 526 <swap left="2" right="3"> 527 <eq left="cmpf" right="#ne"/> 528 <rewrite name="cmpf"> 529 <map from="ne" to="eq"/> 530 </rewrite> 531 </swap> 532 </ins> 533 534 <ins name="*CSEL.v2s16" mask="0x7fe000" exact="0x6e4000"> 535 <src start="0" mask="0xfb"/> 536 <src start="3" mask="0xfb"/> 537 <src start="6"/> 538 <src start="9"/> 539 <mod name="cmpf" size="2"> 540 <opt>gt</opt> 541 <opt>ge</opt> 542 <opt>lt</opt> 543 <opt>le</opt> 544 </mod> 545 <derived start="12" size="1"> 546 <eq left="cmpf" right="#gt"/> 547 <eq left="cmpf" right="#ge"/> 548 </derived> 549 <swap left="0" right="1"> 550 <or> 551 <eq left="cmpf" right="#lt"/> 552 <eq left="cmpf" right="#le"/> 553 </or> 554 <rewrite name="cmpf"> 555 <map from="lt" to="gt"/> 556 <map from="le" to="ge"/> 557 </rewrite> 558 </swap> 559 </ins> 560 561 <ins name="*CSEL.v2u16" mask="0x7fe000" exact="0x6e6000"> 562 <src start="0" mask="0xfb"/> 563 <src start="3" mask="0xfb"/> 564 <src start="6"/> 565 <src start="9"/> 566 <mod name="cmpf" size="2"> 567 <opt>gt</opt> 568 <opt>ge</opt> 569 <opt>lt</opt> 570 <opt>le</opt> 571 </mod> 572 <derived start="12" size="1"> 573 <eq left="cmpf" right="#gt"/> 574 <eq left="cmpf" right="#ge"/> 575 </derived> 576 <swap left="0" right="1"> 577 <or> 578 <eq left="cmpf" right="#lt"/> 579 <eq left="cmpf" right="#le"/> 580 </or> 581 <rewrite name="cmpf"> 582 <map from="lt" to="gt"/> 583 <map from="le" to="ge"/> 584 </rewrite> 585 </swap> 586 </ins> 587 588 <ins name="*CUBEFACE1" mask="0x7ffc00" exact="0x706800"> 589 <src start="0" mask="0xfb"/> 590 <src start="3" mask="0xfb"/> 591 <src start="6"/> 592 <mod name="neg0" size="1" opt="neg"/> 593 <mod name="neg1" size="1" opt="neg"/> 594 <mod name="neg2" size="1" opt="neg"/> 595 <derived start="9" size="1"> 596 <and> 597 <eq left="neg0" right="#none"/> 598 <eq left="neg1" right="#none"/> 599 <eq left="neg2" right="#none"/> 600 </and> 601 <and> 602 <eq left="neg0" right="#neg"/> 603 <eq left="neg1" right="#neg"/> 604 <eq left="neg2" right="#neg"/> 605 </and> 606 </derived> 607 </ins> 608 609 <ins name="*DTSEL_IMM" mask="0x7fffe0" exact="0x70f3e0"> 610 <src start="0" mask="0xfb"/> 611 <mod name="table" start="3" size="2"> 612 <opt>attribute_1</opt> 613 <opt>attribute_2</opt> 614 <opt>none</opt> <!-- actually reserved, used as sentinel --> 615 <opt>flat</opt> 616 </mod> 617 </ins> 618 619 <ins name="*F16_TO_F32" mask="0x7ffff0" exact="0x700d10"> 620 <src start="0" mask="0xfb"/> 621 <mod name="lane0" start="3" size="1" default="h0"> 622 <opt>h0</opt> 623 <opt>h1</opt> 624 </mod> 625 </ins> 626 627 <ins name="*FADD.f32" mask="0x7e0000" exact="0x2c0000"> 628 <src start="0" mask="0xfb"/> 629 <src start="3" mask="0xfb"/> 630 <mod name="abs1" start="6" size="1" opt="abs"/> 631 <mod name="neg0" start="7" size="1" opt="neg"/> 632 <mod name="neg1" start="8" size="1" opt="neg"/> 633 <mod name="abs0" start="12" size="1" opt="abs"/> 634 <mod name="round" start="13" size="2"> 635 <opt>none</opt> 636 <opt>rtp</opt> 637 <opt>rtn</opt> 638 <opt>rtz</opt> 639 </mod> 640 <mod name="clamp" start="15" size="2"> 641 <opt>none</opt> 642 <opt>clamp_0_inf</opt> 643 <opt>clamp_m1_1</opt> 644 <opt>clamp_0_1</opt> 645 </mod> 646 <mod name="widen0" size="2"> 647 <opt>none</opt> 648 <opt>h0</opt> 649 <opt>h1</opt> 650 </mod> 651 <mod name="widen1" size="2"> 652 <opt>none</opt> 653 <opt>h0</opt> 654 <opt>h1</opt> 655 </mod> 656 <derived start="9" size="3"> 657 <and> 658 <eq left="widen0" right="#none"/> 659 <eq left="widen1" right="#none"/> 660 </and> 661 <and> 662 <eq left="widen0" right="#none"/> 663 <eq left="widen1" right="#h0"/> 664 </and> 665 <and> 666 <eq left="widen0" right="#none"/> 667 <eq left="widen1" right="#h1"/> 668 </and> 669 <and> 670 <eq left="widen0" right="#h0"/> 671 <eq left="widen1" right="#h0"/> 672 </and> 673 <and> 674 <eq left="widen0" right="#h0"/> 675 <eq left="widen1" right="#h1"/> 676 </and> 677 <and> 678 <eq left="widen0" right="#h1"/> 679 <eq left="widen1" right="#h1"/> 680 </and> 681 <and> 682 <eq left="widen0" right="#h0"/> 683 <eq left="widen1" right="#none"/> 684 </and> 685 <and> 686 <eq left="widen0" right="#h1"/> 687 <eq left="widen1" right="#none"/> 688 </and> 689 </derived> 690 <swap left="0" right="1"> 691 <and> 692 <eq left="widen0" right="#h1"/> 693 <eq left="widen1" right="#h0"/> 694 </and> 695 </swap> 696 </ins> 697 698 <ins name="*FADD.v2f16" mask="0x7e0000" exact="0x6c0000"> 699 <src start="0" mask="0xfb"/> 700 <src start="3" mask="0xfb"/> 701 <mod name="abs0" size="1" opt="abs"/> 702 <mod name="abs1" size="1" opt="abs"/> 703 <mod name="neg0" start="7" size="1" opt="neg"/> 704 <mod name="neg1" start="8" size="1" opt="neg"/> 705 <mod name="swz0" start="9" size="2" default="h01"> 706 <opt>h00</opt> 707 <opt>h10</opt> 708 <opt>h01</opt> 709 <opt>h11</opt> 710 </mod> 711 <mod name="swz1" start="11" size="2" default="h01"> 712 <opt>h00</opt> 713 <opt>h10</opt> 714 <opt>h01</opt> 715 <opt>h11</opt> 716 </mod> 717 <mod name="round" start="13" size="2"> 718 <opt>none</opt> 719 <opt>rtp</opt> 720 <opt>rtn</opt> 721 <opt>rtz</opt> 722 </mod> 723 <mod name="clamp" start="15" size="2"> 724 <opt>none</opt> 725 <opt>clamp_0_inf</opt> 726 <opt>clamp_m1_1</opt> 727 <opt>clamp_0_1</opt> 728 </mod> 729 <derived start="6" size="1"> 730 <or> 731 <and> 732 <eq left="abs0" right="#abs"/> 733 <eq left="abs1" right="#none"/> 734 <eq left="ordering" right="#gt"/> 735 </and> 736 <and> 737 <eq left="abs0" right="#none"/> 738 <eq left="abs1" right="#none"/> 739 <neq left="ordering" right="#gt"/> 740 </and> 741 </or> 742 <or> 743 <and> 744 <eq left="abs0" right="#abs"/> 745 <eq left="abs1" right="#abs"/> 746 <eq left="ordering" right="#gt"/> 747 </and> 748 <and> 749 <eq left="abs0" right="#abs"/> 750 <eq left="abs1" right="#none"/> 751 <neq left="ordering" right="#gt"/> 752 </and> 753 </or> 754 </derived> 755 <swap left="0" right="1"> 756 <or> 757 <and> 758 <eq left="abs0" right="#none"/> 759 <eq left="ordering" right="#gt"/> 760 </and> 761 <and> 762 <eq left="abs1" right="#abs"/> 763 <neq left="ordering" right="#gt"/> 764 </and> 765 </or> 766 </swap> 767 </ins> 768 769 <ins name="*FADD_LSCALE.f32" mask="0x7ffc00" exact="0x70f400"> 770 <src start="0" mask="0xfb"/> 771 <src start="3" mask="0xfb"/> 772 <mod name="abs0" start="6" size="1" opt="abs"/> 773 <mod name="neg0" start="7" size="1" opt="neg"/> 774 <mod name="abs1" start="8" size="1" opt="abs"/> 775 <mod name="neg1" start="9" size="1" opt="neg"/> 776 </ins> 777 778 <ins name="*FCMP.f32" mask="0x7c0000" exact="0x240000"> 779 <src start="0" mask="0xfb"/> 780 <src start="3" mask="0xfb"/> 781 <mod name="widen0" size="2"> 782 <opt>none</opt> 783 <opt>h0</opt> 784 <opt>h1</opt> 785 </mod> 786 <mod name="widen1" size="2"> 787 <opt>none</opt> 788 <opt>h0</opt> 789 <opt>h1</opt> 790 </mod> 791 <mod name="abs1" start="6" size="1" opt="abs"/> 792 <mod name="neg0" start="7" size="1" opt="neg"/> 793 <mod name="neg1" start="8" size="1" opt="neg"/> 794 <mod name="abs0" start="12" size="1" opt="abs"/> 795 <mod name="cmpf" start="13" size="3"> 796 <opt>eq</opt> 797 <opt>gt</opt> 798 <opt>ge</opt> 799 <opt>ne</opt> 800 <opt>lt</opt> 801 <opt>le</opt> 802 <opt>gtlt</opt> 803 <opt>total</opt> 804 </mod> 805 <mod name="result_type" start="16" size="2" default="i1"> 806 <opt>i1</opt> 807 <opt>f1</opt> 808 <opt>m1</opt> 809 </mod> 810 <derived start="9" size="3"> 811 <and> 812 <eq left="widen0" right="#none"/> 813 <eq left="widen1" right="#none"/> 814 </and> 815 <and> 816 <eq left="widen0" right="#none"/> 817 <eq left="widen1" right="#h0"/> 818 </and> 819 <and> 820 <eq left="widen0" right="#none"/> 821 <eq left="widen1" right="#h1"/> 822 </and> 823 <and> 824 <eq left="widen0" right="#h0"/> 825 <eq left="widen1" right="#h0"/> 826 </and> 827 <and> 828 <eq left="widen0" right="#h0"/> 829 <eq left="widen1" right="#h1"/> 830 </and> 831 <and> 832 <eq left="widen0" right="#h1"/> 833 <eq left="widen1" right="#h1"/> 834 </and> 835 <and> 836 <eq left="widen0" right="#h0"/> 837 <eq left="widen1" right="#none"/> 838 </and> 839 <and> 840 <eq left="widen0" right="#h1"/> 841 <eq left="widen1" right="#none"/> 842 </and> 843 </derived> 844 <swap left="0" right="1"> 845 <and> 846 <eq left="widen0" right="#h1"/> 847 <eq left="widen1" right="#h0"/> 848 </and> 849 <rewrite name="cmpf"> 850 <map from="lt" to="gt"/> 851 <map from="le" to="ge"/> 852 <map from="gt" to="lt"/> 853 <map from="ge" to="le"/> 854 </rewrite> 855 </swap> 856 </ins> 857 858 <ins name="*FCMP.v2f16" mask="0x7c0000" exact="0x640000"> 859 <src start="0" mask="0xfb"/> 860 <src start="3" mask="0xfb"/> 861 <mod name="abs0" size="1" opt="abs"/> 862 <mod name="abs1" size="1" opt="abs"/> 863 <mod name="cmpf" size="3"> 864 <opt>eq</opt> 865 <opt>gt</opt> 866 <opt>ge</opt> 867 <opt>ne</opt> 868 <opt>lt</opt> 869 <opt>le</opt> 870 <opt>gtlt</opt> 871 <opt>total</opt> 872 </mod> 873 <mod name="neg0" start="7" size="1" opt="neg"/> 874 <mod name="neg1" start="8" size="1" opt="neg"/> 875 <mod name="swz0" start="9" size="2" default="h01"> 876 <opt>h00</opt> 877 <opt>h10</opt> 878 <opt>h01</opt> 879 <opt>h11</opt> 880 </mod> 881 <mod name="swz1" start="11" size="2" default="h01"> 882 <opt>h00</opt> 883 <opt>h10</opt> 884 <opt>h01</opt> 885 <opt>h11</opt> 886 </mod> 887 <mod name="result_type" start="16" size="2" default="i1"> 888 <opt>i1</opt> 889 <opt>f1</opt> 890 <opt>m1</opt> 891 </mod> 892 <derived start="6" size="1"> 893 <or> 894 <and> 895 <eq left="abs0" right="#abs"/> 896 <eq left="abs1" right="#none"/> 897 <eq left="ordering" right="#gt"/> 898 </and> 899 <and> 900 <eq left="abs0" right="#none"/> 901 <eq left="abs1" right="#none"/> 902 <neq left="ordering" right="#gt"/> 903 </and> 904 </or> 905 <or> 906 <and> 907 <eq left="abs0" right="#abs"/> 908 <eq left="abs1" right="#abs"/> 909 <eq left="ordering" right="#gt"/> 910 </and> 911 <and> 912 <eq left="abs0" right="#abs"/> 913 <eq left="abs1" right="#none"/> 914 <neq left="ordering" right="#gt"/> 915 </and> 916 </or> 917 </derived> 918 <derived start="13" size="3"> 919 <eq left="cmpf" right="#eq"/> 920 <eq left="cmpf" right="#gt"/> 921 <eq left="cmpf" right="#ge"/> 922 <eq left="cmpf" right="#ne"/> 923 <eq left="cmpf" right="#lt"/> 924 <eq left="cmpf" right="#le"/> 925 <eq left="cmpf" right="#gtlt"/> 926 <and> 927 <eq left="cmpf" right="#total"/> 928 <eq left="abs0" right="#none"/> 929 <eq left="abs1" right="#none"/> 930 </and> 931 </derived> 932 <swap left="0" right="1"> 933 <or> 934 <and> 935 <eq left="abs0" right="#none"/> 936 <eq left="ordering" right="#gt"/> 937 </and> 938 <and> 939 <eq left="abs1" right="#abs"/> 940 <neq left="ordering" right="#gt"/> 941 </and> 942 </or> 943 <rewrite name="cmpf"> 944 <map from="lt" to="gt"/> 945 <map from="le" to="ge"/> 946 <map from="gt" to="lt"/> 947 <map from="ge" to="le"/> 948 </rewrite> 949 </swap> 950 </ins> 951 952 <ins name="*FLSHIFT_DOUBLE.i32" mask="0x7ff800" exact="0x33f800"> 953 <src start="0" mask="0xfb"/> 954 <src start="3" mask="0xfb"/> 955 <src start="6"/> 956 <mod name="bytes2" start="9" size="1" opt="bytes2"/> 957 <mod name="lane2" start="10" size="1" default="b0"> 958 <opt>b0</opt> 959 <opt>b2</opt> 960 </mod> 961 </ins> 962 963 <ins name="*FMA.f32" mask="0x600000" exact="0x0"> 964 <src start="0" mask="0xfb"/> 965 <src start="3" mask="0xfb"/> 966 <src start="6"/> 967 <mod name="widen0" size="2"> 968 <opt>none</opt> 969 <opt>h0</opt> 970 <opt>h1</opt> 971 </mod> 972 <mod name="widen1" size="2"> 973 <opt>none</opt> 974 <opt>h0</opt> 975 <opt>h1</opt> 976 </mod> 977 <mod name="neg0" size="1" opt="neg"/> 978 <mod name="neg1" size="1" opt="neg"/> 979 <mod name="abs0" start="12" size="1" opt="abs"/> 980 <mod name="round" start="13" size="2"> 981 <opt>none</opt> 982 <opt>rtp</opt> 983 <opt>rtn</opt> 984 <opt>rtz</opt> 985 </mod> 986 <mod name="clamp" start="15" size="2"> 987 <opt>none</opt> 988 <opt>clamp_0_inf</opt> 989 <opt>clamp_m1_1</opt> 990 <opt>clamp_0_1</opt> 991 </mod> 992 <mod name="abs1" start="19" size="1" opt="abs"/> 993 <mod name="neg2" start="18" size="1" opt="neg"/> 994 <mod name="abs2" start="20" size="1" opt="abs"/> 995 <derived start="9" size="3"> 996 <and> 997 <eq left="widen0" right="#none"/> 998 <eq left="widen1" right="#none"/> 999 </and> 1000 <and> 1001 <eq left="widen0" right="#none"/> 1002 <eq left="widen1" right="#h0"/> 1003 </and> 1004 <and> 1005 <eq left="widen0" right="#none"/> 1006 <eq left="widen1" right="#h1"/> 1007 </and> 1008 <and> 1009 <eq left="widen0" right="#h0"/> 1010 <eq left="widen1" right="#h0"/> 1011 </and> 1012 <and> 1013 <eq left="widen0" right="#h0"/> 1014 <eq left="widen1" right="#h1"/> 1015 </and> 1016 <and> 1017 <eq left="widen0" right="#h1"/> 1018 <eq left="widen1" right="#h1"/> 1019 </and> 1020 <and> 1021 <eq left="widen0" right="#h0"/> 1022 <eq left="widen1" right="#none"/> 1023 </and> 1024 <and> 1025 <eq left="widen0" right="#h1"/> 1026 <eq left="widen1" right="#none"/> 1027 </and> 1028 </derived> 1029 <derived start="17" size="1"> 1030 <or> 1031 <and> 1032 <eq left="neg0" right="#none"/> 1033 <eq left="neg1" right="#none"/> 1034 </and> 1035 <and alias="true"> 1036 <eq left="neg0" right="#neg"/> 1037 <eq left="neg1" right="#neg"/> 1038 </and> 1039 </or> 1040 <or> 1041 <and> 1042 <eq left="neg0" right="#none"/> 1043 <eq left="neg1" right="#neg"/> 1044 </and> 1045 <and alias="true"> 1046 <eq left="neg0" right="#neg"/> 1047 <eq left="neg1" right="#none"/> 1048 </and> 1049 </or> 1050 </derived> 1051 <swap left="0" right="1"> 1052 <and> 1053 <eq left="widen0" right="#h1"/> 1054 <eq left="widen1" right="#h0"/> 1055 </and> 1056 </swap> 1057 </ins> 1058 1059 <ins name="*FMA.v2f16" mask="0x600000" exact="0x400000"> 1060 <src start="0" mask="0xfb"/> 1061 <src start="3" mask="0xfb"/> 1062 <src start="6"/> 1063 <mod name="neg0" size="1" opt="neg"/> 1064 <mod name="neg1" size="1" opt="neg"/> 1065 <mod name="swz0" start="9" size="2" default="h01"> 1066 <opt>h00</opt> 1067 <opt>h10</opt> 1068 <opt>h01</opt> 1069 <opt>h11</opt> 1070 </mod> 1071 <mod name="swz1" start="11" size="2" default="h01"> 1072 <opt>h00</opt> 1073 <opt>h10</opt> 1074 <opt>h01</opt> 1075 <opt>h11</opt> 1076 </mod> 1077 <mod name="round" start="13" size="2"> 1078 <opt>none</opt> 1079 <opt>rtp</opt> 1080 <opt>rtn</opt> 1081 <opt>rtz</opt> 1082 </mod> 1083 <mod name="clamp" start="15" size="2"> 1084 <opt>none</opt> 1085 <opt>clamp_0_inf</opt> 1086 <opt>clamp_m1_1</opt> 1087 <opt>clamp_0_1</opt> 1088 </mod> 1089 <mod name="neg2" start="18" size="1" opt="neg"/> 1090 <mod name="swz2" start="19" size="2" default="h01"> 1091 <opt>h00</opt> 1092 <opt>h10</opt> 1093 <opt>h01</opt> 1094 <opt>h11</opt> 1095 </mod> 1096 <derived start="17" size="1"> 1097 <or> 1098 <and> 1099 <eq left="neg0" right="#none"/> 1100 <eq left="neg1" right="#none"/> 1101 </and> 1102 <and alias="true"> 1103 <eq left="neg0" right="#neg"/> 1104 <eq left="neg1" right="#neg"/> 1105 </and> 1106 </or> 1107 <or> 1108 <and> 1109 <eq left="neg0" right="#none"/> 1110 <eq left="neg1" right="#neg"/> 1111 </and> 1112 <and alias="true"> 1113 <eq left="neg0" right="#neg"/> 1114 <eq left="neg1" right="#none"/> 1115 </and> 1116 </or> 1117 </derived> 1118 </ins> 1119 1120 <ins name="*FMA_RSCALE.f32" mask="0x7c0000" exact="0x280000"> 1121 <src start="0" mask="0xfb"/> 1122 <src start="3" mask="0xfb"/> 1123 <src start="6"/> 1124 <src start="9"/> 1125 <mod name="round" size="1" opt="rtz"/> 1126 <mod name="clamp" size="2"> 1127 <opt>none</opt> 1128 <opt>clamp_0_inf</opt> 1129 <opt>clamp_m1_1</opt> 1130 <opt>clamp_0_1</opt> 1131 </mod> 1132 <mod name="neg0" size="1" opt="neg"/> 1133 <mod name="neg1" size="1" opt="neg"/> 1134 <mod name="abs0" start="15" size="1" opt="abs"/> 1135 <mod name="neg2" start="17" size="1" opt="neg"/> 1136 <mod name="special" size="2"> 1137 <opt>none</opt> 1138 <opt>n</opt> 1139 <opt>left</opt> 1140 <opt>scale16</opt> 1141 </mod> 1142 <derived start="16" size="1"> 1143 <or> 1144 <and> 1145 <eq left="neg0" right="#none"/> 1146 <eq left="neg1" right="#none"/> 1147 </and> 1148 <and alias="true"> 1149 <eq left="neg0" right="#neg"/> 1150 <eq left="neg1" right="#neg"/> 1151 </and> 1152 </or> 1153 <or> 1154 <and> 1155 <eq left="neg0" right="#none"/> 1156 <eq left="neg1" right="#neg"/> 1157 </and> 1158 <and alias="true"> 1159 <eq left="neg0" right="#neg"/> 1160 <eq left="neg1" right="#none"/> 1161 </and> 1162 </or> 1163 </derived> 1164 <derived start="12" size="3"> 1165 <and> 1166 <eq left="clamp" right="#none"/> 1167 <eq left="special" right="#none"/> 1168 <eq left="round" right="#none"/> 1169 </and> 1170 <and> 1171 <eq left="clamp" right="#clamp_0_inf"/> 1172 <eq left="special" right="#none"/> 1173 <eq left="round" right="#none"/> 1174 </and> 1175 <and> 1176 <eq left="clamp" right="#clamp_m1_1"/> 1177 <eq left="special" right="#none"/> 1178 <eq left="round" right="#none"/> 1179 </and> 1180 <and> 1181 <eq left="clamp" right="#clamp_0_1"/> 1182 <eq left="special" right="#none"/> 1183 <eq left="round" right="#none"/> 1184 </and> 1185 <and> 1186 <eq left="clamp" right="#none"/> 1187 <eq left="special" right="#n"/> 1188 <eq left="round" right="#none"/> 1189 </and> 1190 <and> 1191 <eq left="clamp" right="#none"/> 1192 <eq left="special" right="#n"/> 1193 <eq left="round" right="#rtz"/> 1194 </and> 1195 <and> 1196 <eq left="clamp" right="#none"/> 1197 <eq left="special" right="#scale16"/> 1198 <eq left="round" right="#none"/> 1199 </and> 1200 <and> 1201 <eq left="clamp" right="#none"/> 1202 <eq left="special" right="#left"/> 1203 <eq left="round" right="#none"/> 1204 </and> 1205 </derived> 1206 </ins> 1207 1208 <ins name="*FMA_RSCALE.v2f16" mask="0x7c0000" exact="0x680000"> 1209 <src start="0" mask="0xfb"/> 1210 <src start="3" mask="0xfb"/> 1211 <src start="6"/> 1212 <src start="9"/> 1213 <mod name="round" size="1" opt="rtz"/> 1214 <mod name="clamp" size="2"> 1215 <opt>none</opt> 1216 <opt>clamp_0_inf</opt> 1217 <opt>clamp_m1_1</opt> 1218 <opt>clamp_0_1</opt> 1219 </mod> 1220 <mod name="neg0" size="1" opt="neg"/> 1221 <mod name="neg1" size="1" opt="neg"/> 1222 <mod name="abs0" start="15" size="1" opt="abs"/> 1223 <mod name="neg2" start="17" size="1" opt="neg"/> 1224 <mod name="special" size="2"> 1225 <opt>none</opt> 1226 <opt>n</opt> 1227 <opt>left</opt> 1228 </mod> 1229 <derived start="16" size="1"> 1230 <or> 1231 <and> 1232 <eq left="neg0" right="#none"/> 1233 <eq left="neg1" right="#none"/> 1234 </and> 1235 <and alias="true"> 1236 <eq left="neg0" right="#neg"/> 1237 <eq left="neg1" right="#neg"/> 1238 </and> 1239 </or> 1240 <or> 1241 <and> 1242 <eq left="neg0" right="#none"/> 1243 <eq left="neg1" right="#neg"/> 1244 </and> 1245 <and alias="true"> 1246 <eq left="neg0" right="#neg"/> 1247 <eq left="neg1" right="#none"/> 1248 </and> 1249 </or> 1250 </derived> 1251 <derived start="12" size="3"> 1252 <and> 1253 <eq left="clamp" right="#none"/> 1254 <eq left="special" right="#none"/> 1255 <eq left="round" right="#none"/> 1256 </and> 1257 <and> 1258 <eq left="clamp" right="#clamp_0_inf"/> 1259 <eq left="special" right="#none"/> 1260 <eq left="round" right="#none"/> 1261 </and> 1262 <and> 1263 <eq left="clamp" right="#clamp_m1_1"/> 1264 <eq left="special" right="#none"/> 1265 <eq left="round" right="#none"/> 1266 </and> 1267 <and> 1268 <eq left="clamp" right="#clamp_0_1"/> 1269 <eq left="special" right="#none"/> 1270 <eq left="round" right="#none"/> 1271 </and> 1272 <and> 1273 <eq left="clamp" right="#none"/> 1274 <eq left="special" right="#n"/> 1275 <eq left="round" right="#none"/> 1276 </and> 1277 <and> 1278 <eq left="clamp" right="#none"/> 1279 <eq left="special" right="#n"/> 1280 <eq left="round" right="#rtz"/> 1281 </and> 1282 <reserved/> 1283 <and> 1284 <eq left="clamp" right="#none"/> 1285 <eq left="special" right="#left"/> 1286 <eq left="round" right="#none"/> 1287 </and> 1288 </derived> 1289 </ins> 1290 1291 <ins name="*FMUL_CSLICE" mask="0x7ffe00" exact="0x70d000"> 1292 <src start="0" mask="0xfb"/> 1293 <src start="3" mask="0xfb"/> 1294 <mod name="lane0" start="6" size="1" default="h0"> 1295 <opt>h0</opt> 1296 <opt>h1</opt> 1297 </mod> 1298 <mod name="abs0" start="7" size="1" opt="abs"/> 1299 <mod name="neg0" start="8" size="1" opt="neg"/> 1300 </ins> 1301 1302 <ins name="*FMUL_SLICE.f32" mask="0x7fffc0" exact="0x70cb40"> 1303 <src start="0" mask="0xfb"/> 1304 <src start="3" mask="0xfb"/> 1305 </ins> 1306 1307 <ins name="*FREXPE.f32"> 1308 <src start="0" mask="0xfb"/> 1309 <mod name="neg0" size="1" opt="neg"/> 1310 <mod name="sqrt" size="1" opt="sqrt"/> 1311 <mod name="log" size="1" opt="log"/> 1312 <mod name="widen0" start="3" size="2"> 1313 <reserved/> 1314 <opt>none</opt> 1315 <opt>h0</opt> 1316 <opt>h1</opt> 1317 </mod> 1318 <encoding mask="0x7ffea0" exact="0x701c20"> 1319 <eq left="log" right="#none"/> 1320 <copy name="neg0" start="6"/> 1321 <copy name="sqrt" start="8"/> 1322 </encoding> 1323 <encoding mask="0x7fffe0" exact="0x701e20"> 1324 <and> 1325 <eq left="log" right="#log"/> 1326 <eq left="sqrt" right="#none"/> 1327 <eq left="neg0" right="#none"/> 1328 </and> 1329 </encoding> 1330 </ins> 1331 1332 <ins name="*FREXPE.v2f16"> 1333 <src start="0" mask="0xfb"/> 1334 <mod name="neg0" size="1" opt="neg"/> 1335 <mod name="sqrt" size="1" opt="sqrt"/> 1336 <mod name="log" size="1" opt="log"/> 1337 <mod name="swz0" start="3" size="2" default="h01"> 1338 <opt>h00</opt> 1339 <opt>h10</opt> 1340 <opt>h01</opt> 1341 <opt>h11</opt> 1342 </mod> 1343 <encoding mask="0x7ffea0" exact="0x701c00"> 1344 <eq left="log" right="#none"/> 1345 <copy name="neg0" start="6"/> 1346 <copy name="sqrt" start="8"/> 1347 </encoding> 1348 <encoding mask="0x7fffe0" exact="0x701e00"> 1349 <and> 1350 <eq left="log" right="#log"/> 1351 <eq left="sqrt" right="#none"/> 1352 <eq left="neg0" right="#none"/> 1353 </and> 1354 </encoding> 1355 </ins> 1356 1357 <ins name="*FREXPM.f32"> 1358 <src start="0" mask="0xfb"/> 1359 <mod name="abs0" start="6" size="1" opt="abs"/> 1360 <mod name="sqrt" size="1" opt="sqrt"/> 1361 <mod name="log" size="1" opt="log"/> 1362 <mod name="widen0" start="3" size="2"> 1363 <reserved/> 1364 <opt>none</opt> 1365 <opt>h0</opt> 1366 <opt>h1</opt> 1367 </mod> 1368 <mod name="neg0" size="1" opt="neg"/> 1369 <encoding mask="0x7fff20" exact="0x701b20"> 1370 <and> 1371 <eq left="log" right="#none"/> 1372 <eq left="neg0" right="#none"/> 1373 </and> 1374 <copy name="sqrt" start="7"/> 1375 </encoding> 1376 <encoding mask="0x7fff20" exact="0x701a20"> 1377 <and> 1378 <eq left="log" right="#log"/> 1379 <eq left="sqrt" right="#none"/> 1380 </and> 1381 <copy name="neg0" start="7"/> 1382 </encoding> 1383 </ins> 1384 1385 <ins name="*FREXPM.v2f16"> 1386 <src start="0" mask="0xfb"/> 1387 <mod name="abs0" start="6" size="1" opt="abs"/> 1388 <mod name="sqrt" size="1" opt="sqrt"/> 1389 <mod name="log" size="1" opt="log"/> 1390 <mod name="swz0" start="3" size="2" default="h01"> 1391 <opt>h00</opt> 1392 <opt>h10</opt> 1393 <opt>h01</opt> 1394 <opt>h11</opt> 1395 </mod> 1396 <mod name="neg0" size="1" opt="neg"/> 1397 <encoding mask="0x7fff20" exact="0x701b00"> 1398 <and> 1399 <eq left="log" right="#none"/> 1400 <eq left="neg0" right="#none"/> 1401 </and> 1402 <copy name="sqrt" start="7"/> 1403 </encoding> 1404 <encoding mask="0x7fff20" exact="0x701a00"> 1405 <and> 1406 <eq left="log" right="#log"/> 1407 <eq left="sqrt" right="#none"/> 1408 </and> 1409 <copy name="neg0" start="7"/> 1410 </encoding> 1411 </ins> 1412 1413 <ins name="*FROUND.f32"> 1414 <src start="0" mask="0xfb"/> 1415 <mod name="abs0" start="7" size="1" opt="abs"/> 1416 <mod name="neg0" start="8" size="1" opt="neg"/> 1417 <mod name="widen0" start="3" size="2"> 1418 <reserved/> 1419 <opt>none</opt> 1420 <opt>h0</opt> 1421 <opt>h1</opt> 1422 </mod> 1423 <mod name="round" size="3"> 1424 <opt>none</opt> 1425 <opt>rtp</opt> 1426 <opt>rtn</opt> 1427 <opt>rtz</opt> 1428 <opt>rtna</opt> 1429 </mod> 1430 <encoding mask="0x7ff860" exact="0x70c020"> 1431 <neq left="round" right="#rtna"/> 1432 <derived start="9" size="2"> 1433 <eq left="round" right="#none"/> 1434 <eq left="round" right="#rtp"/> 1435 <eq left="round" right="#rtn"/> 1436 <eq left="round" right="#rtz"/> 1437 </derived> 1438 </encoding> 1439 <encoding mask="0x7ffe60" exact="0x707620"> 1440 <eq left="round" right="#rtna"/> 1441 </encoding> 1442 </ins> 1443 1444 <ins name="*FROUND.v2f16"> 1445 <src start="0" mask="0xfb"/> 1446 <mod name="abs0" start="7" size="1" opt="abs"/> 1447 <mod name="neg0" start="8" size="1" opt="neg"/> 1448 <mod name="swz0" start="3" size="2" default="h01"> 1449 <opt>h00</opt> 1450 <opt>h10</opt> 1451 <opt>h01</opt> 1452 <opt>h11</opt> 1453 </mod> 1454 <mod name="round" size="3"> 1455 <opt>none</opt> 1456 <opt>rtp</opt> 1457 <opt>rtn</opt> 1458 <opt>rtz</opt> 1459 <opt>rtna</opt> 1460 </mod> 1461 <encoding mask="0x7ff860" exact="0x70c000"> 1462 <neq left="round" right="#rtna"/> 1463 <derived start="9" size="2"> 1464 <eq left="round" right="#none"/> 1465 <eq left="round" right="#rtp"/> 1466 <eq left="round" right="#rtn"/> 1467 <eq left="round" right="#rtz"/> 1468 </derived> 1469 </encoding> 1470 <encoding mask="0x7ffe60" exact="0x707600"> 1471 <eq left="round" right="#rtna"/> 1472 </encoding> 1473 </ins> 1474 1475 <ins name="*FRSHIFT_DOUBLE.i32" mask="0x7ff800" exact="0x33f000"> 1476 <src start="0" mask="0xfb"/> 1477 <src start="3" mask="0xfb"/> 1478 <src start="6"/> 1479 <mod name="bytes2" start="9" size="1" opt="bytes2"/> 1480 <mod name="lane2" start="10" size="1" default="b0"> 1481 <opt>b0</opt> 1482 <opt>b2</opt> 1483 </mod> 1484 </ins> 1485 1486 <ins name="*IADDC.i32" mask="0x7ffe00" exact="0x27fc00"> 1487 <src start="0" mask="0xfb"/> 1488 <src start="3" mask="0xfb"/> 1489 <src start="6"/> 1490 </ins> 1491 1492 <ins name="*IDP.v4i8" mask="0x7ff9c0" exact="0x73e8c0"> 1493 <src start="0" mask="0xfb"/> 1494 <src start="3" mask="0xfb"/> 1495 <mod name="sign0" start="9" size="1"> 1496 <opt>zext</opt> 1497 <opt>sext</opt> 1498 </mod> 1499 <mod name="sign1" start="10" size="1"> 1500 <opt>zext</opt> 1501 <opt>sext</opt> 1502 </mod> 1503 </ins> 1504 1505 <ins name="*IMUL.i32"> 1506 <src start="0" mask="0xfb"/> 1507 <src start="3" mask="0xfb"/> 1508 <mod name="widen1" size="3"> 1509 <opt>none</opt> 1510 <opt>h0</opt> 1511 <opt>h1</opt> 1512 <opt>b0</opt> 1513 <opt>b1</opt> 1514 <opt>b2</opt> 1515 <opt>b3</opt> 1516 </mod> 1517 <mod name="extend" size="2"> 1518 <opt>none</opt> 1519 <opt>sext</opt> 1520 <opt>zext</opt> 1521 </mod> 1522 <encoding mask="0x7fffc0" exact="0x73c0c0"> 1523 <and> 1524 <eq left="extend" right="#none"/> 1525 <eq left="widen1" right="#none"/> 1526 </and> 1527 </encoding> 1528 <encoding mask="0x7ff9c0" exact="0x73c8c0"> 1529 <and> 1530 <neq left="extend" right="#none"/> 1531 <or> 1532 <eq left="widen1" right="#h0"/> 1533 <eq left="widen1" right="#h1"/> 1534 </or> 1535 </and> 1536 <derived start="9" size="1"> 1537 <eq left="widen1" right="#h0"/> 1538 <eq left="widen1" right="#h1"/> 1539 </derived> 1540 <derived start="10" size="1"> 1541 <eq left="extend" right="#zext"/> 1542 <eq left="extend" right="#sext"/> 1543 </derived> 1544 </encoding> 1545 <encoding mask="0x7ff1c0" exact="0x73b0c0"> 1546 <and> 1547 <neq left="extend" right="#none"/> 1548 <or> 1549 <eq left="widen1" right="#b0"/> 1550 <eq left="widen1" right="#b1"/> 1551 <eq left="widen1" right="#b2"/> 1552 <eq left="widen1" right="#b3"/> 1553 </or> 1554 </and> 1555 <derived start="9" size="2"> 1556 <eq left="widen1" right="#b0"/> 1557 <eq left="widen1" right="#b1"/> 1558 <eq left="widen1" right="#b2"/> 1559 <eq left="widen1" right="#b3"/> 1560 </derived> 1561 <derived start="11" size="1"> 1562 <eq left="extend" right="#zext"/> 1563 <eq left="extend" right="#sext"/> 1564 </derived> 1565 </encoding> 1566 </ins> 1567 1568 <ins name="*IMUL.v2i16" mask="0x7fe1c0" exact="0x7240c0"> 1569 <src start="0" mask="0xfb"/> 1570 <src start="3" mask="0xfb"/> 1571 <mod name="swz0" start="9" size="2" default="h01"> 1572 <opt>h00</opt> 1573 <opt>h10</opt> 1574 <opt>h01</opt> 1575 <opt>h11</opt> 1576 </mod> 1577 <mod name="swz1" start="11" size="2" default="h01"> 1578 <opt>h00</opt> 1579 <opt>h10</opt> 1580 <opt>h01</opt> 1581 <opt>h11</opt> 1582 </mod> 1583 </ins> 1584 1585 <ins name="*IMUL.v4i8"> 1586 <src start="0" mask="0xfb"/> 1587 <src start="3" mask="0xfb"/> 1588 <mod name="replicate0" size="3" default="b0123"> 1589 <opt>b0123</opt> 1590 </mod> 1591 <mod name="replicate1" size="3" default="b0123"> 1592 <opt>b0123</opt> 1593 <opt>b0000</opt> 1594 <opt>b1111</opt> 1595 <opt>b2222</opt> 1596 <opt>b3333</opt> 1597 </mod> 1598 <encoding mask="0x7fffc0" exact="0x73e0c0"> 1599 <and> 1600 <eq left="replicate0" right="#b0123"/> 1601 <eq left="replicate1" right="#b0123"/> 1602 </and> 1603 </encoding> 1604 <encoding mask="0x7ff9c0" exact="0x7380c0"> 1605 <and> 1606 <eq left="replicate0" right="#b0123"/> 1607 <neq left="replicate1" right="#b0123"/> 1608 </and> 1609 <derived start="9" size="2"> 1610 <eq left="replicate1" right="#b0000"/> 1611 <eq left="replicate1" right="#b1111"/> 1612 <eq left="replicate1" right="#b2222"/> 1613 <eq left="replicate1" right="#b3333"/> 1614 </derived> 1615 </encoding> 1616 </ins> 1617 1618 <ins name="*IMULD" mask="0x7fff80" exact="0x70f100"> 1619 <src start="0" mask="0x33"/> 1620 <src start="3" mask="0x33"/> 1621 <mod name="threads" start="6" size="1" default="odd"> 1622 <opt>even</opt> 1623 <opt>odd</opt> 1624 </mod> 1625 </ins> 1626 1627 <ins name="*ISUBB.i32" mask="0x7ffe00" exact="0x27fe00"> 1628 <src start="0" mask="0xfb"/> 1629 <src start="3" mask="0xfb"/> 1630 <src start="6"/> 1631 </ins> 1632 1633 <ins name="*JUMP_EX" mask="0x7ff000" exact="0x2eb000" last="true"> 1634 <src start="0" mask="0xfb"/> 1635 <src start="3" mask="0xfb"/> 1636 <src start="6"/> 1637 <mod name="test_mode" start="9" size="1" default="z"> 1638 <opt>z</opt> 1639 <opt>nz</opt> 1640 </mod> 1641 <mod name="stack_mode" start="10" size="2"> 1642 <opt>return</opt> 1643 <opt>call</opt> 1644 <opt>none</opt> 1645 <opt>replace</opt> 1646 </mod> 1647 </ins> 1648 1649 <ins name="*LROT_DOUBLE.i32" mask="0x7ff000" exact="0x33b000"> 1650 <src start="0" mask="0xfb"/> 1651 <src start="3" mask="0xfb"/> 1652 <src start="6"/> 1653 <mod name="bytes2" start="9" size="1" opt="bytes2"/> 1654 <mod name="lane2" start="10" size="1" default="b0"> 1655 <opt>b0</opt> 1656 <opt>b2</opt> 1657 </mod> 1658 <mod name="result_word" start="11" size="1" default="w0"> 1659 <opt>w0</opt> 1660 <opt>w1</opt> 1661 </mod> 1662 </ins> 1663 1664 <ins name="*LSHIFT_AND.i32" mask="0x7f3800" exact="0x311000"> 1665 <src start="0" mask="0xfb"/> 1666 <src start="3" mask="0xfb"/> 1667 <src start="6"/> 1668 <mod name="lane2" start="9" size="2" default="b0"> 1669 <opt>b0</opt> 1670 <opt>b1</opt> 1671 <opt>b2</opt> 1672 <opt>b3</opt> 1673 </mod> 1674 <mod name="not1" start="14" size="1" opt="not"/> 1675 <mod name="not_result" start="15" size="1"> 1676 <opt>not</opt> 1677 <opt>none</opt> 1678 </mod> 1679 </ins> 1680 1681 <ins name="*LSHIFT_AND.v2i16"> 1682 <src start="0" mask="0xfb"/> 1683 <src start="3" mask="0xfb"/> 1684 <src start="6"/> 1685 <mod name="lanes2" size="3" default="b02"> 1686 <opt>b00</opt> 1687 <opt>b11</opt> 1688 <opt>b22</opt> 1689 <opt>b33</opt> 1690 <opt>b01</opt> 1691 <opt>b23</opt> 1692 <opt>b02</opt> 1693 </mod> 1694 <mod name="not1" start="14" size="1" opt="not"/> 1695 <mod name="not_result" start="15" size="1"> 1696 <opt>not</opt> 1697 <opt>none</opt> 1698 </mod> 1699 <encoding mask="0x7f3800" exact="0x310800"> 1700 <or> 1701 <eq left="lanes2" right="#b00"/> 1702 <eq left="lanes2" right="#b11"/> 1703 <eq left="lanes2" right="#b22"/> 1704 <eq left="lanes2" right="#b33"/> 1705 </or> 1706 <derived start="9" size="2"> 1707 <eq left="lanes2" right="#b00"/> 1708 <eq left="lanes2" right="#b11"/> 1709 <eq left="lanes2" right="#b22"/> 1710 <eq left="lanes2" right="#b33"/> 1711 </derived> 1712 </encoding> 1713 <encoding mask="0x7f3800" exact="0x311800"> 1714 <or> 1715 <eq left="lanes2" right="#b01"/> 1716 <eq left="lanes2" right="#b23"/> 1717 <eq left="lanes2" right="#b02"/> 1718 </or> 1719 <derived start="9" size="2"> 1720 <reserved/> 1721 <eq left="lanes2" right="#b01"/> 1722 <eq left="lanes2" right="#b23"/> 1723 <eq left="lanes2" right="#b02"/> 1724 </derived> 1725 </encoding> 1726 </ins> 1727 1728 <ins name="*LSHIFT_AND.v4i8"> 1729 <src start="0" mask="0xfb"/> 1730 <src start="3" mask="0xfb"/> 1731 <src start="6"/> 1732 <mod name="lanes2" size="3" default="b0123"> 1733 <opt>b0123</opt> 1734 <opt>b0000</opt> 1735 <opt>b1111</opt> 1736 <opt>b2222</opt> 1737 <opt>b3333</opt> 1738 </mod> 1739 <mod name="not1" start="14" size="1" opt="not"/> 1740 <mod name="not_result" start="15" size="1"> 1741 <opt>not</opt> 1742 <opt>none</opt> 1743 </mod> 1744 <encoding mask="0x7f3800" exact="0x310000"> 1745 <neq left="lanes2" right="#b0123"/> 1746 <derived start="9" size="2"> 1747 <eq left="lanes2" right="#b0000"/> 1748 <eq left="lanes2" right="#b1111"/> 1749 <eq left="lanes2" right="#b2222"/> 1750 <eq left="lanes2" right="#b3333"/> 1751 </derived> 1752 </encoding> 1753 <encoding mask="0x7f3e00" exact="0x311800"> 1754 <eq left="lanes2" right="#b0123"/> 1755 </encoding> 1756 </ins> 1757 1758 <ins name="*LSHIFT_DOUBLE.i32" mask="0x7ff000" exact="0x33c000"> 1759 <src start="0" mask="0xfb"/> 1760 <src start="3" mask="0xfb"/> 1761 <src start="6"/> 1762 <mod name="bytes2" start="9" size="1" opt="bytes2"/> 1763 <mod name="lane2" start="10" size="1" default="b0"> 1764 <opt>b0</opt> 1765 <opt>b2</opt> 1766 </mod> 1767 <mod name="result_word" start="11" size="1" default="w0"> 1768 <opt>w0</opt> 1769 <opt>w1</opt> 1770 </mod> 1771 </ins> 1772 1773 <ins name="*LSHIFT_OR.i32" mask="0x7f3800" exact="0x313000"> 1774 <src start="0" mask="0xfb"/> 1775 <src start="3" mask="0xfb"/> 1776 <src start="6"/> 1777 <mod name="lane2" start="9" size="2" default="b0"> 1778 <opt>b0</opt> 1779 <opt>b1</opt> 1780 <opt>b2</opt> 1781 <opt>b3</opt> 1782 </mod> 1783 <mod name="not1" start="14" size="1"> 1784 <opt>not</opt> 1785 <opt>none</opt> 1786 </mod> 1787 <mod name="not_result" start="15" size="1" opt="not"/> 1788 </ins> 1789 1790 <ins name="*LSHIFT_OR.v2i16"> 1791 <src start="0" mask="0xfb"/> 1792 <src start="3" mask="0xfb"/> 1793 <src start="6"/> 1794 <mod name="lanes2" size="3" default="b02"> 1795 <opt>b00</opt> 1796 <opt>b11</opt> 1797 <opt>b22</opt> 1798 <opt>b33</opt> 1799 <opt>b01</opt> 1800 <opt>b23</opt> 1801 <opt>b02</opt> 1802 </mod> 1803 <mod name="not1" start="14" size="1"> 1804 <opt>not</opt> 1805 <opt>none</opt> 1806 </mod> 1807 <mod name="not_result" start="15" size="1" opt="not"/> 1808 <encoding mask="0x7f3800" exact="0x312800"> 1809 <or> 1810 <eq left="lanes2" right="#b00"/> 1811 <eq left="lanes2" right="#b11"/> 1812 <eq left="lanes2" right="#b22"/> 1813 <eq left="lanes2" right="#b33"/> 1814 </or> 1815 <derived start="9" size="2"> 1816 <eq left="lanes2" right="#b00"/> 1817 <eq left="lanes2" right="#b11"/> 1818 <eq left="lanes2" right="#b22"/> 1819 <eq left="lanes2" right="#b33"/> 1820 </derived> 1821 </encoding> 1822 <encoding mask="0x7f3800" exact="0x313800"> 1823 <or> 1824 <eq left="lanes2" right="#b01"/> 1825 <eq left="lanes2" right="#b23"/> 1826 <eq left="lanes2" right="#b02"/> 1827 </or> 1828 <derived start="9" size="2"> 1829 <reserved/> 1830 <eq left="lanes2" right="#b01"/> 1831 <eq left="lanes2" right="#b23"/> 1832 <eq left="lanes2" right="#b02"/> 1833 </derived> 1834 </encoding> 1835 </ins> 1836 1837 <ins name="*LSHIFT_OR.v4i8"> 1838 <src start="0" mask="0xfb"/> 1839 <src start="3" mask="0xfb"/> 1840 <src start="6"/> 1841 <mod name="lanes2" size="3" default="b0123"> 1842 <opt>b0123</opt> 1843 <opt>b0000</opt> 1844 <opt>b1111</opt> 1845 <opt>b2222</opt> 1846 <opt>b3333</opt> 1847 </mod> 1848 <mod name="not1" start="14" size="1"> 1849 <opt>not</opt> 1850 <opt>none</opt> 1851 </mod> 1852 <mod name="not_result" start="15" size="1" opt="not"/> 1853 <encoding mask="0x7f3800" exact="0x312000"> 1854 <neq left="lanes2" right="#b0123"/> 1855 <derived start="9" size="2"> 1856 <eq left="lanes2" right="#b0000"/> 1857 <eq left="lanes2" right="#b1111"/> 1858 <eq left="lanes2" right="#b2222"/> 1859 <eq left="lanes2" right="#b3333"/> 1860 </derived> 1861 </encoding> 1862 <encoding mask="0x7f3e00" exact="0x313800"> 1863 <eq left="lanes2" right="#b0123"/> 1864 </encoding> 1865 </ins> 1866 1867 <ins name="*LSHIFT_XOR.i32" mask="0x7fd800" exact="0x325000"> 1868 <src start="0" mask="0xfb"/> 1869 <src start="3" mask="0xfb"/> 1870 <src start="6"/> 1871 <mod name="lane2" start="9" size="2" default="b0"> 1872 <opt>b0</opt> 1873 <opt>b1</opt> 1874 <opt>b2</opt> 1875 <opt>b3</opt> 1876 </mod> 1877 <mod name="not_result" start="13" size="1" opt="not"/> 1878 </ins> 1879 1880 <ins name="*LSHIFT_XOR.v2i16"> 1881 <src start="0" mask="0xfb"/> 1882 <src start="3" mask="0xfb"/> 1883 <src start="6"/> 1884 <mod name="lanes2" size="3" default="b02"> 1885 <opt>b00</opt> 1886 <opt>b11</opt> 1887 <opt>b22</opt> 1888 <opt>b33</opt> 1889 <opt>b01</opt> 1890 <opt>b23</opt> 1891 <opt>b02</opt> 1892 </mod> 1893 <mod name="not_result" start="13" size="1" opt="not"/> 1894 <encoding mask="0x7fd800" exact="0x324800"> 1895 <or> 1896 <eq left="lanes2" right="#b00"/> 1897 <eq left="lanes2" right="#b11"/> 1898 <eq left="lanes2" right="#b22"/> 1899 <eq left="lanes2" right="#b33"/> 1900 </or> 1901 <derived start="9" size="2"> 1902 <eq left="lanes2" right="#b00"/> 1903 <eq left="lanes2" right="#b11"/> 1904 <eq left="lanes2" right="#b22"/> 1905 <eq left="lanes2" right="#b33"/> 1906 </derived> 1907 </encoding> 1908 <encoding mask="0x7fd800" exact="0x325800"> 1909 <or> 1910 <eq left="lanes2" right="#b01"/> 1911 <eq left="lanes2" right="#b23"/> 1912 <eq left="lanes2" right="#b02"/> 1913 </or> 1914 <derived start="9" size="2"> 1915 <reserved/> 1916 <eq left="lanes2" right="#b01"/> 1917 <eq left="lanes2" right="#b23"/> 1918 <eq left="lanes2" right="#b02"/> 1919 </derived> 1920 </encoding> 1921 </ins> 1922 1923 <ins name="*LSHIFT_XOR.v4i8"> 1924 <src start="0" mask="0xfb"/> 1925 <src start="3" mask="0xfb"/> 1926 <src start="6"/> 1927 <mod name="lanes2" size="3" default="b0123"> 1928 <opt>b0123</opt> 1929 <opt>b0000</opt> 1930 <opt>b1111</opt> 1931 <opt>b2222</opt> 1932 <opt>b3333</opt> 1933 </mod> 1934 <mod name="not_result" start="13" size="1" opt="not"/> 1935 <encoding mask="0x7fd800" exact="0x324000"> 1936 <neq left="lanes2" right="#b0123"/> 1937 <derived start="9" size="2"> 1938 <eq left="lanes2" right="#b0000"/> 1939 <eq left="lanes2" right="#b1111"/> 1940 <eq left="lanes2" right="#b2222"/> 1941 <eq left="lanes2" right="#b3333"/> 1942 </derived> 1943 </encoding> 1944 <encoding mask="0x7fde00" exact="0x325800"> 1945 <eq left="lanes2" right="#b0123"/> 1946 </encoding> 1947 </ins> 1948 1949 <ins name="*MKVEC.v2i16" mask="0x7fff00" exact="0x70f000"> 1950 <src start="0" mask="0xfb"/> 1951 <src start="3" mask="0xfb"/> 1952 <mod name="lane0" start="6" size="1" default="h0"> 1953 <opt>h0</opt> 1954 <opt>h1</opt> 1955 </mod> 1956 <mod name="lane1" start="7" size="1" default="h0"> 1957 <opt>h0</opt> 1958 <opt>h1</opt> 1959 </mod> 1960 </ins> 1961 1962 <ins name="*MKVEC.v4i8" mask="0x7f0000" exact="0x710000"> 1963 <src start="0" mask="0xfb"/> 1964 <src start="3" mask="0xfb"/> 1965 <src start="6"/> 1966 <src start="9"/> 1967 <mod name="lane0" start="12" size="1" default="b0"> 1968 <opt>b0</opt> 1969 <opt>b2</opt> 1970 </mod> 1971 <mod name="lane1" start="13" size="1" default="b0"> 1972 <opt>b0</opt> 1973 <opt>b2</opt> 1974 </mod> 1975 <mod name="lane2" start="14" size="1" default="b0"> 1976 <opt>b0</opt> 1977 <opt>b2</opt> 1978 </mod> 1979 <mod name="lane3" start="15" size="1" default="b0"> 1980 <opt>b0</opt> 1981 <opt>b2</opt> 1982 </mod> 1983 </ins> 1984 1985 <ins name="*MOV.i32" mask="0x7ffff8" exact="0x701968"> 1986 <src start="0" mask="0xfb"/> 1987 </ins> 1988 1989 <ins name="*NOP" mask="0x7fffff" exact="0x701963"/> 1990 1991 <ins name="*POPCOUNT.i32" mask="0x7ffff8" exact="0x73c6d8"> 1992 <src start="0" mask="0xfb"/> 1993 </ins> 1994 1995 <ins name="*QUIET.f32" mask="0x7ffff8" exact="0x701970"> 1996 <src start="0" mask="0xfb"/> 1997 </ins> 1998 1999 <ins name="*QUIET.v2f16" mask="0x7fffc8" exact="0x701900"> 2000 <src start="0" mask="0xfb"/> 2001 <mod name="swz0" start="4" size="2" default="h01"> 2002 <opt>h00</opt> 2003 <opt>h10</opt> 2004 <opt>h01</opt> 2005 <opt>h11</opt> 2006 </mod> 2007 </ins> 2008 2009 <ins name="*RROT_DOUBLE.i32" mask="0x7ff000" exact="0x33a000"> 2010 <src start="0" mask="0xfb"/> 2011 <src start="3" mask="0xfb"/> 2012 <src start="6"/> 2013 <mod name="bytes2" start="9" size="1" opt="bytes2"/> 2014 <mod name="lane2" start="10" size="1" default="b0"> 2015 <opt>b0</opt> 2016 <opt>b2</opt> 2017 </mod> 2018 <mod name="result_word" start="11" size="1" default="w0"> 2019 <opt>w0</opt> 2020 <opt>w1</opt> 2021 </mod> 2022 </ins> 2023 2024 <ins name="*RSHIFT_AND.i32" mask="0x7f3800" exact="0x301000"> 2025 <src start="0" mask="0xfb"/> 2026 <src start="3" mask="0xfb"/> 2027 <src start="6"/> 2028 <mod name="lane2" start="9" size="2" default="b0"> 2029 <opt>b0</opt> 2030 <opt>b1</opt> 2031 <opt>b2</opt> 2032 <opt>b3</opt> 2033 </mod> 2034 <mod name="not1" start="14" size="1" opt="not"/> 2035 <mod name="not_result" start="15" size="1"> 2036 <opt>not</opt> 2037 <opt>none</opt> 2038 </mod> 2039 </ins> 2040 2041 <ins name="*RSHIFT_AND.v2i16"> 2042 <src start="0" mask="0xfb"/> 2043 <src start="3" mask="0xfb"/> 2044 <src start="6"/> 2045 <mod name="lanes2" size="3" default="b02"> 2046 <opt>b00</opt> 2047 <opt>b11</opt> 2048 <opt>b22</opt> 2049 <opt>b33</opt> 2050 <opt>b01</opt> 2051 <opt>b23</opt> 2052 <opt>b02</opt> 2053 </mod> 2054 <mod name="not1" start="14" size="1" opt="not"/> 2055 <mod name="not_result" start="15" size="1"> 2056 <opt>not</opt> 2057 <opt>none</opt> 2058 </mod> 2059 <encoding mask="0x7f3800" exact="0x300800"> 2060 <or> 2061 <eq left="lanes2" right="#b00"/> 2062 <eq left="lanes2" right="#b11"/> 2063 <eq left="lanes2" right="#b22"/> 2064 <eq left="lanes2" right="#b33"/> 2065 </or> 2066 <derived start="9" size="2"> 2067 <eq left="lanes2" right="#b00"/> 2068 <eq left="lanes2" right="#b11"/> 2069 <eq left="lanes2" right="#b22"/> 2070 <eq left="lanes2" right="#b33"/> 2071 </derived> 2072 </encoding> 2073 <encoding mask="0x7f3800" exact="0x301800"> 2074 <or> 2075 <eq left="lanes2" right="#b01"/> 2076 <eq left="lanes2" right="#b23"/> 2077 <eq left="lanes2" right="#b02"/> 2078 </or> 2079 <derived start="9" size="2"> 2080 <reserved/> 2081 <eq left="lanes2" right="#b01"/> 2082 <eq left="lanes2" right="#b23"/> 2083 <eq left="lanes2" right="#b02"/> 2084 </derived> 2085 </encoding> 2086 </ins> 2087 2088 <ins name="*RSHIFT_AND.v4i8"> 2089 <src start="0" mask="0xfb"/> 2090 <src start="3" mask="0xfb"/> 2091 <src start="6"/> 2092 <mod name="lanes2" size="3" default="b0123"> 2093 <opt>b0123</opt> 2094 <opt>b0000</opt> 2095 <opt>b1111</opt> 2096 <opt>b2222</opt> 2097 <opt>b3333</opt> 2098 </mod> 2099 <mod name="not1" start="14" size="1" opt="not"/> 2100 <mod name="not_result" start="15" size="1"> 2101 <opt>not</opt> 2102 <opt>none</opt> 2103 </mod> 2104 <encoding mask="0x7f3800" exact="0x300000"> 2105 <neq left="lanes2" right="#b0123"/> 2106 <derived start="9" size="2"> 2107 <eq left="lanes2" right="#b0000"/> 2108 <eq left="lanes2" right="#b1111"/> 2109 <eq left="lanes2" right="#b2222"/> 2110 <eq left="lanes2" right="#b3333"/> 2111 </derived> 2112 </encoding> 2113 <encoding mask="0x7f3e00" exact="0x301800"> 2114 <eq left="lanes2" right="#b0123"/> 2115 </encoding> 2116 </ins> 2117 2118 <ins name="*RSHIFT_DOUBLE.i32" mask="0x7ff000" exact="0x33d000"> 2119 <src start="0" mask="0xfb"/> 2120 <src start="3" mask="0xfb"/> 2121 <src start="6"/> 2122 <mod name="bytes2" start="9" size="1" opt="bytes2"/> 2123 <mod name="lane2" start="10" size="1" default="b0"> 2124 <opt>b0</opt> 2125 <opt>b2</opt> 2126 </mod> 2127 <mod name="result_word" start="11" size="1" default="w0"> 2128 <opt>w0</opt> 2129 <opt>w1</opt> 2130 </mod> 2131 </ins> 2132 2133 <ins name="*RSHIFT_OR.i32" mask="0x7f3800" exact="0x303000"> 2134 <src start="0" mask="0xfb"/> 2135 <src start="3" mask="0xfb"/> 2136 <src start="6"/> 2137 <mod name="lane2" start="9" size="2" default="b0"> 2138 <opt>b0</opt> 2139 <opt>b1</opt> 2140 <opt>b2</opt> 2141 <opt>b3</opt> 2142 </mod> 2143 <mod name="not1" start="14" size="1"> 2144 <opt>not</opt> 2145 <opt>none</opt> 2146 </mod> 2147 <mod name="not_result" start="15" size="1" opt="not"/> 2148 </ins> 2149 2150 <ins name="*RSHIFT_OR.v2i16"> 2151 <src start="0" mask="0xfb"/> 2152 <src start="3" mask="0xfb"/> 2153 <src start="6"/> 2154 <mod name="lanes2" size="3" default="b02"> 2155 <opt>b00</opt> 2156 <opt>b11</opt> 2157 <opt>b22</opt> 2158 <opt>b33</opt> 2159 <opt>b01</opt> 2160 <opt>b23</opt> 2161 <opt>b02</opt> 2162 </mod> 2163 <mod name="not1" start="14" size="1"> 2164 <opt>not</opt> 2165 <opt>none</opt> 2166 </mod> 2167 <mod name="not_result" start="15" size="1" opt="not"/> 2168 <encoding mask="0x7f3800" exact="0x302800"> 2169 <or> 2170 <eq left="lanes2" right="#b00"/> 2171 <eq left="lanes2" right="#b11"/> 2172 <eq left="lanes2" right="#b22"/> 2173 <eq left="lanes2" right="#b33"/> 2174 </or> 2175 <derived start="9" size="2"> 2176 <eq left="lanes2" right="#b00"/> 2177 <eq left="lanes2" right="#b11"/> 2178 <eq left="lanes2" right="#b22"/> 2179 <eq left="lanes2" right="#b33"/> 2180 </derived> 2181 </encoding> 2182 <encoding mask="0x7f3800" exact="0x303800"> 2183 <or> 2184 <eq left="lanes2" right="#b01"/> 2185 <eq left="lanes2" right="#b23"/> 2186 <eq left="lanes2" right="#b02"/> 2187 </or> 2188 <derived start="9" size="2"> 2189 <reserved/> 2190 <eq left="lanes2" right="#b01"/> 2191 <eq left="lanes2" right="#b23"/> 2192 <eq left="lanes2" right="#b02"/> 2193 </derived> 2194 </encoding> 2195 </ins> 2196 2197 <ins name="*RSHIFT_OR.v4i8"> 2198 <src start="0" mask="0xfb"/> 2199 <src start="3" mask="0xfb"/> 2200 <src start="6"/> 2201 <mod name="lanes2" size="3" default="b0123"> 2202 <opt>b0123</opt> 2203 <opt>b0000</opt> 2204 <opt>b1111</opt> 2205 <opt>b2222</opt> 2206 <opt>b3333</opt> 2207 </mod> 2208 <mod name="not1" start="14" size="1"> 2209 <opt>not</opt> 2210 <opt>none</opt> 2211 </mod> 2212 <mod name="not_result" start="15" size="1" opt="not"/> 2213 <encoding mask="0x7f3800" exact="0x302000"> 2214 <neq left="lanes2" right="#b0123"/> 2215 <derived start="9" size="2"> 2216 <eq left="lanes2" right="#b0000"/> 2217 <eq left="lanes2" right="#b1111"/> 2218 <eq left="lanes2" right="#b2222"/> 2219 <eq left="lanes2" right="#b3333"/> 2220 </derived> 2221 </encoding> 2222 <encoding mask="0x7f3e00" exact="0x303800"> 2223 <eq left="lanes2" right="#b0123"/> 2224 </encoding> 2225 </ins> 2226 2227 <ins name="*RSHIFT_XOR.i32" mask="0x7fd800" exact="0x321000"> 2228 <src start="0" mask="0xfb"/> 2229 <src start="3" mask="0xfb"/> 2230 <src start="6"/> 2231 <mod name="lane2" start="9" size="2" default="b0"> 2232 <opt>b0</opt> 2233 <opt>b1</opt> 2234 <opt>b2</opt> 2235 <opt>b3</opt> 2236 </mod> 2237 <mod name="not_result" start="13" size="1" opt="not"/> 2238 </ins> 2239 2240 <ins name="*RSHIFT_XOR.v2i16"> 2241 <src start="0" mask="0xfb"/> 2242 <src start="3" mask="0xfb"/> 2243 <src start="6"/> 2244 <mod name="lanes2" size="3" default="b02"> 2245 <opt>b00</opt> 2246 <opt>b11</opt> 2247 <opt>b22</opt> 2248 <opt>b33</opt> 2249 <opt>b01</opt> 2250 <opt>b23</opt> 2251 <opt>b02</opt> 2252 </mod> 2253 <mod name="not_result" start="13" size="1" opt="not"/> 2254 <encoding mask="0x7fd800" exact="0x320800"> 2255 <or> 2256 <eq left="lanes2" right="#b00"/> 2257 <eq left="lanes2" right="#b11"/> 2258 <eq left="lanes2" right="#b22"/> 2259 <eq left="lanes2" right="#b33"/> 2260 </or> 2261 <derived start="9" size="2"> 2262 <eq left="lanes2" right="#b00"/> 2263 <eq left="lanes2" right="#b11"/> 2264 <eq left="lanes2" right="#b22"/> 2265 <eq left="lanes2" right="#b33"/> 2266 </derived> 2267 </encoding> 2268 <encoding mask="0x7fd800" exact="0x321800"> 2269 <or> 2270 <eq left="lanes2" right="#b01"/> 2271 <eq left="lanes2" right="#b23"/> 2272 <eq left="lanes2" right="#b02"/> 2273 </or> 2274 <derived start="9" size="2"> 2275 <reserved/> 2276 <eq left="lanes2" right="#b01"/> 2277 <eq left="lanes2" right="#b23"/> 2278 <eq left="lanes2" right="#b02"/> 2279 </derived> 2280 </encoding> 2281 </ins> 2282 2283 <ins name="*RSHIFT_XOR.v4i8"> 2284 <src start="0" mask="0xfb"/> 2285 <src start="3" mask="0xfb"/> 2286 <src start="6"/> 2287 <mod name="lanes2" size="3" default="b0123"> 2288 <opt>b0123</opt> 2289 <opt>b0000</opt> 2290 <opt>b1111</opt> 2291 <opt>b2222</opt> 2292 <opt>b3333</opt> 2293 </mod> 2294 <mod name="not_result" start="13" size="1" opt="not"/> 2295 <encoding mask="0x7fd800" exact="0x320000"> 2296 <neq left="lanes2" right="#b0123"/> 2297 <derived start="9" size="2"> 2298 <eq left="lanes2" right="#b0000"/> 2299 <eq left="lanes2" right="#b1111"/> 2300 <eq left="lanes2" right="#b2222"/> 2301 <eq left="lanes2" right="#b3333"/> 2302 </derived> 2303 </encoding> 2304 <encoding mask="0x7fde00" exact="0x321800"> 2305 <eq left="lanes2" right="#b0123"/> 2306 </encoding> 2307 </ins> 2308 2309 <ins name="*S16_TO_S32" mask="0x7fffe8" exact="0x700cc0"> 2310 <src start="0" mask="0xfb"/> 2311 <mod name="lane0" start="4" size="1" default="h0"> 2312 <opt>h0</opt> 2313 <opt>h1</opt> 2314 </mod> 2315 </ins> 2316 2317 <ins name="*S8_TO_S32" mask="0x7fffc8" exact="0x700b40"> 2318 <src start="0" mask="0xfb"/> 2319 <mod name="lane0" start="4" size="2" default="b0"> 2320 <opt>b0</opt> 2321 <opt>b1</opt> 2322 <opt>b2</opt> 2323 <opt>b3</opt> 2324 </mod> 2325 </ins> 2326 2327 <ins name="*SEG_ADD" mask="0x7fff40" exact="0x701500"> 2328 <src start="0" mask="0xfb"/> 2329 <mod name="seg" start="3" size="3"> 2330 <reserved/> 2331 <reserved/> 2332 <opt>wls</opt> 2333 <reserved/> 2334 <reserved/> 2335 <reserved/> 2336 <reserved/> 2337 <opt>tl</opt> 2338 </mod> 2339 <mod name="preserve_null" start="7" size="1" opt="preserve_null"/> 2340 </ins> 2341 2342 <ins name="*SEG_SUB" mask="0x7fff40" exact="0x701540" unused="true"> 2343 <src start="0" mask="0xfb"/> 2344 <mod name="seg" start="3" size="3"> 2345 <reserved/> 2346 <reserved/> 2347 <opt>wls</opt> 2348 <reserved/> 2349 <reserved/> 2350 <reserved/> 2351 <reserved/> 2352 <opt>tl</opt> 2353 </mod> 2354 <mod name="preserve_null" start="7" size="1" opt="preserve_null"/> 2355 </ins> 2356 2357 <ins name="*SHADDXL.i64" mask="0x7ffe00" exact="0x70e600"> 2358 <src start="0" mask="0xfb"/> 2359 <src start="3" mask="0xfb"/> 2360 <immediate name="shift" start="6" size="3"/> 2361 </ins> 2362 2363 <ins name="*SHADDXL.s32" mask="0x7ff800" exact="0x70e800"> 2364 <src start="0" mask="0xfb"/> 2365 <src start="3" mask="0xfb"/> 2366 <immediate name="shift" start="6" size="3"/> 2367 <mod name="lane1" start="9" size="2"> 2368 <opt>h0</opt> 2369 <opt>h1</opt> 2370 <opt>none</opt> 2371 </mod> 2372 </ins> 2373 2374 <ins name="*SHADDXL.u32" mask="0x7ff800" exact="0x70e000"> 2375 <src start="0" mask="0xfb"/> 2376 <src start="3" mask="0xfb"/> 2377 <immediate name="shift" start="6" size="3"/> 2378 <mod name="lane1" start="9" size="2"> 2379 <opt>h0</opt> 2380 <opt>h1</opt> 2381 <opt>none</opt> 2382 </mod> 2383 </ins> 2384 2385 <ins name="*U16_TO_U32" mask="0x7fffe8" exact="0x700cc8"> 2386 <src start="0" mask="0xfb"/> 2387 <mod name="lane0" start="4" size="1" default="h0"> 2388 <opt>h0</opt> 2389 <opt>h1</opt> 2390 </mod> 2391 </ins> 2392 2393 <ins name="*U8_TO_U32" mask="0x7fffc8" exact="0x700b48"> 2394 <src start="0" mask="0xfb"/> 2395 <mod name="lane0" start="4" size="2" default="b0"> 2396 <opt>b0</opt> 2397 <opt>b1</opt> 2398 <opt>b2</opt> 2399 <opt>b3</opt> 2400 </mod> 2401 </ins> 2402 2403 <ins name="*V2F32_TO_V2F16" mask="0x7fe000" exact="0x6e8000"> 2404 <src start="0" mask="0xfb"/> 2405 <src start="3" mask="0xfb"/> 2406 <mod name="abs0" size="1" opt="abs"/> 2407 <mod name="abs1" size="1" opt="abs"/> 2408 <mod name="neg0" size="1" opt="neg"/> 2409 <mod name="neg1" size="1" opt="neg"/> 2410 <mod name="clamp" start="8" size="2"> 2411 <opt>none</opt> 2412 <opt>clamp_0_inf</opt> 2413 <opt>clamp_m1_1</opt> 2414 <opt>clamp_0_1</opt> 2415 </mod> 2416 <mod name="round" start="10" size="3"> 2417 <opt>none</opt> 2418 <opt>rtp</opt> 2419 <opt>rtn</opt> 2420 <opt>rtz</opt> 2421 <opt>rtna</opt> 2422 </mod> 2423 <derived start="6" size="1"> 2424 <and> 2425 <eq left="abs0" right="#none"/> 2426 <eq left="abs1" right="#none"/> 2427 </and> 2428 <and> 2429 <eq left="abs0" right="#abs"/> 2430 <eq left="abs1" right="#abs"/> 2431 </and> 2432 </derived> 2433 <derived start="7" size="1"> 2434 <and> 2435 <eq left="neg0" right="#none"/> 2436 <eq left="neg1" right="#none"/> 2437 </and> 2438 <and> 2439 <eq left="neg0" right="#neg"/> 2440 <eq left="neg1" right="#neg"/> 2441 </and> 2442 </derived> 2443 </ins> 2444 2445 <ins name="*VN_ASST1.f16" mask="0x7ff000" exact="0x6eb000"> 2446 <src start="0" mask="0xfb"/> 2447 <src start="3" mask="0xfb"/> 2448 <src start="6"/> 2449 <mod name="h" start="9" size="1" opt="h"/> 2450 <mod name="l" start="10" size="1" opt="l"/> 2451 <mod name="neg2" start="11" size="1" opt="neg"/> 2452 </ins> 2453 2454 <ins name="*VN_ASST1.f32" mask="0x7fe000" exact="0x27c000"> 2455 <src start="0" mask="0xfb"/> 2456 <src start="3" mask="0xfb"/> 2457 <src start="6"/> 2458 <src start="9"/> 2459 <mod name="neg2" start="12" size="1" opt="neg"/> 2460 </ins> 2461 2462 <ins name="+ACMPSTORE.i32" staging="r=2" mask="0xffdc0" exact="0x648c0" message="atomic" dests="0"> 2463 <src start="0"/> 2464 <src start="3"/> 2465 <mod name="seg" start="9" size="1" opt="wls"/> 2466 </ins> 2467 2468 <ins name="+ACMPSTORE.i64" staging="r=4" mask="0xffdc0" exact="0x64900" message="atomic" dests="0"> 2469 <src start="0"/> 2470 <src start="3"/> 2471 <mod name="seg" start="9" size="1" opt="wls"/> 2472 </ins> 2473 2474 <ins name="+ACMPXCHG.i32" staging="rw=2" mask="0xffdc0" exact="0x644c0" message="atomic"> 2475 <src start="0"/> 2476 <src start="3"/> 2477 <mod name="seg" start="9" size="1" opt="wls"/> 2478 </ins> 2479 2480 <ins name="+ACMPXCHG.i64" staging="rw=4" mask="0xffdc0" exact="0x64500" message="atomic"> 2481 <src start="0"/> 2482 <src start="3"/> 2483 <mod name="seg" start="9" size="1" opt="wls"/> 2484 </ins> 2485 2486 <ins name="+ATEST" staging="w=1" mask="0xfff00" exact="0xc8f00" message="atest" table="true"> 2487 <src start="0" mask="0xf7"/> 2488 <src start="3" mask="0xf7"/> 2489 <mod name="widen1" start="6" size="2"> 2490 <reserved/> 2491 <opt>none</opt> 2492 <opt>h0</opt> 2493 <opt>h1</opt> 2494 </mod> 2495 </ins> 2496 2497 <ins name="+ATOM_CX" staging="rw=sr_count" mask="0xffe00" exact="0xd7400" message="atomic"> 2498 <src start="0"/> 2499 <src start="3"/> 2500 <src start="6"/> 2501 <!-- not actually encoded, but used for IR --> 2502 <immediate name="sr_count" size="4" pseudo="true"/> 2503 </ins> 2504 2505 <ins name="+AXCHG.i32" staging="rw=1" mask="0xffdc0" exact="0x640c0" message="atomic"> 2506 <src start="0"/> 2507 <src start="3"/> 2508 <mod name="seg" start="9" size="1" opt="wls"/> 2509 </ins> 2510 2511 <ins name="+AXCHG.i64" staging="rw=2" mask="0xffdc0" exact="0x64100" message="atomic"> 2512 <src start="0"/> 2513 <src start="3"/> 2514 <mod name="seg" start="9" size="1" opt="wls"/> 2515 </ins> 2516 2517 <ins name="+BARRIER" mask="0xfffff" exact="0xd7874" message="barrier" last="true" dests="0"/> 2518 2519 <ins name="+BLEND" staging="r=sr_count" mask="0xffe00" exact="0xca800" message="blend" last="true"> 2520 <src start="0"/> 2521 <src start="3" mask="0xf7"/> 2522 <src start="6" mask="0xf7"/> 2523 <!-- not actually encoded, but used for IR --> 2524 <immediate name="sr_count" size="4" pseudo="true"/> 2525 </ins> 2526 2527 <ins name="+BRANCH.f16" mask="0xf8000" exact="0x68000" last="true" dests="0"> 2528 <src start="0"/> 2529 <src start="3"/> 2530 <src start="6" mask="0xf7"/> 2531 <mod name="widen0" size="2"> 2532 <opt>none</opt> 2533 <opt>h0</opt> 2534 <opt>h1</opt> 2535 </mod> 2536 <mod name="widen1" size="2"> 2537 <opt>none</opt> 2538 <opt>h0</opt> 2539 <opt>h1</opt> 2540 </mod> 2541 <mod name="cmpf" size="3"> 2542 <opt>eq</opt> 2543 <opt>gt</opt> 2544 <opt>ge</opt> 2545 <opt>ne</opt> 2546 <opt>lt</opt> 2547 <opt>le</opt> 2548 </mod> 2549 <derived start="12" size="3"> 2550 <reserved/> 2551 <and> 2552 <eq left="widen0" right="#h0"/> 2553 <eq left="widen1" right="#h0"/> 2554 </and> 2555 <and> 2556 <eq left="widen0" right="#h1"/> 2557 <eq left="widen1" right="#h1"/> 2558 </and> 2559 <and> 2560 <eq left="widen0" right="#h1"/> 2561 <eq left="widen1" right="#h0"/> 2562 <or> 2563 <eq left="cmpf" right="#ne"/> 2564 <eq left="cmpf" right="#ge"/> 2565 <eq left="cmpf" right="#le"/> 2566 </or> 2567 </and> 2568 <and> 2569 <eq left="widen0" right="#h1"/> 2570 <eq left="widen1" right="#h0"/> 2571 <or> 2572 <eq left="cmpf" right="#eq"/> 2573 <eq left="cmpf" right="#gt"/> 2574 <eq left="cmpf" right="#lt"/> 2575 </or> 2576 </and> 2577 <reserved/> 2578 <reserved/> 2579 <reserved/> 2580 </derived> 2581 <derived start="9" size="3"> 2582 <reserved/> 2583 <reserved/> 2584 <reserved/> 2585 <reserved/> 2586 <and alias="true"> 2587 <eq left="widen0" right="widen1"/> 2588 <eq left="ordering" right="#eq"/> 2589 <or> 2590 <eq left="cmpf" right="#gt"/> 2591 <eq left="cmpf" right="#lt"/> 2592 </or> 2593 </and> 2594 <or> 2595 <and> 2596 <eq left="widen0" right="#h1"/> 2597 <eq left="widen1" right="#h0"/> 2598 <or> 2599 <eq left="cmpf" right="#eq"/> 2600 <eq left="cmpf" right="#ne"/> 2601 </or> 2602 </and> 2603 <and> 2604 <eq left="widen0" right="widen1"/> 2605 <eq left="ordering" right="#lt"/> 2606 <eq left="cmpf" right="#eq"/> 2607 </and> 2608 <and> 2609 <eq left="widen0" right="widen1"/> 2610 <neq left="ordering" right="#lt"/> 2611 <eq left="cmpf" right="#ne"/> 2612 </and> 2613 </or> 2614 <or> 2615 <and> 2616 <eq left="widen0" right="#h1"/> 2617 <eq left="widen1" right="#h0"/> 2618 <or> 2619 <eq left="cmpf" right="#gt"/> 2620 <eq left="cmpf" right="#ge"/> 2621 </or> 2622 </and> 2623 <and> 2624 <eq left="widen0" right="widen1"/> 2625 <eq left="ordering" right="#lt"/> 2626 <eq left="cmpf" right="#gt"/> 2627 </and> 2628 <and> 2629 <eq left="widen0" right="widen1"/> 2630 <neq left="ordering" right="#lt"/> 2631 <eq left="cmpf" right="#ge"/> 2632 </and> 2633 </or> 2634 <or> 2635 <and> 2636 <eq left="widen0" right="#h1"/> 2637 <eq left="widen1" right="#h0"/> 2638 <or> 2639 <eq left="cmpf" right="#lt"/> 2640 <eq left="cmpf" right="#le"/> 2641 </or> 2642 </and> 2643 <and> 2644 <eq left="widen0" right="widen1"/> 2645 <eq left="ordering" right="#lt"/> 2646 <eq left="cmpf" right="#lt"/> 2647 </and> 2648 <and> 2649 <eq left="widen0" right="widen1"/> 2650 <neq left="ordering" right="#lt"/> 2651 <eq left="cmpf" right="#le"/> 2652 </and> 2653 <and alias="true"> 2654 <eq left="widen0" right="widen1"/> 2655 <eq left="ordering" right="#eq"/> 2656 <eq left="cmpf" right="#eq"/> 2657 </and> 2658 </or> 2659 </derived> 2660 <swap left="0" right="1"> 2661 <or> 2662 <and> 2663 <eq left="widen0" right="#h0"/> 2664 <eq left="widen1" right="#h1"/> 2665 </and> 2666 <and> 2667 <eq left="widen0" right="widen1"/> 2668 <eq left="ordering" right="#gt"/> 2669 <or> 2670 <eq left="cmpf" right="#eq"/> 2671 <eq left="cmpf" right="#gt"/> 2672 <eq left="cmpf" right="#lt"/> 2673 </or> 2674 </and> 2675 <and> 2676 <eq left="widen0" right="widen1"/> 2677 <eq left="ordering" right="#lt"/> 2678 <or> 2679 <eq left="cmpf" right="#ne"/> 2680 <eq left="cmpf" right="#ge"/> 2681 <eq left="cmpf" right="#le"/> 2682 </or> 2683 </and> 2684 </or> 2685 <rewrite name="cmpf"> 2686 <map from="lt" to="gt"/> 2687 <map from="le" to="ge"/> 2688 <map from="gt" to="lt"/> 2689 <map from="ge" to="le"/> 2690 </rewrite> 2691 </swap> 2692 </ins> 2693 2694 <ins name="+BRANCH.f32" mask="0xf8000" exact="0x68000" last="true" dests="0"> 2695 <src start="0"/> 2696 <src start="3"/> 2697 <src start="6" mask="0xf7"/> 2698 <mod name="widen0" size="2"> 2699 <opt>none</opt> 2700 <opt>h0</opt> 2701 <opt>h1</opt> 2702 </mod> 2703 <mod name="widen1" size="2"> 2704 <opt>none</opt> 2705 <opt>h0</opt> 2706 <opt>h1</opt> 2707 </mod> 2708 <mod name="cmpf" size="3"> 2709 <opt>eq</opt> 2710 <opt>gt</opt> 2711 <opt>ge</opt> 2712 <opt>ne</opt> 2713 <opt>lt</opt> 2714 <opt>le</opt> 2715 </mod> 2716 <derived start="12" size="3"> 2717 <and> 2718 <eq left="widen0" right="#none"/> 2719 <eq left="widen1" right="#none"/> 2720 </and> 2721 <reserved/> 2722 <reserved/> 2723 <reserved/> 2724 <reserved/> 2725 <and> 2726 <eq left="widen0" right="#none"/> 2727 <eq left="widen1" right="#h0"/> 2728 </and> 2729 <and> 2730 <eq left="widen0" right="#none"/> 2731 <eq left="widen1" right="#h1"/> 2732 </and> 2733 <reserved/> 2734 </derived> 2735 <derived start="9" size="3"> 2736 <reserved/> 2737 <and> 2738 <eq left="widen0" right="#none"/> 2739 <neq left="widen1" right="#none"/> 2740 <eq left="cmpf" right="#ne"/> 2741 </and> 2742 <and> 2743 <eq left="widen0" right="#none"/> 2744 <neq left="widen1" right="#none"/> 2745 <eq left="cmpf" right="#ge"/> 2746 </and> 2747 <and> 2748 <eq left="widen0" right="#none"/> 2749 <neq left="widen1" right="#none"/> 2750 <eq left="cmpf" right="#le"/> 2751 </and> 2752 <and alias="true"> 2753 <eq left="widen0" right="#none"/> 2754 <eq left="widen1" right="#none"/> 2755 <eq left="ordering" right="#eq"/> 2756 <or> 2757 <eq left="cmpf" right="#gt"/> 2758 <eq left="cmpf" right="#lt"/> 2759 </or> 2760 </and> 2761 <or> 2762 <and> 2763 <eq left="widen0" right="#none"/> 2764 <neq left="widen1" right="#none"/> 2765 <eq left="cmpf" right="#eq"/> 2766 </and> 2767 <and> 2768 <eq left="widen0" right="#none"/> 2769 <eq left="widen1" right="#none"/> 2770 <eq left="ordering" right="#lt"/> 2771 <eq left="cmpf" right="#eq"/> 2772 </and> 2773 <and> 2774 <eq left="widen0" right="#none"/> 2775 <eq left="widen1" right="#none"/> 2776 <neq left="ordering" right="#lt"/> 2777 <eq left="cmpf" right="#ne"/> 2778 </and> 2779 </or> 2780 <or> 2781 <and> 2782 <eq left="widen0" right="#none"/> 2783 <neq left="widen1" right="#none"/> 2784 <eq left="cmpf" right="#gt"/> 2785 </and> 2786 <and> 2787 <eq left="widen0" right="#none"/> 2788 <eq left="widen1" right="#none"/> 2789 <eq left="ordering" right="#lt"/> 2790 <eq left="cmpf" right="#gt"/> 2791 </and> 2792 <and> 2793 <eq left="widen0" right="#none"/> 2794 <eq left="widen1" right="#none"/> 2795 <neq left="ordering" right="#lt"/> 2796 <eq left="cmpf" right="#ge"/> 2797 </and> 2798 </or> 2799 <or> 2800 <and> 2801 <eq left="widen0" right="#none"/> 2802 <neq left="widen1" right="#none"/> 2803 <eq left="cmpf" right="#lt"/> 2804 </and> 2805 <and> 2806 <eq left="widen0" right="#none"/> 2807 <eq left="widen1" right="#none"/> 2808 <eq left="ordering" right="#lt"/> 2809 <eq left="cmpf" right="#lt"/> 2810 </and> 2811 <and> 2812 <eq left="widen0" right="#none"/> 2813 <eq left="widen1" right="#none"/> 2814 <neq left="ordering" right="#lt"/> 2815 <eq left="cmpf" right="#le"/> 2816 </and> 2817 <and alias="true"> 2818 <eq left="widen0" right="#none"/> 2819 <eq left="widen1" right="#none"/> 2820 <eq left="ordering" right="#eq"/> 2821 <eq left="cmpf" right="#eq"/> 2822 </and> 2823 </or> 2824 </derived> 2825 <swap left="0" right="1"> 2826 <or> 2827 <and> 2828 <neq left="widen0" right="#none"/> 2829 <eq left="widen1" right="#none"/> 2830 </and> 2831 <and> 2832 <eq left="widen0" right="#none"/> 2833 <eq left="widen1" right="#none"/> 2834 <eq left="ordering" right="#gt"/> 2835 <or> 2836 <eq left="cmpf" right="#eq"/> 2837 <eq left="cmpf" right="#gt"/> 2838 <eq left="cmpf" right="#lt"/> 2839 </or> 2840 </and> 2841 <and> 2842 <eq left="widen0" right="#none"/> 2843 <eq left="widen1" right="#none"/> 2844 <eq left="ordering" right="#lt"/> 2845 <or> 2846 <eq left="cmpf" right="#ne"/> 2847 <eq left="cmpf" right="#ge"/> 2848 <eq left="cmpf" right="#le"/> 2849 </or> 2850 </and> 2851 </or> 2852 <rewrite name="cmpf"> 2853 <map from="lt" to="gt"/> 2854 <map from="le" to="ge"/> 2855 <map from="gt" to="lt"/> 2856 <map from="ge" to="le"/> 2857 </rewrite> 2858 </swap> 2859 </ins> 2860 2861 <ins name="+BRANCH.i16" mask="0xf8000" exact="0x68000" last="true" dests="0"> 2862 <src start="0"/> 2863 <src start="3"/> 2864 <src start="6" mask="0xf7"/> 2865 <mod name="widen0" size="2"> 2866 <opt>none</opt> 2867 <opt>h0</opt> 2868 <opt>h1</opt> 2869 </mod> 2870 <mod name="widen1" size="2"> 2871 <opt>none</opt> 2872 <opt>h0</opt> 2873 <opt>h1</opt> 2874 </mod> 2875 <mod name="cmpf" size="1"> 2876 <opt>eq</opt> 2877 <opt>ne</opt> 2878 </mod> 2879 <derived start="12" size="3"> 2880 <reserved/> 2881 <and> 2882 <eq left="widen0" right="#h0"/> 2883 <eq left="widen1" right="#h0"/> 2884 </and> 2885 <and> 2886 <eq left="widen0" right="#h1"/> 2887 <eq left="widen1" right="#h1"/> 2888 </and> 2889 <and> 2890 <eq left="widen0" right="#h1"/> 2891 <eq left="widen1" right="#h0"/> 2892 <eq left="cmpf" right="#ne"/> 2893 </and> 2894 <and> 2895 <eq left="widen0" right="#h1"/> 2896 <eq left="widen1" right="#h0"/> 2897 <eq left="cmpf" right="#eq"/> 2898 </and> 2899 <reserved/> 2900 <reserved/> 2901 <reserved/> 2902 </derived> 2903 <derived start="9" size="3"> 2904 <reserved/> 2905 <and alias="true"> 2906 <eq left="widen0" right="widen1"/> 2907 <eq left="ordering" right="#eq"/> 2908 <eq left="cmpf" right="#eq"/> 2909 </and> 2910 <reserved/> 2911 <reserved/> 2912 <or> 2913 <and> 2914 <eq left="widen0" right="#h1"/> 2915 <eq left="widen1" right="#h0"/> 2916 </and> 2917 <and> 2918 <eq left="widen0" right="widen1"/> 2919 <eq left="ordering" right="#lt"/> 2920 <eq left="cmpf" right="#eq"/> 2921 </and> 2922 <and> 2923 <eq left="widen0" right="widen1"/> 2924 <neq left="ordering" right="#lt"/> 2925 <eq left="cmpf" right="#ne"/> 2926 </and> 2927 </or> 2928 <reserved/> 2929 <reserved/> 2930 <reserved/> 2931 </derived> 2932 <swap left="0" right="1"> 2933 <or> 2934 <and> 2935 <eq left="widen0" right="#h0"/> 2936 <eq left="widen1" right="#h1"/> 2937 </and> 2938 <and> 2939 <eq left="widen0" right="widen1"/> 2940 <eq left="ordering" right="#gt"/> 2941 <eq left="cmpf" right="#eq"/> 2942 </and> 2943 <and> 2944 <eq left="widen0" right="widen1"/> 2945 <eq left="ordering" right="#lt"/> 2946 <eq left="cmpf" right="#ne"/> 2947 </and> 2948 </or> 2949 </swap> 2950 </ins> 2951 2952 <ins name="+BRANCH.i32" mask="0xf8000" exact="0x68000" last="true" dests="0"> 2953 <src start="0"/> 2954 <src start="3"/> 2955 <src start="6" mask="0xf7"/> 2956 <mod name="widen0" size="2"> 2957 <opt>none</opt> 2958 <opt>h0</opt> 2959 <opt>h1</opt> 2960 </mod> 2961 <mod name="widen1" size="2"> 2962 <opt>none</opt> 2963 <opt>h0</opt> 2964 <opt>h1</opt> 2965 </mod> 2966 <mod name="cmpf" size="1"> 2967 <opt>eq</opt> 2968 <opt>ne</opt> 2969 </mod> 2970 <derived start="12" size="3"> 2971 <and> 2972 <eq left="widen0" right="#none"/> 2973 <eq left="widen1" right="#none"/> 2974 </and> 2975 <reserved/> 2976 <reserved/> 2977 <reserved/> 2978 <reserved/> 2979 <reserved/> 2980 <reserved/> 2981 <reserved/> 2982 </derived> 2983 <derived start="9" size="3"> 2984 <reserved/> 2985 <and alias="true"> 2986 <eq left="ordering" right="#eq"/> 2987 <eq left="cmpf" right="#eq"/> 2988 </and> 2989 <reserved/> 2990 <reserved/> 2991 <or> 2992 <and> 2993 <eq left="ordering" right="#lt"/> 2994 <eq left="cmpf" right="#eq"/> 2995 </and> 2996 <and> 2997 <neq left="ordering" right="#lt"/> 2998 <eq left="cmpf" right="#ne"/> 2999 </and> 3000 </or> 3001 <reserved/> 3002 <reserved/> 3003 <reserved/> 3004 </derived> 3005 <swap left="0" right="1"> 3006 <or> 3007 <and> 3008 <eq left="ordering" right="#gt"/> 3009 <eq left="cmpf" right="#eq"/> 3010 </and> 3011 <and> 3012 <eq left="ordering" right="#lt"/> 3013 <eq left="cmpf" right="#ne"/> 3014 </and> 3015 </or> 3016 </swap> 3017 </ins> 3018 3019 <ins name="+BRANCH.s16" mask="0xf8000" exact="0x68000" last="true" dests="0"> 3020 <src start="0"/> 3021 <src start="3"/> 3022 <src start="6" mask="0xf7"/> 3023 <mod name="widen0" size="2"> 3024 <opt>none</opt> 3025 <opt>h0</opt> 3026 <opt>h1</opt> 3027 </mod> 3028 <mod name="widen1" size="2"> 3029 <opt>none</opt> 3030 <opt>h0</opt> 3031 <opt>h1</opt> 3032 </mod> 3033 <mod name="cmpf" size="2"> 3034 <opt>gt</opt> 3035 <opt>ge</opt> 3036 <opt>lt</opt> 3037 <opt>le</opt> 3038 </mod> 3039 <derived start="12" size="3"> 3040 <reserved/> 3041 <and> 3042 <eq left="widen0" right="#h0"/> 3043 <eq left="widen1" right="#h0"/> 3044 </and> 3045 <and> 3046 <eq left="widen0" right="#h1"/> 3047 <eq left="widen1" right="#h1"/> 3048 </and> 3049 <reserved/> 3050 <and> 3051 <eq left="widen0" right="#h1"/> 3052 <eq left="widen1" right="#h0"/> 3053 </and> 3054 <reserved/> 3055 <reserved/> 3056 <reserved/> 3057 </derived> 3058 <derived start="9" size="3"> 3059 <or> 3060 <and> 3061 <eq left="widen0" right="#h1"/> 3062 <eq left="widen1" right="#h0"/> 3063 <eq left="cmpf" right="#lt"/> 3064 </and> 3065 <and> 3066 <eq left="widen0" right="widen1"/> 3067 <eq left="ordering" right="#lt"/> 3068 <eq left="cmpf" right="#lt"/> 3069 </and> 3070 </or> 3071 <or> 3072 <and> 3073 <eq left="widen0" right="#h1"/> 3074 <eq left="widen1" right="#h0"/> 3075 <eq left="cmpf" right="#le"/> 3076 </and> 3077 <and> 3078 <eq left="widen0" right="widen1"/> 3079 <eq left="ordering" right="#lt"/> 3080 <eq left="cmpf" right="#le"/> 3081 </and> 3082 <and alias="true"> 3083 <eq left="widen0" right="widen1"/> 3084 <eq left="ordering" right="#eq"/> 3085 <or> 3086 <eq left="cmpf" right="#le"/> 3087 <eq left="cmpf" right="#ge"/> 3088 </or> 3089 </and> 3090 </or> 3091 <or> 3092 <and> 3093 <eq left="widen0" right="#h1"/> 3094 <eq left="widen1" right="#h0"/> 3095 <eq left="cmpf" right="#ge"/> 3096 </and> 3097 <and> 3098 <eq left="widen0" right="widen1"/> 3099 <eq left="ordering" right="#lt"/> 3100 <eq left="cmpf" right="#ge"/> 3101 </and> 3102 </or> 3103 <or> 3104 <and> 3105 <eq left="widen0" right="#h1"/> 3106 <eq left="widen1" right="#h0"/> 3107 <eq left="cmpf" right="#gt"/> 3108 </and> 3109 <and> 3110 <eq left="widen0" right="widen1"/> 3111 <eq left="ordering" right="#lt"/> 3112 <eq left="cmpf" right="#gt"/> 3113 </and> 3114 </or> 3115 <and alias="true"> 3116 <eq left="widen0" right="widen1"/> 3117 <eq left="ordering" right="#eq"/> 3118 <or> 3119 <eq left="cmpf" right="#lt"/> 3120 <eq left="cmpf" right="#gt"/> 3121 </or> 3122 </and> 3123 <reserved/> 3124 <reserved/> 3125 <reserved/> 3126 </derived> 3127 <swap left="0" right="1"> 3128 <or> 3129 <and> 3130 <eq left="widen0" right="#h0"/> 3131 <eq left="widen1" right="#h1"/> 3132 </and> 3133 <and> 3134 <eq left="widen0" right="widen1"/> 3135 <eq left="ordering" right="#gt"/> 3136 </and> 3137 </or> 3138 <rewrite name="cmpf"> 3139 <map from="lt" to="gt"/> 3140 <map from="le" to="ge"/> 3141 <map from="gt" to="lt"/> 3142 <map from="ge" to="le"/> 3143 </rewrite> 3144 </swap> 3145 </ins> 3146 3147 <ins name="+BRANCH.s32" mask="0xf8000" exact="0x68000" last="true" dests="0"> 3148 <src start="0"/> 3149 <src start="3"/> 3150 <src start="6" mask="0xf7"/> 3151 <mod name="widen0" size="2"> 3152 <opt>none</opt> 3153 <opt>h0</opt> 3154 <opt>h1</opt> 3155 </mod> 3156 <mod name="widen1" size="2"> 3157 <opt>none</opt> 3158 <opt>h0</opt> 3159 <opt>h1</opt> 3160 </mod> 3161 <mod name="cmpf" size="2"> 3162 <opt>gt</opt> 3163 <opt>ge</opt> 3164 <opt>lt</opt> 3165 <opt>le</opt> 3166 </mod> 3167 <derived start="12" size="3"> 3168 <and> 3169 <eq left="widen0" right="#none"/> 3170 <eq left="widen1" right="#none"/> 3171 </and> 3172 <reserved/> 3173 <reserved/> 3174 <reserved/> 3175 <reserved/> 3176 <reserved/> 3177 <reserved/> 3178 <reserved/> 3179 </derived> 3180 <derived start="9" size="3"> 3181 <and> 3182 <eq left="ordering" right="#lt"/> 3183 <eq left="cmpf" right="#lt"/> 3184 </and> 3185 <or> 3186 <and> 3187 <eq left="ordering" right="#lt"/> 3188 <eq left="cmpf" right="#le"/> 3189 </and> 3190 <and alias="true"> 3191 <eq left="ordering" right="#eq"/> 3192 <or> 3193 <eq left="cmpf" right="#le"/> 3194 <eq left="cmpf" right="#ge"/> 3195 </or> 3196 </and> 3197 </or> 3198 <and> 3199 <eq left="ordering" right="#lt"/> 3200 <eq left="cmpf" right="#ge"/> 3201 </and> 3202 <and> 3203 <eq left="ordering" right="#lt"/> 3204 <eq left="cmpf" right="#gt"/> 3205 </and> 3206 <and alias="true"> 3207 <eq left="ordering" right="#eq"/> 3208 <or> 3209 <eq left="cmpf" right="#lt"/> 3210 <eq left="cmpf" right="#gt"/> 3211 </or> 3212 </and> 3213 <reserved/> 3214 <reserved/> 3215 <reserved/> 3216 </derived> 3217 <swap left="0" right="1"> 3218 <eq left="ordering" right="#gt"/> 3219 <rewrite name="cmpf"> 3220 <map from="lt" to="gt"/> 3221 <map from="le" to="ge"/> 3222 <map from="gt" to="lt"/> 3223 <map from="ge" to="le"/> 3224 </rewrite> 3225 </swap> 3226 </ins> 3227 3228 <ins name="+BRANCH.u16" mask="0xf8000" exact="0x68000" last="true" dests="0"> 3229 <src start="0"/> 3230 <src start="3"/> 3231 <src start="6" mask="0xf7"/> 3232 <mod name="widen0" size="2"> 3233 <opt>none</opt> 3234 <opt>h0</opt> 3235 <opt>h1</opt> 3236 </mod> 3237 <mod name="widen1" size="2"> 3238 <opt>none</opt> 3239 <opt>h0</opt> 3240 <opt>h1</opt> 3241 </mod> 3242 <mod name="cmpf" size="2"> 3243 <opt>gt</opt> 3244 <opt>ge</opt> 3245 <opt>lt</opt> 3246 <opt>le</opt> 3247 </mod> 3248 <derived start="12" size="3"> 3249 <reserved/> 3250 <and> 3251 <eq left="widen0" right="#h0"/> 3252 <eq left="widen1" right="#h0"/> 3253 </and> 3254 <and> 3255 <eq left="widen0" right="#h1"/> 3256 <eq left="widen1" right="#h1"/> 3257 </and> 3258 <and> 3259 <eq left="widen0" right="#h1"/> 3260 <eq left="widen1" right="#h0"/> 3261 </and> 3262 <reserved/> 3263 <reserved/> 3264 <reserved/> 3265 <reserved/> 3266 </derived> 3267 <derived start="9" size="3"> 3268 <or> 3269 <and> 3270 <eq left="widen0" right="#h1"/> 3271 <eq left="widen1" right="#h0"/> 3272 <eq left="cmpf" right="#lt"/> 3273 </and> 3274 <and> 3275 <eq left="widen0" right="widen1"/> 3276 <neq left="ordering" right="#lt"/> 3277 <eq left="cmpf" right="#lt"/> 3278 </and> 3279 </or> 3280 <or> 3281 <and> 3282 <eq left="widen0" right="#h1"/> 3283 <eq left="widen1" right="#h0"/> 3284 <eq left="cmpf" right="#le"/> 3285 </and> 3286 <and> 3287 <eq left="widen0" right="widen1"/> 3288 <neq left="ordering" right="#lt"/> 3289 <eq left="cmpf" right="#le"/> 3290 </and> 3291 </or> 3292 <or> 3293 <and> 3294 <eq left="widen0" right="#h1"/> 3295 <eq left="widen1" right="#h0"/> 3296 <eq left="cmpf" right="#ge"/> 3297 </and> 3298 <and> 3299 <eq left="widen0" right="widen1"/> 3300 <neq left="ordering" right="#lt"/> 3301 <eq left="cmpf" right="#ge"/> 3302 </and> 3303 </or> 3304 <or> 3305 <and> 3306 <eq left="widen0" right="#h1"/> 3307 <eq left="widen1" right="#h0"/> 3308 <eq left="cmpf" right="#gt"/> 3309 </and> 3310 <and> 3311 <eq left="widen0" right="widen1"/> 3312 <neq left="ordering" right="#lt"/> 3313 <eq left="cmpf" right="#gt"/> 3314 </and> 3315 </or> 3316 <reserved/> 3317 <reserved/> 3318 <reserved/> 3319 <reserved/> 3320 </derived> 3321 <swap left="0" right="1"> 3322 <or> 3323 <and> 3324 <eq left="widen0" right="#h0"/> 3325 <eq left="widen1" right="#h1"/> 3326 </and> 3327 <and> 3328 <eq left="widen0" right="widen1"/> 3329 <eq left="ordering" right="#lt"/> 3330 </and> 3331 </or> 3332 <rewrite name="cmpf"> 3333 <map from="lt" to="gt"/> 3334 <map from="le" to="ge"/> 3335 <map from="gt" to="lt"/> 3336 <map from="ge" to="le"/> 3337 </rewrite> 3338 </swap> 3339 </ins> 3340 3341 <ins name="+BRANCH.u32" mask="0xf8000" exact="0x68000" last="true" dests="0"> 3342 <src start="0"/> 3343 <src start="3"/> 3344 <src start="6" mask="0xf7"/> 3345 <mod name="widen0" size="2"> 3346 <opt>none</opt> 3347 <opt>h0</opt> 3348 <opt>h1</opt> 3349 </mod> 3350 <mod name="widen1" size="2"> 3351 <opt>none</opt> 3352 <opt>h0</opt> 3353 <opt>h1</opt> 3354 </mod> 3355 <mod name="cmpf" size="2"> 3356 <opt>gt</opt> 3357 <opt>ge</opt> 3358 <opt>lt</opt> 3359 <opt>le</opt> 3360 </mod> 3361 <derived start="12" size="3"> 3362 <and> 3363 <eq left="widen0" right="#none"/> 3364 <eq left="widen1" right="#none"/> 3365 </and> 3366 <reserved/> 3367 <reserved/> 3368 <reserved/> 3369 <reserved/> 3370 <reserved/> 3371 <reserved/> 3372 <reserved/> 3373 </derived> 3374 <derived start="9" size="3"> 3375 <and> 3376 <neq left="ordering" right="#lt"/> 3377 <eq left="cmpf" right="#lt"/> 3378 </and> 3379 <and> 3380 <neq left="ordering" right="#lt"/> 3381 <eq left="cmpf" right="#le"/> 3382 </and> 3383 <and> 3384 <neq left="ordering" right="#lt"/> 3385 <eq left="cmpf" right="#ge"/> 3386 </and> 3387 <and> 3388 <neq left="ordering" right="#lt"/> 3389 <eq left="cmpf" right="#gt"/> 3390 </and> 3391 <reserved/> 3392 <reserved/> 3393 <reserved/> 3394 <reserved/> 3395 </derived> 3396 <swap left="0" right="1"> 3397 <eq left="ordering" right="#lt"/> 3398 <rewrite name="cmpf"> 3399 <map from="lt" to="gt"/> 3400 <map from="le" to="ge"/> 3401 <map from="gt" to="lt"/> 3402 <map from="ge" to="le"/> 3403 </rewrite> 3404 </swap> 3405 </ins> 3406 3407 <ins name="+BRANCHC.i16" mask="0xff830" exact="0x6f030" last="true" dests="0"> 3408 <src start="0"/> 3409 <src start="6" mask="0xf7"/> 3410 <mod name="combine" start="10" size="1"> 3411 <opt>any</opt> 3412 <opt>all</opt> 3413 </mod> 3414 <mod name="lane0" size="1" default="h0"> 3415 <opt>h0</opt> 3416 <opt>h1</opt> 3417 </mod> 3418 <derived start="9" size="1"> 3419 <eq left="lane0" right="#h0"/> 3420 <eq left="lane0" right="#h1"/> 3421 </derived> 3422 <derived start="3" size="1"> 3423 <eq left="lane0" right="#h1"/> 3424 <eq left="lane0" right="#h0"/> 3425 </derived> 3426 </ins> 3427 3428 <ins name="+BRANCHC.i32" mask="0xffa38" exact="0x6f238" last="true" dests="0"> 3429 <src start="0"/> 3430 <src start="6" mask="0xf7"/> 3431 <mod name="combine" start="10" size="1"> 3432 <opt>any</opt> 3433 <opt>all</opt> 3434 </mod> 3435 </ins> 3436 3437 <ins name="+BRANCHZ.f16" mask="0xff000" exact="0x6f000" last="true" dests="0"> 3438 <src start="0"/> 3439 <src start="6" mask="0xf7"/> 3440 <mod name="widen0" size="2"> 3441 <opt>none</opt> 3442 <opt>h0</opt> 3443 <opt>h1</opt> 3444 </mod> 3445 <mod name="cmpf" size="3"> 3446 <opt>eq</opt> 3447 <opt>gt</opt> 3448 <opt>ge</opt> 3449 <opt>ne</opt> 3450 <opt>lt</opt> 3451 <opt>le</opt> 3452 </mod> 3453 <derived start="4" size="2"> 3454 <reserved/> 3455 <eq left="widen0" right="#h1"/> 3456 <eq left="widen0" right="#h0"/> 3457 <reserved/> 3458 </derived> 3459 <derived start="3" size="1"> 3460 <or> 3461 <eq left="cmpf" right="#ne"/> 3462 <eq left="cmpf" right="#ge"/> 3463 <eq left="cmpf" right="#le"/> 3464 </or> 3465 <or> 3466 <eq left="cmpf" right="#eq"/> 3467 <eq left="cmpf" right="#gt"/> 3468 <eq left="cmpf" right="#lt"/> 3469 </or> 3470 </derived> 3471 <derived start="9" size="3"> 3472 <reserved/> 3473 <reserved/> 3474 <reserved/> 3475 <reserved/> 3476 <reserved/> 3477 <or> 3478 <eq left="cmpf" right="#ne"/> 3479 <eq left="cmpf" right="#eq"/> 3480 </or> 3481 <or> 3482 <eq left="cmpf" right="#ge"/> 3483 <eq left="cmpf" right="#gt"/> 3484 </or> 3485 <or> 3486 <eq left="cmpf" right="#le"/> 3487 <eq left="cmpf" right="#lt"/> 3488 </or> 3489 </derived> 3490 </ins> 3491 3492 <ins name="+BRANCHZ.f32" mask="0xff030" exact="0x6f000" last="true" dests="0"> 3493 <src start="0"/> 3494 <src start="6" mask="0xf7"/> 3495 <mod name="cmpf" size="3"> 3496 <opt>eq</opt> 3497 <opt>gt</opt> 3498 <opt>ge</opt> 3499 <opt>ne</opt> 3500 <opt>lt</opt> 3501 <opt>le</opt> 3502 </mod> 3503 <derived start="3" size="1"> 3504 <or> 3505 <eq left="cmpf" right="#ne"/> 3506 <eq left="cmpf" right="#ge"/> 3507 <eq left="cmpf" right="#le"/> 3508 </or> 3509 <or> 3510 <eq left="cmpf" right="#eq"/> 3511 <eq left="cmpf" right="#gt"/> 3512 <eq left="cmpf" right="#lt"/> 3513 </or> 3514 </derived> 3515 <derived start="9" size="3"> 3516 <reserved/> 3517 <reserved/> 3518 <reserved/> 3519 <reserved/> 3520 <reserved/> 3521 <or> 3522 <eq left="cmpf" right="#ne"/> 3523 <eq left="cmpf" right="#eq"/> 3524 </or> 3525 <or> 3526 <eq left="cmpf" right="#ge"/> 3527 <eq left="cmpf" right="#gt"/> 3528 </or> 3529 <or> 3530 <eq left="cmpf" right="#le"/> 3531 <eq left="cmpf" right="#lt"/> 3532 </or> 3533 </derived> 3534 </ins> 3535 3536 <ins name="+BRANCHZ.i16" mask="0xffe00" exact="0x6f800" last="true" dests="0"> 3537 <src start="0"/> 3538 <src start="6" mask="0xf7"/> 3539 <mod name="widen0" size="2"> 3540 <opt>none</opt> 3541 <opt>h0</opt> 3542 <opt>h1</opt> 3543 </mod> 3544 <mod name="cmpf" size="1"> 3545 <opt>eq</opt> 3546 <opt>ne</opt> 3547 </mod> 3548 <derived start="4" size="2"> 3549 <reserved/> 3550 <eq left="widen0" right="#h1"/> 3551 <eq left="widen0" right="#h0"/> 3552 <reserved/> 3553 </derived> 3554 <derived start="3" size="1"> 3555 <eq left="cmpf" right="#ne"/> 3556 <eq left="cmpf" right="#eq"/> 3557 </derived> 3558 </ins> 3559 3560 <ins name="+BRANCHZ.i32" mask="0xffe30" exact="0x6f800" last="true" dests="0"> 3561 <src start="0"/> 3562 <src start="6" mask="0xf7"/> 3563 <mod name="cmpf" size="1"> 3564 <opt>eq</opt> 3565 <opt>ne</opt> 3566 </mod> 3567 <derived start="3" size="1"> 3568 <eq left="cmpf" right="#ne"/> 3569 <eq left="cmpf" right="#eq"/> 3570 </derived> 3571 </ins> 3572 3573 <ins name="+BRANCHZ.s16" mask="0xff008" exact="0x6f008" last="true" dests="0"> 3574 <src start="0"/> 3575 <src start="6" mask="0xf7"/> 3576 <mod name="widen0" size="2"> 3577 <opt>none</opt> 3578 <opt>h0</opt> 3579 <opt>h1</opt> 3580 </mod> 3581 <mod name="cmpf" size="2"> 3582 <opt>gt</opt> 3583 <opt>ge</opt> 3584 <opt>lt</opt> 3585 <opt>le</opt> 3586 </mod> 3587 <derived start="4" size="2"> 3588 <reserved/> 3589 <eq left="widen0" right="#h1"/> 3590 <eq left="widen0" right="#h0"/> 3591 <reserved/> 3592 </derived> 3593 <derived start="9" size="3"> 3594 <eq left="cmpf" right="#lt"/> 3595 <eq left="cmpf" right="#le"/> 3596 <eq left="cmpf" right="#ge"/> 3597 <eq left="cmpf" right="#gt"/> 3598 <reserved/> 3599 <reserved/> 3600 <reserved/> 3601 <reserved/> 3602 </derived> 3603 </ins> 3604 3605 <ins name="+BRANCHZ.s32" mask="0xff038" exact="0x6f008" last="true" dests="0"> 3606 <src start="0"/> 3607 <src start="6" mask="0xf7"/> 3608 <mod name="cmpf" size="2"> 3609 <opt>gt</opt> 3610 <opt>ge</opt> 3611 <opt>lt</opt> 3612 <opt>le</opt> 3613 </mod> 3614 <derived start="9" size="3"> 3615 <eq left="cmpf" right="#lt"/> 3616 <eq left="cmpf" right="#le"/> 3617 <eq left="cmpf" right="#ge"/> 3618 <eq left="cmpf" right="#gt"/> 3619 <reserved/> 3620 <reserved/> 3621 <reserved/> 3622 <reserved/> 3623 </derived> 3624 </ins> 3625 3626 <ins name="+BRANCHZ.u16" mask="0xff008" exact="0x6f000" last="true" dests="0"> 3627 <src start="0"/> 3628 <src start="6" mask="0xf7"/> 3629 <mod name="widen0" size="2"> 3630 <opt>none</opt> 3631 <opt>h0</opt> 3632 <opt>h1</opt> 3633 </mod> 3634 <mod name="cmpf" size="2"> 3635 <opt>gt</opt> 3636 <opt>ge</opt> 3637 <opt>lt</opt> 3638 <opt>le</opt> 3639 </mod> 3640 <derived start="4" size="2"> 3641 <reserved/> 3642 <eq left="widen0" right="#h1"/> 3643 <eq left="widen0" right="#h0"/> 3644 <reserved/> 3645 </derived> 3646 <derived start="9" size="3"> 3647 <eq left="cmpf" right="#lt"/> 3648 <eq left="cmpf" right="#le"/> 3649 <eq left="cmpf" right="#ge"/> 3650 <eq left="cmpf" right="#gt"/> 3651 <reserved/> 3652 <reserved/> 3653 <reserved/> 3654 <reserved/> 3655 </derived> 3656 </ins> 3657 3658 <ins name="+BRANCHZ.u32" mask="0xff038" exact="0x6f000" last="true" dests="0"> 3659 <src start="0"/> 3660 <src start="6" mask="0xf7"/> 3661 <mod name="cmpf" size="2"> 3662 <opt>gt</opt> 3663 <opt>ge</opt> 3664 <opt>lt</opt> 3665 <opt>le</opt> 3666 </mod> 3667 <derived start="9" size="3"> 3668 <eq left="cmpf" right="#lt"/> 3669 <eq left="cmpf" right="#le"/> 3670 <eq left="cmpf" right="#ge"/> 3671 <eq left="cmpf" right="#gt"/> 3672 <reserved/> 3673 <reserved/> 3674 <reserved/> 3675 <reserved/> 3676 </derived> 3677 </ins> 3678 3679 <ins name="+BRANCH_DIVERG" mask="0xffe3f" exact="0x6f83c" last="true" dests="0"> 3680 <src start="6" mask="0xf7"/> 3681 </ins> 3682 3683 <ins name="+BRANCH_LOWBITS.f32" mask="0xffe38" exact="0x6fa38" last="true" dests="0"> 3684 <src start="0"/> 3685 <src start="6" mask="0xf7"/> 3686 </ins> 3687 3688 <ins name="+BRANCH_NO_DIVERG" mask="0xffe3f" exact="0x6fa34" last="true" dests="0"> 3689 <src start="6" mask="0xf7"/> 3690 </ins> 3691 3692 <ins name="+CLPER_V6.i32" mask="0xfffc0" exact="0x3f0c0"> 3693 <src start="0" mask="0x7"/> 3694 <src start="3"/> 3695 </ins> 3696 3697 <ins name="+CLPER.i32" mask="0xfc000" exact="0x7c000"> 3698 <src start="0" mask="0x7"/> 3699 <src start="3"/> 3700 <mod name="lane_op" start="6" size="2"> 3701 <opt>none</opt> 3702 <opt>xor</opt> 3703 <opt>accumulate</opt> 3704 <opt>shift</opt> 3705 </mod> 3706 <mod name="subgroup" start="8" size="2"> 3707 <opt>subgroup2</opt> 3708 <opt>subgroup4</opt> 3709 <opt>subgroup8</opt> 3710 </mod> 3711 <mod name="inactive_result" start="10" size="4"> 3712 <opt>zero</opt> 3713 <opt>umax</opt> 3714 <opt>i1</opt> 3715 <opt>v2i1</opt> 3716 <opt>smin</opt> 3717 <opt>smax</opt> 3718 <opt>v2smin</opt> 3719 <opt>v2smax</opt> 3720 <opt>v4smin</opt> 3721 <opt>v4smax</opt> 3722 <opt>f1</opt> 3723 <opt>v2f1</opt> 3724 <opt>infn</opt> 3725 <opt>inf</opt> 3726 <opt>v2infn</opt> 3727 <opt>v2inf</opt> 3728 </mod> 3729 </ins> 3730 3731 <ins name="+CUBEFACE2" mask="0xffff8" exact="0x3de58"> 3732 <src start="0"/> 3733 </ins> 3734 3735 <ins name="+CUBE_SSEL" mask="0xffc00" exact="0x3e000"> 3736 <src start="0"/> 3737 <src start="3"/> 3738 <src start="6"/> 3739 <mod name="neg0" size="1" opt="neg"/> 3740 <mod name="neg1" size="1" opt="neg"/> 3741 <derived start="9" size="1"> 3742 <and> 3743 <eq left="neg0" right="#none"/> 3744 <eq left="neg1" right="#none"/> 3745 </and> 3746 <and> 3747 <eq left="neg0" right="#neg"/> 3748 <eq left="neg1" right="#neg"/> 3749 </and> 3750 </derived> 3751 </ins> 3752 3753 <ins name="+CUBE_TSEL" mask="0xffc00" exact="0x3e400"> 3754 <src start="0"/> 3755 <src start="3"/> 3756 <src start="6"/> 3757 <mod name="neg0" size="1" opt="neg"/> 3758 <mod name="neg1" size="1" opt="neg"/> 3759 <derived start="9" size="1"> 3760 <and> 3761 <eq left="neg0" right="#none"/> 3762 <eq left="neg1" right="#none"/> 3763 </and> 3764 <and> 3765 <eq left="neg0" right="#neg"/> 3766 <eq left="neg1" right="#neg"/> 3767 </and> 3768 </derived> 3769 </ins> 3770 3771 <ins name="+DISCARD.f32" mask="0xff800" exact="0xc8800" dests="0"> 3772 <src start="0"/> 3773 <src start="3"/> 3774 <mod name="cmpf" size="3"> 3775 <opt>eq</opt> 3776 <opt>gt</opt> 3777 <opt>ge</opt> 3778 <opt>ne</opt> 3779 <opt>lt</opt> 3780 <opt>le</opt> 3781 </mod> 3782 <mod name="widen0" size="2"> 3783 <opt>none</opt> 3784 <opt>h0</opt> 3785 <opt>h1</opt> 3786 </mod> 3787 <mod name="widen1" size="2"> 3788 <opt>none</opt> 3789 <opt>h0</opt> 3790 <opt>h1</opt> 3791 </mod> 3792 <derived start="6" size="2"> 3793 <eq left="cmpf" right="#eq"/> 3794 <eq left="cmpf" right="#ne"/> 3795 <eq left="cmpf" right="#lt"/> 3796 <eq left="cmpf" right="#le"/> 3797 </derived> 3798 <derived start="8" size="3"> 3799 <and> 3800 <eq left="widen0" right="#h0"/> 3801 <eq left="widen1" right="#h0"/> 3802 </and> 3803 <and> 3804 <eq left="widen0" right="#h1"/> 3805 <eq left="widen1" right="#h0"/> 3806 </and> 3807 <and> 3808 <eq left="widen0" right="#h0"/> 3809 <eq left="widen1" right="#h1"/> 3810 </and> 3811 <and> 3812 <eq left="widen0" right="#h1"/> 3813 <eq left="widen1" right="#h1"/> 3814 </and> 3815 <and> 3816 <eq left="widen0" right="#none"/> 3817 <eq left="widen1" right="#none"/> 3818 </and> 3819 <reserved/> 3820 <reserved/> 3821 <reserved/> 3822 </derived> 3823 <swap left="0" right="1"> 3824 <or> 3825 <eq left="cmpf" right="#gt"/> 3826 <eq left="cmpf" right="#ge"/> 3827 </or> 3828 <rewrite name="cmpf"> 3829 <map from="gt" to="lt"/> 3830 <map from="ge" to="le"/> 3831 </rewrite> 3832 </swap> 3833 </ins> 3834 3835 <ins name="+DOORBELL" mask="0xffff8" exact="0xd7860" unused="true" message="job_management" dests="0"> 3836 <src start="0"/> 3837 </ins> 3838 3839 <ins name="+EUREKA" mask="0xffff8" exact="0xd7850" unused="true" message="job_management" dests="0"> 3840 <src start="0"/> 3841 </ins> 3842 3843 <ins name="+F16_TO_F32" mask="0xffff0" exact="0x3cd10"> 3844 <src start="0"/> 3845 <mod name="lane0" start="3" size="1" default="h0"> 3846 <opt>h0</opt> 3847 <opt>h1</opt> 3848 </mod> 3849 </ins> 3850 3851 <ins name="+F16_TO_S32"> 3852 <src start="0"/> 3853 <mod name="round" size="3"> 3854 <opt>none</opt> 3855 <opt>rtp</opt> 3856 <opt>rtn</opt> 3857 <opt>rtz</opt> 3858 <opt>rtna</opt> 3859 </mod> 3860 <mod name="lane0" size="1" default="h0"> 3861 <opt>h0</opt> 3862 <opt>h1</opt> 3863 </mod> 3864 <encoding mask="0xfff48" exact="0x3c500"> 3865 <neq left="round" right="#rtna"/> 3866 <copy name="lane0" start="7"/> 3867 <derived start="4" size="2"> 3868 <eq left="round" right="#none"/> 3869 <eq left="round" right="#rtp"/> 3870 <eq left="round" right="#rtn"/> 3871 <eq left="round" right="#rtz"/> 3872 </derived> 3873 </encoding> 3874 <encoding mask="0xfffd8" exact="0x3cc40"> 3875 <eq left="round" right="#rtna"/> 3876 <copy name="lane0" start="5"/> 3877 </encoding> 3878 </ins> 3879 3880 <ins name="+F16_TO_U32"> 3881 <src start="0"/> 3882 <mod name="round" size="3"> 3883 <opt>none</opt> 3884 <opt>rtp</opt> 3885 <opt>rtn</opt> 3886 <opt>rtz</opt> 3887 <opt>rtna</opt> 3888 </mod> 3889 <mod name="lane0" size="1" default="h0"> 3890 <opt>h0</opt> 3891 <opt>h1</opt> 3892 </mod> 3893 <encoding mask="0xfff48" exact="0x3c508"> 3894 <neq left="round" right="#rtna"/> 3895 <copy name="lane0" start="7"/> 3896 <derived start="4" size="2"> 3897 <eq left="round" right="#none"/> 3898 <eq left="round" right="#rtp"/> 3899 <eq left="round" right="#rtn"/> 3900 <eq left="round" right="#rtz"/> 3901 </derived> 3902 </encoding> 3903 <encoding mask="0xfffd8" exact="0x3cc48"> 3904 <eq left="round" right="#rtna"/> 3905 <copy name="lane0" start="5"/> 3906 </encoding> 3907 </ins> 3908 3909 <ins name="+F32_TO_S32"> 3910 <src start="0"/> 3911 <mod name="round" size="3"> 3912 <opt>none</opt> 3913 <opt>rtp</opt> 3914 <opt>rtn</opt> 3915 <opt>rtz</opt> 3916 <opt>rtna</opt> 3917 </mod> 3918 <encoding mask="0xfffc8" exact="0x3c980"> 3919 <neq left="round" right="#rtna"/> 3920 <derived start="4" size="2"> 3921 <eq left="round" right="#none"/> 3922 <eq left="round" right="#rtp"/> 3923 <eq left="round" right="#rtn"/> 3924 <eq left="round" right="#rtz"/> 3925 </derived> 3926 </encoding> 3927 <encoding mask="0xffff8" exact="0x3cca0"> 3928 <eq left="round" right="#rtna"/> 3929 </encoding> 3930 </ins> 3931 3932 <ins name="+F32_TO_U32"> 3933 <src start="0"/> 3934 <mod name="round" size="3"> 3935 <opt>none</opt> 3936 <opt>rtp</opt> 3937 <opt>rtn</opt> 3938 <opt>rtz</opt> 3939 <opt>rtna</opt> 3940 </mod> 3941 <encoding mask="0xfffc8" exact="0x3c988"> 3942 <neq left="round" right="#rtna"/> 3943 <derived start="4" size="2"> 3944 <eq left="round" right="#none"/> 3945 <eq left="round" right="#rtp"/> 3946 <eq left="round" right="#rtn"/> 3947 <eq left="round" right="#rtz"/> 3948 </derived> 3949 </encoding> 3950 <encoding mask="0xffff8" exact="0x3cca8"> 3951 <eq left="round" right="#rtna"/> 3952 </encoding> 3953 </ins> 3954 3955 <ins name="+FADD.f32"> 3956 <src start="0"/> 3957 <src start="3"/> 3958 <mod name="round" size="3"> 3959 <opt>none</opt> 3960 <opt>rtp</opt> 3961 <opt>rtn</opt> 3962 <opt>rtz</opt> 3963 <opt>rto</opt> 3964 </mod> 3965 <mod name="abs1" size="1" opt="abs"/> 3966 <mod name="neg0" size="1" opt="neg"/> 3967 <mod name="neg1" size="1" opt="neg"/> 3968 <mod name="clamp" size="2"> 3969 <opt>none</opt> 3970 <opt>clamp_0_inf</opt> 3971 <opt>clamp_m1_1</opt> 3972 <opt>clamp_0_1</opt> 3973 </mod> 3974 <mod name="abs0" size="1" opt="abs"/> 3975 <mod name="widen0" size="2"> 3976 <opt>none</opt> 3977 <opt>h0</opt> 3978 <opt>h1</opt> 3979 </mod> 3980 <mod name="widen1" size="2"> 3981 <opt>none</opt> 3982 <opt>h0</opt> 3983 <opt>h1</opt> 3984 </mod> 3985 <encoding mask="0xf0000" exact="0x20000"> 3986 <neq left="round" right="#rto"/> 3987 <copy name="abs1" start="6"/> 3988 <copy name="neg0" start="7"/> 3989 <copy name="neg1" start="8"/> 3990 <copy name="clamp" start="11"/> 3991 <copy name="abs0" start="15"/> 3992 <derived start="13" size="2"> 3993 <eq left="round" right="#none"/> 3994 <eq left="round" right="#rtp"/> 3995 <eq left="round" right="#rtn"/> 3996 <eq left="round" right="#rtz"/> 3997 </derived> 3998 <derived start="9" size="2"> 3999 <and> 4000 <eq left="widen0" right="#none"/> 4001 <eq left="widen1" right="#none"/> 4002 </and> 4003 <and> 4004 <eq left="widen0" right="#none"/> 4005 <eq left="widen1" right="#h0"/> 4006 </and> 4007 <and> 4008 <eq left="widen0" right="#none"/> 4009 <eq left="widen1" right="#h1"/> 4010 </and> 4011 <and> 4012 <eq left="widen0" right="#h0"/> 4013 <eq left="widen1" right="#h0"/> 4014 </and> 4015 </derived> 4016 </encoding> 4017 <encoding mask="0xfffc0" exact="0x75200"> 4018 <and> 4019 <eq left="round" right="#rto"/> 4020 <eq left="widen0" right="#none"/> 4021 <eq left="widen1" right="#none"/> 4022 <eq left="abs0" right="#none"/> 4023 <eq left="abs1" right="#none"/> 4024 <eq left="neg0" right="#none"/> 4025 <eq left="neg1" right="#none"/> 4026 <eq left="clamp" right="#none"/> 4027 </and> 4028 </encoding> 4029 <swap left="0" right="1"> 4030 <or> 4031 <and> 4032 <eq left="widen0" right="#h0"/> 4033 <eq left="widen1" right="#none"/> 4034 </and> 4035 <and> 4036 <eq left="widen0" right="#h1"/> 4037 <eq left="widen1" right="#none"/> 4038 </and> 4039 </or> 4040 </swap> 4041 </ins> 4042 4043 <ins name="+FADD.v2f16" mask="0xf0000" exact="0xa0000"> 4044 <src start="0"/> 4045 <src start="3"/> 4046 <mod name="abs1" start="6" size="1" opt="abs"/> 4047 <mod name="neg0" start="7" size="1" opt="neg"/> 4048 <mod name="neg1" start="8" size="1" opt="neg"/> 4049 <mod name="swz0" start="9" size="2" default="h01"> 4050 <opt>h00</opt> 4051 <opt>h10</opt> 4052 <opt>h01</opt> 4053 <opt>h11</opt> 4054 </mod> 4055 <mod name="swz1" start="11" size="2" default="h01"> 4056 <opt>h00</opt> 4057 <opt>h10</opt> 4058 <opt>h01</opt> 4059 <opt>h11</opt> 4060 </mod> 4061 <mod name="round" start="13" size="2"> 4062 <opt>none</opt> 4063 <opt>rtp</opt> 4064 <opt>rtn</opt> 4065 <opt>rtz</opt> 4066 </mod> 4067 <mod name="abs0" start="15" size="1" opt="abs"/> 4068 </ins> 4069 4070 <ins name="+FADD_RSCALE.f32" mask="0xe8000" exact="0x88000"> 4071 <src start="0"/> 4072 <src start="3"/> 4073 <src start="6"/> 4074 <mod name="clamp" size="1" opt="clamp_0_1"/> 4075 <mod name="special" size="1" opt="n"/> 4076 <mod name="round" size="3"> 4077 <opt>none</opt> 4078 <opt>rtp</opt> 4079 <opt>rtn</opt> 4080 <opt>rtz</opt> 4081 <opt>rtna</opt> 4082 </mod> 4083 <mod name="abs1" start="12" size="1" opt="abs"/> 4084 <mod name="neg0" start="13" size="1" opt="neg"/> 4085 <mod name="neg1" start="14" size="1" opt="neg"/> 4086 <mod name="abs0" start="16" size="1" opt="abs"/> 4087 <derived start="9" size="3"> 4088 <and> 4089 <eq left="clamp" right="#none"/> 4090 <eq left="special" right="#none"/> 4091 <eq left="round" right="#none"/> 4092 </and> 4093 <reserved/> 4094 <and> 4095 <eq left="clamp" right="#clamp_0_1"/> 4096 <eq left="special" right="#none"/> 4097 <eq left="round" right="#none"/> 4098 </and> 4099 <and> 4100 <eq left="clamp" right="#none"/> 4101 <eq left="special" right="#n"/> 4102 <eq left="round" right="#rtna"/> 4103 </and> 4104 <and> 4105 <eq left="clamp" right="#none"/> 4106 <eq left="special" right="#n"/> 4107 <eq left="round" right="#none"/> 4108 </and> 4109 <and> 4110 <eq left="clamp" right="#none"/> 4111 <eq left="special" right="#n"/> 4112 <eq left="round" right="#rtp"/> 4113 </and> 4114 <and> 4115 <eq left="clamp" right="#none"/> 4116 <eq left="special" right="#n"/> 4117 <eq left="round" right="#rtn"/> 4118 </and> 4119 <and> 4120 <eq left="clamp" right="#none"/> 4121 <eq left="special" right="#n"/> 4122 <eq left="round" right="#rtz"/> 4123 </and> 4124 </derived> 4125 </ins> 4126 4127 <ins name="+FATAN_ASSIST.f16" mask="0xfff00" exact="0x67800" unused="true" table="true"> 4128 <src start="0" mask="0xf7"/> 4129 <src start="3" mask="0xf7"/> 4130 <mod name="lane1" start="6" size="1" default="h0"> 4131 <opt>h0</opt> 4132 <opt>h1</opt> 4133 </mod> 4134 <mod name="lane0" start="7" size="1" default="h0"> 4135 <opt>h0</opt> 4136 <opt>h1</opt> 4137 </mod> 4138 </ins> 4139 4140 <ins name="+FATAN_ASSIST.f32" mask="0xfffc0" exact="0x67a00" unused="true" table="true"> 4141 <src start="0" mask="0xf7"/> 4142 <src start="3" mask="0xf7"/> 4143 </ins> 4144 4145 <ins name="+FATAN_TABLE.f16" mask="0xfff00" exact="0x67900" unused="true" table="true"> 4146 <src start="0" mask="0xf7"/> 4147 <src start="3" mask="0xf7"/> 4148 <mod name="lane1" start="6" size="1" default="h0"> 4149 <opt>h0</opt> 4150 <opt>h1</opt> 4151 </mod> 4152 <mod name="lane0" start="7" size="1" default="h0"> 4153 <opt>h0</opt> 4154 <opt>h1</opt> 4155 </mod> 4156 </ins> 4157 4158 <ins name="+FATAN_TABLE.f32" mask="0xfffc0" exact="0x67a40" unused="true" table="true"> 4159 <src start="0" mask="0xf7"/> 4160 <src start="3" mask="0xf7"/> 4161 </ins> 4162 4163 <ins name="+FCMP.f32" mask="0xf0000" exact="0x30000"> 4164 <src start="0"/> 4165 <src start="3"/> 4166 <mod name="widen0" size="2"> 4167 <opt>none</opt> 4168 <opt>h0</opt> 4169 <opt>h1</opt> 4170 </mod> 4171 <mod name="widen1" size="2"> 4172 <opt>none</opt> 4173 <opt>h0</opt> 4174 <opt>h1</opt> 4175 </mod> 4176 <mod name="neg0" size="1" opt="neg"/> 4177 <mod name="neg1" size="1" opt="neg"/> 4178 <mod name="cmpf" start="6" size="3"> 4179 <opt>eq</opt> 4180 <opt>gt</opt> 4181 <opt>ge</opt> 4182 <opt>ne</opt> 4183 <opt>lt</opt> 4184 <opt>le</opt> 4185 <opt>gtlt</opt> 4186 <opt>total</opt> 4187 </mod> 4188 <mod name="abs0" start="11" size="1" opt="abs"/> 4189 <mod name="abs1" start="12" size="1" opt="abs"/> 4190 <mod name="result_type" start="14" size="2" default="i1"> 4191 <opt>i1</opt> 4192 <opt>f1</opt> 4193 <opt>m1</opt> 4194 </mod> 4195 <derived start="9" size="2"> 4196 <and> 4197 <eq left="widen0" right="#none"/> 4198 <eq left="widen1" right="#none"/> 4199 </and> 4200 <and> 4201 <eq left="widen0" right="#none"/> 4202 <eq left="widen1" right="#h0"/> 4203 </and> 4204 <and> 4205 <eq left="widen0" right="#none"/> 4206 <eq left="widen1" right="#h1"/> 4207 </and> 4208 <and> 4209 <eq left="widen0" right="#h0"/> 4210 <eq left="widen1" right="#h0"/> 4211 </and> 4212 </derived> 4213 <derived start="13" size="1"> 4214 <and> 4215 <eq left="neg0" right="#none"/> 4216 <eq left="neg1" right="#none"/> 4217 </and> 4218 <and> 4219 <eq left="neg0" right="#neg"/> 4220 <eq left="neg1" right="#none"/> 4221 </and> 4222 </derived> 4223 <swap left="0" right="1"> 4224 <or> 4225 <and> 4226 <eq left="neg0" right="#none"/> 4227 <eq left="neg1" right="#neg"/> 4228 </and> 4229 <and> 4230 <eq left="widen0" right="#h0"/> 4231 <eq left="widen1" right="#none"/> 4232 </and> 4233 <and> 4234 <eq left="widen0" right="#h1"/> 4235 <eq left="widen1" right="#none"/> 4236 </and> 4237 </or> 4238 <rewrite name="cmpf"> 4239 <map from="lt" to="gt"/> 4240 <map from="le" to="ge"/> 4241 <map from="gt" to="lt"/> 4242 <map from="ge" to="le"/> 4243 </rewrite> 4244 </swap> 4245 </ins> 4246 4247 <ins name="+FCMP.v2f16" mask="0xf0000" exact="0xb0000"> 4248 <src start="0"/> 4249 <src start="3"/> 4250 <mod name="neg0" size="1" opt="neg"/> 4251 <mod name="neg1" size="1" opt="neg"/> 4252 <mod name="cmpf" start="6" size="3"> 4253 <opt>eq</opt> 4254 <opt>gt</opt> 4255 <opt>ge</opt> 4256 <opt>ne</opt> 4257 <opt>lt</opt> 4258 <opt>le</opt> 4259 <opt>gtlt</opt> 4260 <opt>total</opt> 4261 </mod> 4262 <mod name="swz0" start="9" size="2" default="h01"> 4263 <opt>h00</opt> 4264 <opt>h10</opt> 4265 <opt>h01</opt> 4266 <opt>h11</opt> 4267 </mod> 4268 <mod name="swz1" start="11" size="2" default="h01"> 4269 <opt>h00</opt> 4270 <opt>h10</opt> 4271 <opt>h01</opt> 4272 <opt>h11</opt> 4273 </mod> 4274 <mod name="result_type" start="14" size="2" default="i1"> 4275 <opt>i1</opt> 4276 <opt>f1</opt> 4277 <opt>m1</opt> 4278 </mod> 4279 <derived start="13" size="1"> 4280 <and> 4281 <eq left="neg0" right="#none"/> 4282 <eq left="neg1" right="#none"/> 4283 </and> 4284 <and> 4285 <eq left="neg0" right="#neg"/> 4286 <eq left="neg1" right="#none"/> 4287 </and> 4288 </derived> 4289 <swap left="0" right="1"> 4290 <and> 4291 <eq left="neg0" right="#none"/> 4292 <eq left="neg1" right="#neg"/> 4293 </and> 4294 <rewrite name="cmpf"> 4295 <map from="lt" to="gt"/> 4296 <map from="le" to="ge"/> 4297 <map from="gt" to="lt"/> 4298 <map from="ge" to="le"/> 4299 </rewrite> 4300 </swap> 4301 </ins> 4302 4303 <ins name="+FCOS_TABLE.u6" mask="0xfffe8" exact="0x67a88" table="true"> 4304 <src start="0" mask="0xf7"/> 4305 <mod name="offset" start="4" size="1" opt="offset"/> 4306 </ins> 4307 4308 <ins name="+FEXP.f32" mask="0xfffc0" exact="0x66ac0" table="true"> 4309 <src start="0" mask="0xf7"/> 4310 <src start="3" mask="0xf7"/> 4311 </ins> 4312 4313 <ins name="+FEXP_TABLE.u4" mask="0xfffe0" exact="0x67ac0" table="true"> 4314 <src start="0" mask="0xf7"/> 4315 <mod name="adj" start="3" size="2"> 4316 <opt>none</opt> 4317 <opt>small</opt> 4318 <opt>low</opt> 4319 </mod> 4320 </ins> 4321 4322 <ins name="+FLOGD.f32" mask="0xffff8" exact="0x66340" table="true"> 4323 <src start="0" mask="0xf7"/> 4324 </ins> 4325 4326 <ins name="+FLOG_TABLE.f32" table="true"> 4327 <src start="0" mask="0xf7"/> 4328 <mod name="widen0" size="2"> 4329 <opt>none</opt> 4330 <opt>h0</opt> 4331 <opt>h1</opt> 4332 </mod> 4333 <mod name="mode" size="2"> 4334 <opt>red</opt> 4335 <opt>base2</opt> 4336 <opt>natural</opt> 4337 </mod> 4338 <mod name="precision" size="2"> 4339 <opt>none</opt> 4340 <opt>high</opt> 4341 <opt>low</opt> 4342 </mod> 4343 <mod name="neg0" size="1" opt="neg"/> 4344 <mod name="abs0" size="1" opt="abs"/> 4345 <mod name="divzero" size="1" opt="divzero"/> 4346 <encoding mask="0xfffc0" exact="0x67300"> 4347 <and> 4348 <eq left="mode" right="#red"/> 4349 <eq left="widen0" right="#none"/> 4350 <eq left="precision" right="#none"/> 4351 </and> 4352 <copy name="neg0" start="3"/> 4353 <copy name="abs0" start="4"/> 4354 <copy name="divzero" start="5"/> 4355 </encoding> 4356 <encoding mask="0xfff40" exact="0x67340"> 4357 <and> 4358 <eq left="mode" right="#red"/> 4359 <neq left="widen0" right="#none"/> 4360 <eq left="precision" right="#none"/> 4361 </and> 4362 <copy name="neg0" start="3"/> 4363 <copy name="abs0" start="4"/> 4364 <copy name="divzero" start="5"/> 4365 <derived start="7" size="1"> 4366 <eq left="widen0" right="#h0"/> 4367 <eq left="widen0" right="#h1"/> 4368 </derived> 4369 </encoding> 4370 <encoding mask="0xfffc0" exact="0x67b00"> 4371 <and> 4372 <neq left="mode" right="#red"/> 4373 <eq left="widen0" right="#none"/> 4374 <eq left="precision" right="#none"/> 4375 <eq left="divzero" right="#none"/> 4376 </and> 4377 <copy name="neg0" start="3"/> 4378 <copy name="abs0" start="4"/> 4379 <derived start="5" size="1"> 4380 <eq left="mode" right="#base2"/> 4381 <eq left="mode" right="#natural"/> 4382 </derived> 4383 </encoding> 4384 <encoding mask="0xfff40" exact="0x67b40"> 4385 <and> 4386 <neq left="mode" right="#red"/> 4387 <neq left="widen0" right="#none"/> 4388 <eq left="precision" right="#none"/> 4389 <eq left="divzero" right="#none"/> 4390 </and> 4391 <copy name="neg0" start="3"/> 4392 <copy name="abs0" start="4"/> 4393 <derived start="5" size="1"> 4394 <eq left="mode" right="#base2"/> 4395 <eq left="mode" right="#natural"/> 4396 </derived> 4397 <derived start="7" size="1"> 4398 <eq left="widen0" right="#h0"/> 4399 <eq left="widen0" right="#h1"/> 4400 </derived> 4401 </encoding> 4402 <encoding mask="0xfffe0" exact="0x67ae0"> 4403 <and> 4404 <neq left="mode" right="#red"/> 4405 <eq left="widen0" right="#none"/> 4406 <neq left="precision" right="#none"/> 4407 <eq left="divzero" right="#none"/> 4408 <eq left="abs0" right="#none"/> 4409 <eq left="neg0" right="#none"/> 4410 </and> 4411 <derived start="3" size="1"> 4412 <eq left="mode" right="#natural"/> 4413 <eq left="mode" right="#base2"/> 4414 </derived> 4415 <derived start="4" size="1"> 4416 <eq left="precision" right="#high"/> 4417 <eq left="precision" right="#low"/> 4418 </derived> 4419 </encoding> 4420 </ins> 4421 4422 <ins name="+FMAX.f32" mask="0xf0600" exact="0x0"> 4423 <src start="0"/> 4424 <src start="3"/> 4425 <mod name="abs1" start="6" size="1" opt="abs"/> 4426 <mod name="neg0" start="7" size="1" opt="neg"/> 4427 <mod name="neg1" start="8" size="1" opt="neg"/> 4428 <mod name="clamp" start="11" size="2"> 4429 <opt>none</opt> 4430 <opt>clamp_0_inf</opt> 4431 <opt>clamp_m1_1</opt> 4432 <opt>clamp_0_1</opt> 4433 </mod> 4434 <mod name="sem" start="13" size="2" default="nan_suppress"> 4435 <opt>nan_suppress</opt> 4436 <opt>nan_propagate</opt> 4437 <opt>c</opt> 4438 <opt>inverse_c</opt> 4439 </mod> 4440 <mod name="abs0" start="15" size="1" opt="abs"/> 4441 </ins> 4442 4443 <ins name="+FMAX.v2f16" mask="0xf8000" exact="0x80000"> 4444 <src start="0"/> 4445 <src start="3"/> 4446 <mod name="abs0" size="1" opt="abs"/> 4447 <mod name="abs1" size="1" opt="abs"/> 4448 <mod name="neg0" start="7" size="1" opt="neg"/> 4449 <mod name="neg1" start="8" size="1" opt="neg"/> 4450 <mod name="swz0" start="9" size="2" default="h01"> 4451 <opt>h00</opt> 4452 <opt>h10</opt> 4453 <opt>h01</opt> 4454 <opt>h11</opt> 4455 </mod> 4456 <mod name="swz1" start="11" size="2" default="h01"> 4457 <opt>h00</opt> 4458 <opt>h10</opt> 4459 <opt>h01</opt> 4460 <opt>h11</opt> 4461 </mod> 4462 <mod name="sem" start="13" size="2" default="nan_suppress"> 4463 <opt>nan_suppress</opt> 4464 <opt>nan_propagate</opt> 4465 <opt>c</opt> 4466 <opt>inverse_c</opt> 4467 </mod> 4468 <derived start="6" size="1"> 4469 <or> 4470 <and> 4471 <eq left="abs0" right="#abs"/> 4472 <eq left="abs1" right="#none"/> 4473 <eq left="ordering" right="#gt"/> 4474 </and> 4475 <and> 4476 <eq left="abs0" right="#none"/> 4477 <eq left="abs1" right="#none"/> 4478 <neq left="ordering" right="#gt"/> 4479 </and> 4480 </or> 4481 <or> 4482 <and> 4483 <eq left="abs0" right="#abs"/> 4484 <eq left="abs1" right="#abs"/> 4485 <eq left="ordering" right="#gt"/> 4486 </and> 4487 <and> 4488 <eq left="abs0" right="#abs"/> 4489 <eq left="abs1" right="#none"/> 4490 <neq left="ordering" right="#gt"/> 4491 </and> 4492 </or> 4493 </derived> 4494 <swap left="0" right="1"> 4495 <or> 4496 <and> 4497 <eq left="abs0" right="#none"/> 4498 <eq left="ordering" right="#gt"/> 4499 </and> 4500 <and> 4501 <eq left="abs1" right="#abs"/> 4502 <neq left="ordering" right="#gt"/> 4503 </and> 4504 </or> 4505 <rewrite name="sem"> 4506 <map from="c" to="inverse_c"/> 4507 <map from="inverse_c" to="c"/> 4508 </rewrite> 4509 </swap> 4510 </ins> 4511 4512 <ins name="+FMIN.f32" mask="0xf0600" exact="0x10000"> 4513 <src start="0"/> 4514 <src start="3"/> 4515 <mod name="abs1" start="6" size="1" opt="abs"/> 4516 <mod name="neg0" start="7" size="1" opt="neg"/> 4517 <mod name="neg1" start="8" size="1" opt="neg"/> 4518 <mod name="clamp" start="11" size="2"> 4519 <opt>none</opt> 4520 <opt>clamp_0_inf</opt> 4521 <opt>clamp_m1_1</opt> 4522 <opt>clamp_0_1</opt> 4523 </mod> 4524 <mod name="sem" start="13" size="2" default="nan_suppress"> 4525 <opt>nan_suppress</opt> 4526 <opt>nan_propagate</opt> 4527 <opt>c</opt> 4528 <opt>inverse_c</opt> 4529 </mod> 4530 <mod name="abs0" start="15" size="1" opt="abs"/> 4531 </ins> 4532 4533 <ins name="+FMIN.v2f16" mask="0xf8000" exact="0x90000"> 4534 <src start="0"/> 4535 <src start="3"/> 4536 <mod name="abs0" size="1" opt="abs"/> 4537 <mod name="abs1" size="1" opt="abs"/> 4538 <mod name="neg0" start="7" size="1" opt="neg"/> 4539 <mod name="neg1" start="8" size="1" opt="neg"/> 4540 <mod name="swz0" start="9" size="2" default="h01"> 4541 <opt>h00</opt> 4542 <opt>h10</opt> 4543 <opt>h01</opt> 4544 <opt>h11</opt> 4545 </mod> 4546 <mod name="swz1" start="11" size="2" default="h01"> 4547 <opt>h00</opt> 4548 <opt>h10</opt> 4549 <opt>h01</opt> 4550 <opt>h11</opt> 4551 </mod> 4552 <mod name="sem" start="13" size="2" default="nan_suppress"> 4553 <opt>nan_suppress</opt> 4554 <opt>nan_propagate</opt> 4555 <opt>c</opt> 4556 <opt>inverse_c</opt> 4557 </mod> 4558 <derived start="6" size="1"> 4559 <or> 4560 <and> 4561 <eq left="abs0" right="#abs"/> 4562 <eq left="abs1" right="#none"/> 4563 <eq left="ordering" right="#gt"/> 4564 </and> 4565 <and> 4566 <eq left="abs0" right="#none"/> 4567 <eq left="abs1" right="#none"/> 4568 <neq left="ordering" right="#gt"/> 4569 </and> 4570 </or> 4571 <or> 4572 <and> 4573 <eq left="abs0" right="#abs"/> 4574 <eq left="abs1" right="#abs"/> 4575 <eq left="ordering" right="#gt"/> 4576 </and> 4577 <and> 4578 <eq left="abs0" right="#abs"/> 4579 <eq left="abs1" right="#none"/> 4580 <neq left="ordering" right="#gt"/> 4581 </and> 4582 </or> 4583 </derived> 4584 <swap left="0" right="1"> 4585 <or> 4586 <and> 4587 <eq left="abs0" right="#none"/> 4588 <eq left="ordering" right="#gt"/> 4589 </and> 4590 <and> 4591 <eq left="abs1" right="#abs"/> 4592 <neq left="ordering" right="#gt"/> 4593 </and> 4594 </or> 4595 <rewrite name="sem"> 4596 <map from="c" to="inverse_c"/> 4597 <map from="inverse_c" to="c"/> 4598 </rewrite> 4599 </swap> 4600 </ins> 4601 4602 <ins name="+FPCLASS.f16" mask="0xffff0" exact="0x67c40" table="true"> 4603 <src start="0" mask="0xf7"/> 4604 <mod name="lane0" start="3" size="1" default="h0"> 4605 <opt>h0</opt> 4606 <opt>h1</opt> 4607 </mod> 4608 </ins> 4609 4610 <ins name="+FPCLASS.f32" mask="0xffff8" exact="0x67c50" table="true"> 4611 <src start="0" mask="0xf7"/> 4612 </ins> 4613 4614 <ins name="+FPOW_SC_APPLY" mask="0xfffc0" exact="0x75080"> 4615 <src start="0"/> 4616 <src start="3"/> 4617 </ins> 4618 4619 <ins name="+FPOW_SC_DET.f16" table="true"> 4620 <src start="0" mask="0xf7"/> 4621 <src start="3" mask="0xf7"/> 4622 <mod name="func" size="2"> 4623 <opt>pow</opt> 4624 <opt>powr</opt> 4625 <opt>pown</opt> 4626 <opt>rootn</opt> 4627 </mod> 4628 <mod name="lane1" size="2"> 4629 <opt>h0</opt> 4630 <opt>h1</opt> 4631 <opt>none</opt> 4632 </mod> 4633 <mod name="lane0" start="7" size="1" default="h0"> 4634 <opt>h0</opt> 4635 <opt>h1</opt> 4636 </mod> 4637 <encoding mask="0xffe00" exact="0x67400"> 4638 <or> 4639 <eq left="func" right="#pow"/> 4640 <eq left="func" right="#powr"/> 4641 </or> 4642 <derived start="6" size="1"> 4643 <or> 4644 <eq alias="true" left="lane1" right="#none"/> 4645 <eq left="lane1" right="#h0"/> 4646 </or> 4647 <eq left="lane1" right="#h1"/> 4648 </derived> 4649 <derived start="8" size="1"> 4650 <eq left="func" right="#pow"/> 4651 <eq left="func" right="#powr"/> 4652 </derived> 4653 </encoding> 4654 <encoding mask="0xffe40" exact="0x67600"> 4655 <and> 4656 <or> 4657 <eq left="func" right="#pown"/> 4658 <eq left="func" right="#rootn"/> 4659 </or> 4660 <eq left="lane1" right="#none"/> 4661 </and> 4662 <derived start="8" size="1"> 4663 <eq left="func" right="#pown"/> 4664 <eq left="func" right="#rootn"/> 4665 </derived> 4666 </encoding> 4667 </ins> 4668 4669 <ins name="+FPOW_SC_DET.f32" mask="0xffe40" exact="0x67640" table="true"> 4670 <src start="0" mask="0xf7"/> 4671 <src start="3" mask="0xf7"/> 4672 <mod name="func" start="7" size="2"> 4673 <opt>pow</opt> 4674 <opt>powr</opt> 4675 <opt>pown</opt> 4676 <opt>rootn</opt> 4677 </mod> 4678 </ins> 4679 4680 <ins name="+FRCBRT_APPROX_A.f32" unused="true" table="true"> 4681 <src start="0" mask="0xf7"/> 4682 <mod name="widen0" size="2"> 4683 <opt>none</opt> 4684 <opt>h0</opt> 4685 <opt>h1</opt> 4686 </mod> 4687 <mod name="neg0" start="3" size="1" opt="neg"/> 4688 <mod name="abs0" start="4" size="1" opt="abs"/> 4689 <mod name="divzero" start="5" size="1" opt="divzero"/> 4690 <encoding mask="0xfffc0" exact="0x67200"> 4691 <eq left="widen0" right="#none"/> 4692 </encoding> 4693 <encoding mask="0xfff40" exact="0x67240"> 4694 <neq left="widen0" right="#none"/> 4695 <derived start="7" size="1"> 4696 <eq left="widen0" right="#h0"/> 4697 <eq left="widen0" right="#h1"/> 4698 </derived> 4699 </encoding> 4700 </ins> 4701 4702 <ins name="+FRCBRT_APPROX_B.f32" mask="0xffff8" exact="0x67ab0" unused="true" table="true"> 4703 <src start="0" mask="0xf7"/> 4704 </ins> 4705 4706 <ins name="+FRCBRT_APPROX_C.f32" mask="0xffff8" exact="0x67ab8" unused="true" table="true"> 4707 <src start="0" mask="0xf7"/> 4708 </ins> 4709 4710 <ins name="+FRCP.f16" mask="0xffec0" exact="0x67080" table="true"> 4711 <src start="0" mask="0xf7"/> 4712 <mod name="neg0" start="3" size="1" opt="neg"/> 4713 <mod name="abs0" start="4" size="1" opt="abs"/> 4714 <mod name="divzero" start="5" size="1" opt="divzero"/> 4715 <mod name="lane0" start="8" size="1" default="h0"> 4716 <opt>h0</opt> 4717 <opt>h1</opt> 4718 </mod> 4719 </ins> 4720 4721 <ins name="+FRCP.f32" mask="0xfffa0" exact="0x66000" table="true"> 4722 <src start="0" mask="0xf7"/> 4723 <mod name="widen0" size="2"> 4724 <opt>none</opt> 4725 </mod> 4726 <mod name="neg0" start="3" size="1" opt="neg"/> 4727 <mod name="abs0" start="4" size="1" opt="abs"/> 4728 <derived start="6" size="1"> 4729 <eq left="widen0" right="#none"/> 4730 <reserved/> 4731 </derived> 4732 </ins> 4733 4734 <ins name="+FRCP_APPROX.f32" table="true"> 4735 <src start="0" mask="0xf7"/> 4736 <mod name="widen0" size="2"> 4737 <opt>none</opt> 4738 <opt>h0</opt> 4739 <opt>h1</opt> 4740 </mod> 4741 <mod name="neg0" start="3" size="1" opt="neg"/> 4742 <mod name="abs0" start="4" size="1" opt="abs"/> 4743 <mod name="divzero" start="5" size="1" opt="divzero"/> 4744 <encoding mask="0xfffc0" exact="0x67000"> 4745 <eq left="widen0" right="#none"/> 4746 </encoding> 4747 <encoding mask="0xfff40" exact="0x67040"> 4748 <neq left="widen0" right="#none"/> 4749 <derived start="7" size="1"> 4750 <eq left="widen0" right="#h0"/> 4751 <eq left="widen0" right="#h1"/> 4752 </derived> 4753 </encoding> 4754 </ins> 4755 4756 <ins name="+FREXPE.f32"> 4757 <src start="0"/> 4758 <mod name="neg0" size="1" opt="neg"/> 4759 <mod name="sqrt" size="1" opt="sqrt"/> 4760 <mod name="log" size="1" opt="log"/> 4761 <mod name="widen0" start="3" size="2"> 4762 <reserved/> 4763 <opt>none</opt> 4764 <opt>h0</opt> 4765 <opt>h1</opt> 4766 </mod> 4767 <encoding mask="0xffea0" exact="0x3dc20"> 4768 <eq left="log" right="#none"/> 4769 <copy name="neg0" start="6"/> 4770 <copy name="sqrt" start="8"/> 4771 </encoding> 4772 <encoding mask="0xfffe0" exact="0x3de20"> 4773 <and> 4774 <eq left="log" right="#log"/> 4775 <eq left="sqrt" right="#none"/> 4776 <eq left="neg0" right="#none"/> 4777 </and> 4778 </encoding> 4779 </ins> 4780 4781 <ins name="+FREXPE.v2f16"> 4782 <src start="0"/> 4783 <mod name="neg0" size="1" opt="neg"/> 4784 <mod name="sqrt" size="1" opt="sqrt"/> 4785 <mod name="log" size="1" opt="log"/> 4786 <mod name="swz0" start="3" size="2" default="h01"> 4787 <opt>h00</opt> 4788 <opt>h10</opt> 4789 <opt>h01</opt> 4790 <opt>h11</opt> 4791 </mod> 4792 <encoding mask="0xffea0" exact="0x3dc00"> 4793 <eq left="log" right="#none"/> 4794 <copy name="neg0" start="6"/> 4795 <copy name="sqrt" start="8"/> 4796 </encoding> 4797 <encoding mask="0xfffe0" exact="0x3de00"> 4798 <and> 4799 <eq left="log" right="#log"/> 4800 <eq left="sqrt" right="#none"/> 4801 <eq left="neg0" right="#none"/> 4802 </and> 4803 </encoding> 4804 </ins> 4805 4806 <ins name="+FREXPM.f32"> 4807 <src start="0"/> 4808 <mod name="abs0" start="6" size="1" opt="abs"/> 4809 <mod name="sqrt" size="1" opt="sqrt"/> 4810 <mod name="log" size="1" opt="log"/> 4811 <mod name="widen0" start="3" size="2"> 4812 <reserved/> 4813 <opt>none</opt> 4814 <opt>h0</opt> 4815 <opt>h1</opt> 4816 </mod> 4817 <mod name="neg0" size="1" opt="neg"/> 4818 <encoding mask="0xfff20" exact="0x3db20"> 4819 <and> 4820 <eq left="log" right="#none"/> 4821 <eq left="neg0" right="#none"/> 4822 </and> 4823 <copy name="sqrt" start="7"/> 4824 </encoding> 4825 <encoding mask="0xfff20" exact="0x3da20"> 4826 <and> 4827 <eq left="log" right="#log"/> 4828 <eq left="sqrt" right="#none"/> 4829 </and> 4830 <copy name="neg0" start="7"/> 4831 </encoding> 4832 </ins> 4833 4834 <ins name="+FREXPM.v2f16"> 4835 <src start="0"/> 4836 <mod name="abs0" start="6" size="1" opt="abs"/> 4837 <mod name="sqrt" size="1" opt="sqrt"/> 4838 <mod name="log" size="1" opt="log"/> 4839 <mod name="swz0" start="3" size="2" default="h01"> 4840 <opt>h00</opt> 4841 <opt>h10</opt> 4842 <opt>h01</opt> 4843 <opt>h11</opt> 4844 </mod> 4845 <mod name="neg0" size="1" opt="neg"/> 4846 <encoding mask="0xfff20" exact="0x3db00"> 4847 <and> 4848 <eq left="log" right="#none"/> 4849 <eq left="neg0" right="#none"/> 4850 </and> 4851 <copy name="sqrt" start="7"/> 4852 </encoding> 4853 <encoding mask="0xfff20" exact="0x3da00"> 4854 <and> 4855 <eq left="log" right="#log"/> 4856 <eq left="sqrt" right="#none"/> 4857 </and> 4858 <copy name="neg0" start="7"/> 4859 </encoding> 4860 </ins> 4861 4862 <ins name="+FROUND.f32" mask="0xff860" exact="0x3e820"> 4863 <src start="0"/> 4864 <mod name="abs0" start="7" size="1" opt="abs"/> 4865 <mod name="neg0" start="8" size="1" opt="neg"/> 4866 <mod name="widen0" start="3" size="2"> 4867 <reserved/> 4868 <opt>none</opt> 4869 <opt>h0</opt> 4870 <opt>h1</opt> 4871 </mod> 4872 <mod name="round" start="9" size="2"> 4873 <opt>none</opt> 4874 <opt>rtp</opt> 4875 <opt>rtn</opt> 4876 <opt>rtz</opt> 4877 </mod> 4878 </ins> 4879 4880 <ins name="+FROUND.v2f16" mask="0xff860" exact="0x3e800"> 4881 <src start="0"/> 4882 <mod name="abs0" start="7" size="1" opt="abs"/> 4883 <mod name="neg0" start="8" size="1" opt="neg"/> 4884 <mod name="swz0" start="3" size="2" default="h01"> 4885 <opt>h00</opt> 4886 <opt>h10</opt> 4887 <opt>h01</opt> 4888 <opt>h11</opt> 4889 </mod> 4890 <mod name="round" start="9" size="2"> 4891 <opt>none</opt> 4892 <opt>rtp</opt> 4893 <opt>rtn</opt> 4894 <opt>rtz</opt> 4895 </mod> 4896 </ins> 4897 4898 <ins name="+FRSQ.f16" mask="0xffec0" exact="0x67280" table="true"> 4899 <src start="0" mask="0xf7"/> 4900 <mod name="neg0" start="3" size="1" opt="neg"/> 4901 <mod name="abs0" start="4" size="1" opt="abs"/> 4902 <mod name="divzero" start="5" size="1" opt="divzero"/> 4903 <mod name="lane0" start="8" size="1" default="h0"> 4904 <opt>h0</opt> 4905 <opt>h1</opt> 4906 </mod> 4907 </ins> 4908 4909 <ins name="+FRSQ.f32" mask="0xfffa0" exact="0x66100" table="true"> 4910 <src start="0" mask="0xf7"/> 4911 <mod name="widen0" size="2"> 4912 <opt>none</opt> 4913 </mod> 4914 <mod name="neg0" start="3" size="1" opt="neg"/> 4915 <mod name="abs0" start="4" size="1" opt="abs"/> 4916 <derived start="6" size="1"> 4917 <eq left="widen0" right="#none"/> 4918 <reserved/> 4919 </derived> 4920 </ins> 4921 4922 <ins name="+FRSQ_APPROX.f32" table="true"> 4923 <src start="0" mask="0xf7"/> 4924 <mod name="widen0" size="2"> 4925 <opt>none</opt> 4926 <opt>h0</opt> 4927 <opt>h1</opt> 4928 </mod> 4929 <mod name="neg0" start="3" size="1" opt="neg"/> 4930 <mod name="abs0" start="4" size="1" opt="abs"/> 4931 <mod name="divzero" start="5" size="1" opt="divzero"/> 4932 <encoding mask="0xfffc0" exact="0x67100"> 4933 <eq left="widen0" right="#none"/> 4934 </encoding> 4935 <encoding mask="0xfff40" exact="0x67140"> 4936 <neq left="widen0" right="#none"/> 4937 <derived start="7" size="1"> 4938 <eq left="widen0" right="#h0"/> 4939 <eq left="widen0" right="#h1"/> 4940 </derived> 4941 </encoding> 4942 </ins> 4943 4944 <ins name="+FSINCOS_OFFSET.u6" mask="0xffff0" exact="0x67aa0" table="true"> 4945 <src start="0" mask="0xf7"/> 4946 <mod name="scale" start="3" size="1" opt="scale"/> 4947 </ins> 4948 4949 <ins name="+FSIN_TABLE.u6" mask="0xfffe8" exact="0x67a80" table="true"> 4950 <src start="0" mask="0xf7"/> 4951 <mod name="offset" start="4" size="1" opt="offset"/> 4952 </ins> 4953 4954 <ins name="+HADD.s32" mask="0xfefc0" exact="0xbc640"> 4955 <src start="0"/> 4956 <src start="3"/> 4957 <mod name="round" start="12" size="1" default="rtn"> 4958 <opt>rtn</opt> 4959 <opt>rtp</opt> 4960 </mod> 4961 </ins> 4962 4963 <ins name="+HADD.u32" mask="0xfefc0" exact="0xbc6c0"> 4964 <src start="0"/> 4965 <src start="3"/> 4966 <mod name="round" start="12" size="1" default="rtn"> 4967 <opt>rtn</opt> 4968 <opt>rtp</opt> 4969 </mod> 4970 </ins> 4971 4972 <ins name="+HADD.v2s16" mask="0xfe9c0" exact="0xbc840"> 4973 <src start="0"/> 4974 <src start="3"/> 4975 <mod name="round" start="12" size="1" default="rtn"> 4976 <opt>rtn</opt> 4977 <opt>rtp</opt> 4978 </mod> 4979 <mod name="swap1" start="9" size="1" default="h01"> 4980 <opt>h01</opt> 4981 <opt>h10</opt> 4982 </mod> 4983 <mod name="swap0" start="10" size="1" default="h01"> 4984 <opt>h01</opt> 4985 <opt>h10</opt> 4986 </mod> 4987 </ins> 4988 4989 <ins name="+HADD.v2u16" mask="0xfe9c0" exact="0xbc8c0"> 4990 <src start="0"/> 4991 <src start="3"/> 4992 <mod name="round" start="12" size="1" default="rtn"> 4993 <opt>rtn</opt> 4994 <opt>rtp</opt> 4995 </mod> 4996 <mod name="swap1" start="9" size="1" default="h01"> 4997 <opt>h01</opt> 4998 <opt>h10</opt> 4999 </mod> 5000 <mod name="swap0" start="10" size="1" default="h01"> 5001 <opt>h01</opt> 5002 <opt>h10</opt> 5003 </mod> 5004 </ins> 5005 5006 <ins name="+HADD.v4s8" mask="0xfefc0" exact="0xbc440"> 5007 <src start="0"/> 5008 <src start="3"/> 5009 <mod name="round" start="12" size="1" default="rtn"> 5010 <opt>rtn</opt> 5011 <opt>rtp</opt> 5012 </mod> 5013 </ins> 5014 5015 <ins name="+HADD.v4u8" mask="0xfefc0" exact="0xbc4c0"> 5016 <src start="0"/> 5017 <src start="3"/> 5018 <mod name="round" start="12" size="1" default="rtn"> 5019 <opt>rtn</opt> 5020 <opt>rtp</opt> 5021 </mod> 5022 </ins> 5023 5024 <ins name="+IABS.s32" mask="0xffff8" exact="0x3dea0"> 5025 <src start="0"/> 5026 </ins> 5027 5028 <ins name="+IABS.v2s16" mask="0xfffc8" exact="0x3de88"> 5029 <src start="0"/> 5030 <mod name="swz0" start="4" size="2" default="h01"> 5031 <opt>h00</opt> 5032 <opt>h10</opt> 5033 <opt>h01</opt> 5034 <opt>h11</opt> 5035 </mod> 5036 </ins> 5037 5038 <ins name="+IABS.v4s8" mask="0xffff8" exact="0x3deb0"> 5039 <src start="0"/> 5040 </ins> 5041 5042 <ins name="+IADD.s32"> 5043 <src start="0"/> 5044 <src start="3"/> 5045 <mod name="saturate" start="8" size="1" opt="sat"/> 5046 <mod name="lanes1" size="3"> 5047 <opt>none</opt> 5048 <opt>h0</opt> 5049 <opt>h1</opt> 5050 <opt>b0</opt> 5051 <opt>b1</opt> 5052 <opt>b2</opt> 5053 <opt>b3</opt> 5054 </mod> 5055 <encoding mask="0xffec0" exact="0xbc600"> 5056 <eq left="lanes1" right="#none"/> 5057 </encoding> 5058 <encoding mask="0xffcc0" exact="0xbec00"> 5059 <or> 5060 <eq left="lanes1" right="#h0"/> 5061 <eq left="lanes1" right="#h1"/> 5062 </or> 5063 <derived start="9" size="1"> 5064 <eq left="lanes1" right="#h0"/> 5065 <eq left="lanes1" right="#h1"/> 5066 </derived> 5067 </encoding> 5068 <encoding mask="0xff8c0" exact="0xbe000"> 5069 <or> 5070 <eq left="lanes1" right="#b0"/> 5071 <eq left="lanes1" right="#b1"/> 5072 <eq left="lanes1" right="#b2"/> 5073 <eq left="lanes1" right="#b3"/> 5074 </or> 5075 <derived start="9" size="2"> 5076 <eq left="lanes1" right="#b0"/> 5077 <eq left="lanes1" right="#b1"/> 5078 <eq left="lanes1" right="#b2"/> 5079 <eq left="lanes1" right="#b3"/> 5080 </derived> 5081 </encoding> 5082 </ins> 5083 5084 <ins name="+IADD.u32"> 5085 <src start="0"/> 5086 <src start="3"/> 5087 <mod name="saturate" start="8" size="1" opt="sat"/> 5088 <mod name="lanes1" size="3"> 5089 <opt>none</opt> 5090 <opt>h0</opt> 5091 <opt>h1</opt> 5092 <opt>b0</opt> 5093 <opt>b1</opt> 5094 <opt>b2</opt> 5095 <opt>b3</opt> 5096 </mod> 5097 <encoding mask="0xffe40" exact="0xbc600"> 5098 <eq left="lanes1" right="#none"/> 5099 <derived start="7" size="1"> 5100 <and alias="true"> 5101 <eq left="saturate" right="#none"/> 5102 <eq left="lanes1" right="#none"/> 5103 </and> 5104 <or> 5105 <eq left="saturate" right="#sat"/> 5106 <neq left="lanes1" right="#none"/> 5107 </or> 5108 </derived> 5109 </encoding> 5110 <encoding mask="0xffc40" exact="0xbec00"> 5111 <or> 5112 <eq left="lanes1" right="#h0"/> 5113 <eq left="lanes1" right="#h1"/> 5114 </or> 5115 <derived start="7" size="1"> 5116 <and alias="true"> 5117 <eq left="saturate" right="#none"/> 5118 <eq left="lanes1" right="#none"/> 5119 </and> 5120 <or> 5121 <eq left="saturate" right="#sat"/> 5122 <neq left="lanes1" right="#none"/> 5123 </or> 5124 </derived> 5125 <derived start="9" size="1"> 5126 <eq left="lanes1" right="#h0"/> 5127 <eq left="lanes1" right="#h1"/> 5128 </derived> 5129 </encoding> 5130 <encoding mask="0xff840" exact="0xbe000"> 5131 <or> 5132 <eq left="lanes1" right="#b0"/> 5133 <eq left="lanes1" right="#b1"/> 5134 <eq left="lanes1" right="#b2"/> 5135 <eq left="lanes1" right="#b3"/> 5136 </or> 5137 <derived start="7" size="1"> 5138 <and alias="true"> 5139 <eq left="saturate" right="#none"/> 5140 <eq left="lanes1" right="#none"/> 5141 </and> 5142 <or> 5143 <eq left="saturate" right="#sat"/> 5144 <neq left="lanes1" right="#none"/> 5145 </or> 5146 </derived> 5147 <derived start="9" size="2"> 5148 <eq left="lanes1" right="#b0"/> 5149 <eq left="lanes1" right="#b1"/> 5150 <eq left="lanes1" right="#b2"/> 5151 <eq left="lanes1" right="#b3"/> 5152 </derived> 5153 </encoding> 5154 </ins> 5155 5156 <ins name="+IADD.v2s16"> 5157 <src start="0"/> 5158 <src start="3"/> 5159 <mod name="saturate" start="8" size="1" opt="sat"/> 5160 <mod name="lanes0" size="1" default="h01"> 5161 <opt>h01</opt> 5162 <opt>h10</opt> 5163 </mod> 5164 <mod name="lanes1" size="3" default="h01"> 5165 <opt>h01</opt> 5166 <opt>h10</opt> 5167 <opt>h00</opt> 5168 <opt>h11</opt> 5169 <opt>b01</opt> 5170 <opt>b23</opt> 5171 </mod> 5172 <encoding mask="0xff8c0" exact="0xbc800"> 5173 <and> 5174 <or> 5175 <eq left="lanes0" right="#h01"/> 5176 <eq left="lanes0" right="#h10"/> 5177 </or> 5178 <or> 5179 <eq left="lanes1" right="#h01"/> 5180 <eq left="lanes1" right="#h10"/> 5181 </or> 5182 </and> 5183 <derived start="9" size="1"> 5184 <eq left="lanes1" right="#h01"/> 5185 <eq left="lanes1" right="#h10"/> 5186 </derived> 5187 <derived start="10" size="1"> 5188 <eq left="lanes0" right="#h01"/> 5189 <eq left="lanes0" right="#h10"/> 5190 </derived> 5191 </encoding> 5192 <encoding mask="0xffcc0" exact="0xbec40"> 5193 <and> 5194 <eq left="lanes0" right="#h01"/> 5195 <or> 5196 <eq left="lanes1" right="#h00"/> 5197 <eq left="lanes1" right="#h11"/> 5198 </or> 5199 </and> 5200 <derived start="9" size="1"> 5201 <eq left="lanes1" right="#h00"/> 5202 <eq left="lanes1" right="#h11"/> 5203 </derived> 5204 </encoding> 5205 <encoding mask="0xffcc0" exact="0xbe800"> 5206 <and> 5207 <eq left="lanes0" right="#h01"/> 5208 <or> 5209 <eq left="lanes1" right="#b01"/> 5210 <eq left="lanes1" right="#b23"/> 5211 </or> 5212 </and> 5213 <derived start="9" size="1"> 5214 <eq left="lanes1" right="#b01"/> 5215 <eq left="lanes1" right="#b23"/> 5216 </derived> 5217 </encoding> 5218 </ins> 5219 5220 <ins name="+IADD.v2u16"> 5221 <src start="0"/> 5222 <src start="3"/> 5223 <mod name="saturate" start="8" size="1" opt="sat"/> 5224 <mod name="lanes0" size="1" default="h01"> 5225 <opt>h01</opt> 5226 <opt>h10</opt> 5227 </mod> 5228 <mod name="lanes1" size="3" default="h01"> 5229 <opt>h01</opt> 5230 <opt>h10</opt> 5231 <opt>h00</opt> 5232 <opt>h11</opt> 5233 <opt>b01</opt> 5234 <opt>b23</opt> 5235 </mod> 5236 <encoding mask="0xff840" exact="0xbc800"> 5237 <and> 5238 <or> 5239 <eq left="lanes0" right="#h01"/> 5240 <eq left="lanes0" right="#h10"/> 5241 </or> 5242 <or> 5243 <eq left="lanes1" right="#h01"/> 5244 <eq left="lanes1" right="#h10"/> 5245 </or> 5246 </and> 5247 <derived start="7" size="1"> 5248 <and alias="true"> 5249 <eq left="saturate" right="#none"/> 5250 <neq left="lanes1" right="#b01"/> 5251 <neq left="lanes1" right="#b23"/> 5252 </and> 5253 <or> 5254 <eq left="saturate" right="#sat"/> 5255 <eq left="lanes1" right="#b01"/> 5256 <eq left="lanes1" right="#b23"/> 5257 </or> 5258 </derived> 5259 <derived start="9" size="1"> 5260 <eq left="lanes1" right="#h01"/> 5261 <eq left="lanes1" right="#h10"/> 5262 </derived> 5263 <derived start="10" size="1"> 5264 <eq left="lanes0" right="#h01"/> 5265 <eq left="lanes0" right="#h10"/> 5266 </derived> 5267 </encoding> 5268 <encoding mask="0xffc40" exact="0xbec40"> 5269 <and> 5270 <eq left="lanes0" right="#h01"/> 5271 <or> 5272 <eq left="lanes1" right="#h00"/> 5273 <eq left="lanes1" right="#h11"/> 5274 </or> 5275 </and> 5276 <derived start="7" size="1"> 5277 <and alias="true"> 5278 <eq left="saturate" right="#none"/> 5279 <neq left="lanes1" right="#b01"/> 5280 <neq left="lanes1" right="#b23"/> 5281 </and> 5282 <or> 5283 <eq left="saturate" right="#sat"/> 5284 <eq left="lanes1" right="#b01"/> 5285 <eq left="lanes1" right="#b23"/> 5286 </or> 5287 </derived> 5288 <derived start="9" size="1"> 5289 <eq left="lanes1" right="#h00"/> 5290 <eq left="lanes1" right="#h11"/> 5291 </derived> 5292 </encoding> 5293 <encoding mask="0xffc40" exact="0xbe800"> 5294 <and> 5295 <eq left="lanes0" right="#h01"/> 5296 <or> 5297 <eq left="lanes1" right="#b01"/> 5298 <eq left="lanes1" right="#b23"/> 5299 </or> 5300 </and> 5301 <derived start="7" size="1"> 5302 <and alias="true"> 5303 <eq left="saturate" right="#none"/> 5304 <neq left="lanes1" right="#b01"/> 5305 <neq left="lanes1" right="#b23"/> 5306 </and> 5307 <or> 5308 <eq left="saturate" right="#sat"/> 5309 <eq left="lanes1" right="#b01"/> 5310 <eq left="lanes1" right="#b23"/> 5311 </or> 5312 </derived> 5313 <derived start="9" size="1"> 5314 <eq left="lanes1" right="#b01"/> 5315 <eq left="lanes1" right="#b23"/> 5316 </derived> 5317 </encoding> 5318 </ins> 5319 5320 <ins name="+IADD.v4s8"> 5321 <src start="0"/> 5322 <src start="3"/> 5323 <mod name="saturate" start="8" size="1" opt="sat"/> 5324 <mod name="lanes0" size="3" default="b0123"> 5325 <opt>b0123</opt> 5326 </mod> 5327 <mod name="lanes1" size="3" default="b0123"> 5328 <opt>b0123</opt> 5329 <opt>b0000</opt> 5330 <opt>b1111</opt> 5331 <opt>b2222</opt> 5332 <opt>b3333</opt> 5333 <opt>b0101</opt> 5334 <opt>b2323</opt> 5335 </mod> 5336 <encoding mask="0xffec0" exact="0xbc400"> 5337 <and> 5338 <eq left="lanes0" right="#b0123"/> 5339 <eq left="lanes1" right="#b0123"/> 5340 </and> 5341 </encoding> 5342 <encoding mask="0xff8c0" exact="0xbe040"> 5343 <and> 5344 <eq left="lanes0" right="#b0123"/> 5345 <or> 5346 <eq left="lanes1" right="#b0000"/> 5347 <eq left="lanes1" right="#b1111"/> 5348 <eq left="lanes1" right="#b2222"/> 5349 <eq left="lanes1" right="#b3333"/> 5350 </or> 5351 </and> 5352 <derived start="9" size="2"> 5353 <eq left="lanes1" right="#b0000"/> 5354 <eq left="lanes1" right="#b1111"/> 5355 <eq left="lanes1" right="#b2222"/> 5356 <eq left="lanes1" right="#b3333"/> 5357 </derived> 5358 </encoding> 5359 <encoding mask="0xffcc0" exact="0xbe840"> 5360 <and> 5361 <eq left="lanes0" right="#b0123"/> 5362 <or> 5363 <eq left="lanes1" right="#b0101"/> 5364 <eq left="lanes1" right="#b2323"/> 5365 </or> 5366 </and> 5367 <derived start="9" size="1"> 5368 <eq left="lanes1" right="#b0101"/> 5369 <eq left="lanes1" right="#b2323"/> 5370 </derived> 5371 </encoding> 5372 </ins> 5373 5374 <ins name="+IADD.v4u8"> 5375 <src start="0"/> 5376 <src start="3"/> 5377 <mod name="saturate" start="8" size="1" opt="sat"/> 5378 <mod name="lanes0" size="3" default="b0123"> 5379 <opt>b0123</opt> 5380 </mod> 5381 <mod name="lanes1" size="3" default="b0123"> 5382 <opt>b0123</opt> 5383 <opt>b0000</opt> 5384 <opt>b1111</opt> 5385 <opt>b2222</opt> 5386 <opt>b3333</opt> 5387 <opt>b0101</opt> 5388 <opt>b2323</opt> 5389 </mod> 5390 <encoding mask="0xffe40" exact="0xbc400"> 5391 <and> 5392 <eq left="lanes0" right="#b0123"/> 5393 <eq left="lanes1" right="#b0123"/> 5394 </and> 5395 <derived start="7" size="1"> 5396 <eq alias="true" left="saturate" right="#none"/> 5397 <eq left="saturate" right="#sat"/> 5398 </derived> 5399 </encoding> 5400 <encoding mask="0xff840" exact="0xbe040"> 5401 <and> 5402 <eq left="lanes0" right="#b0123"/> 5403 <or> 5404 <eq left="lanes1" right="#b0000"/> 5405 <eq left="lanes1" right="#b1111"/> 5406 <eq left="lanes1" right="#b2222"/> 5407 <eq left="lanes1" right="#b3333"/> 5408 </or> 5409 </and> 5410 <derived start="7" size="1"> 5411 <eq alias="true" left="saturate" right="#none"/> 5412 <eq left="saturate" right="#sat"/> 5413 </derived> 5414 <derived start="9" size="2"> 5415 <eq left="lanes1" right="#b0000"/> 5416 <eq left="lanes1" right="#b1111"/> 5417 <eq left="lanes1" right="#b2222"/> 5418 <eq left="lanes1" right="#b3333"/> 5419 </derived> 5420 </encoding> 5421 <encoding mask="0xffc40" exact="0xbe840"> 5422 <and> 5423 <eq left="lanes0" right="#b0123"/> 5424 <or> 5425 <eq left="lanes1" right="#b0101"/> 5426 <eq left="lanes1" right="#b2323"/> 5427 </or> 5428 </and> 5429 <derived start="7" size="1"> 5430 <eq alias="true" left="saturate" right="#none"/> 5431 <eq left="saturate" right="#sat"/> 5432 </derived> 5433 <derived start="9" size="1"> 5434 <eq left="lanes1" right="#b0101"/> 5435 <eq left="lanes1" right="#b2323"/> 5436 </derived> 5437 </encoding> 5438 </ins> 5439 5440 <ins name="+ICMP.i32" mask="0xffb80" exact="0x7b300"> 5441 <src start="0"/> 5442 <src start="3"/> 5443 <mod name="result_type" start="10" size="1" default="i1"> 5444 <opt>i1</opt> 5445 <opt>m1</opt> 5446 </mod> 5447 <mod name="cmpf" start="6" size="1"> 5448 <opt>eq</opt> 5449 <opt>ne</opt> 5450 </mod> 5451 </ins> 5452 5453 <ins name="+ICMP.s32" mask="0xffb80" exact="0x7b200"> 5454 <src start="0"/> 5455 <src start="3"/> 5456 <mod name="result_type" start="10" size="1" default="i1"> 5457 <opt>i1</opt> 5458 <opt>m1</opt> 5459 </mod> 5460 <mod name="cmpf" size="2"> 5461 <opt>gt</opt> 5462 <opt>ge</opt> 5463 <opt>lt</opt> 5464 <opt>le</opt> 5465 </mod> 5466 <derived start="6" size="1"> 5467 <eq left="cmpf" right="#gt"/> 5468 <eq left="cmpf" right="#ge"/> 5469 </derived> 5470 <swap left="0" right="1"> 5471 <or> 5472 <eq left="cmpf" right="#lt"/> 5473 <eq left="cmpf" right="#le"/> 5474 </or> 5475 <rewrite name="cmpf"> 5476 <map from="lt" to="gt"/> 5477 <map from="le" to="ge"/> 5478 </rewrite> 5479 </swap> 5480 </ins> 5481 5482 <ins name="+ICMP.u32" mask="0xffb80" exact="0x7b280"> 5483 <src start="0"/> 5484 <src start="3"/> 5485 <mod name="result_type" start="10" size="1" default="i1"> 5486 <opt>i1</opt> 5487 <opt>m1</opt> 5488 </mod> 5489 <mod name="cmpf" size="2"> 5490 <opt>gt</opt> 5491 <opt>ge</opt> 5492 <opt>lt</opt> 5493 <opt>le</opt> 5494 </mod> 5495 <derived start="6" size="1"> 5496 <eq left="cmpf" right="#gt"/> 5497 <eq left="cmpf" right="#ge"/> 5498 </derived> 5499 <swap left="0" right="1"> 5500 <or> 5501 <eq left="cmpf" right="#lt"/> 5502 <eq left="cmpf" right="#le"/> 5503 </or> 5504 <rewrite name="cmpf"> 5505 <map from="lt" to="gt"/> 5506 <map from="le" to="ge"/> 5507 </rewrite> 5508 </swap> 5509 </ins> 5510 5511 <ins name="+ICMP.v2i16" mask="0xff000" exact="0x7a000"> 5512 <src start="0"/> 5513 <src start="3"/> 5514 <mod name="swz0" start="6" size="2" default="h01"> 5515 <opt>h00</opt> 5516 <opt>h10</opt> 5517 <opt>h01</opt> 5518 <opt>h11</opt> 5519 </mod> 5520 <mod name="swz1" start="8" size="2" default="h01"> 5521 <opt>h00</opt> 5522 <opt>h10</opt> 5523 <opt>h01</opt> 5524 <opt>h11</opt> 5525 </mod> 5526 <mod name="result_type" start="10" size="1" default="i1"> 5527 <opt>i1</opt> 5528 <opt>m1</opt> 5529 </mod> 5530 <mod name="cmpf" start="11" size="1"> 5531 <opt>eq</opt> 5532 <opt>ne</opt> 5533 </mod> 5534 </ins> 5535 5536 <ins name="+ICMP.v2s16" mask="0xfe800" exact="0x78000"> 5537 <src start="0"/> 5538 <src start="3"/> 5539 <mod name="swz0" start="6" size="2" default="h01"> 5540 <opt>h00</opt> 5541 <opt>h10</opt> 5542 <opt>h01</opt> 5543 <opt>h11</opt> 5544 </mod> 5545 <mod name="swz1" start="8" size="2" default="h01"> 5546 <opt>h00</opt> 5547 <opt>h10</opt> 5548 <opt>h01</opt> 5549 <opt>h11</opt> 5550 </mod> 5551 <mod name="result_type" start="10" size="1" default="i1"> 5552 <opt>i1</opt> 5553 <opt>m1</opt> 5554 </mod> 5555 <mod name="cmpf" size="2"> 5556 <opt>gt</opt> 5557 <opt>ge</opt> 5558 <opt>lt</opt> 5559 <opt>le</opt> 5560 </mod> 5561 <derived start="12" size="1"> 5562 <eq left="cmpf" right="#gt"/> 5563 <eq left="cmpf" right="#ge"/> 5564 </derived> 5565 <swap left="0" right="1"> 5566 <or> 5567 <eq left="cmpf" right="#lt"/> 5568 <eq left="cmpf" right="#le"/> 5569 </or> 5570 <rewrite name="cmpf"> 5571 <map from="lt" to="gt"/> 5572 <map from="le" to="ge"/> 5573 </rewrite> 5574 </swap> 5575 </ins> 5576 5577 <ins name="+ICMP.v2u16" mask="0xfe800" exact="0x78800"> 5578 <src start="0"/> 5579 <src start="3"/> 5580 <mod name="swz0" start="6" size="2" default="h01"> 5581 <opt>h00</opt> 5582 <opt>h10</opt> 5583 <opt>h01</opt> 5584 <opt>h11</opt> 5585 </mod> 5586 <mod name="swz1" start="8" size="2" default="h01"> 5587 <opt>h00</opt> 5588 <opt>h10</opt> 5589 <opt>h01</opt> 5590 <opt>h11</opt> 5591 </mod> 5592 <mod name="result_type" start="10" size="1" default="i1"> 5593 <opt>i1</opt> 5594 <opt>m1</opt> 5595 </mod> 5596 <mod name="cmpf" size="2"> 5597 <opt>gt</opt> 5598 <opt>ge</opt> 5599 <opt>lt</opt> 5600 <opt>le</opt> 5601 </mod> 5602 <derived start="12" size="1"> 5603 <eq left="cmpf" right="#gt"/> 5604 <eq left="cmpf" right="#ge"/> 5605 </derived> 5606 <swap left="0" right="1"> 5607 <or> 5608 <eq left="cmpf" right="#lt"/> 5609 <eq left="cmpf" right="#le"/> 5610 </or> 5611 <rewrite name="cmpf"> 5612 <map from="lt" to="gt"/> 5613 <map from="le" to="ge"/> 5614 </rewrite> 5615 </swap> 5616 </ins> 5617 5618 <ins name="+ICMP.v4i8" mask="0xffb80" exact="0x7b100"> 5619 <src start="0"/> 5620 <src start="3"/> 5621 <mod name="result_type" start="10" size="1" default="i1"> 5622 <opt>i1</opt> 5623 <opt>m1</opt> 5624 </mod> 5625 <mod name="cmpf" start="6" size="1"> 5626 <opt>eq</opt> 5627 <opt>ne</opt> 5628 </mod> 5629 </ins> 5630 5631 <ins name="+ICMP.v4s8" mask="0xffb80" exact="0x7b000"> 5632 <src start="0"/> 5633 <src start="3"/> 5634 <mod name="result_type" start="10" size="1" default="i1"> 5635 <opt>i1</opt> 5636 <opt>m1</opt> 5637 </mod> 5638 <mod name="cmpf" size="2"> 5639 <opt>gt</opt> 5640 <opt>ge</opt> 5641 <opt>lt</opt> 5642 <opt>le</opt> 5643 </mod> 5644 <derived start="6" size="1"> 5645 <eq left="cmpf" right="#gt"/> 5646 <eq left="cmpf" right="#ge"/> 5647 </derived> 5648 <swap left="0" right="1"> 5649 <or> 5650 <eq left="cmpf" right="#lt"/> 5651 <eq left="cmpf" right="#le"/> 5652 </or> 5653 <rewrite name="cmpf"> 5654 <map from="lt" to="gt"/> 5655 <map from="le" to="ge"/> 5656 </rewrite> 5657 </swap> 5658 </ins> 5659 5660 <ins name="+ICMP.v4u8" mask="0xffb80" exact="0x7b080"> 5661 <src start="0"/> 5662 <src start="3"/> 5663 <mod name="result_type" start="10" size="1" default="i1"> 5664 <opt>i1</opt> 5665 <opt>m1</opt> 5666 </mod> 5667 <mod name="cmpf" size="2"> 5668 <opt>gt</opt> 5669 <opt>ge</opt> 5670 <opt>lt</opt> 5671 <opt>le</opt> 5672 </mod> 5673 <derived start="6" size="1"> 5674 <eq left="cmpf" right="#gt"/> 5675 <eq left="cmpf" right="#ge"/> 5676 </derived> 5677 <swap left="0" right="1"> 5678 <or> 5679 <eq left="cmpf" right="#lt"/> 5680 <eq left="cmpf" right="#le"/> 5681 </or> 5682 <rewrite name="cmpf"> 5683 <map from="lt" to="gt"/> 5684 <map from="le" to="ge"/> 5685 </rewrite> 5686 </swap> 5687 </ins> 5688 5689 <ins name="+ICMPF.i32" mask="0xffe00" exact="0x7be00"> 5690 <src start="0"/> 5691 <src start="3"/> 5692 <src start="6"/> 5693 </ins> 5694 5695 <ins name="+ICMPI.i32" mask="0xffb80" exact="0x7b900"> 5696 <src start="0"/> 5697 <src start="3"/> 5698 <mod name="result_type" start="10" size="1" default="i1"> 5699 <opt>i1</opt> 5700 <opt>m1</opt> 5701 </mod> 5702 <mod name="cmpf" start="6" size="1"> 5703 <opt>eq</opt> 5704 <opt>ne</opt> 5705 </mod> 5706 </ins> 5707 5708 <ins name="+ICMPI.s32" mask="0xffb80" exact="0x7b800"> 5709 <src start="0"/> 5710 <src start="3"/> 5711 <mod name="result_type" start="10" size="1" default="i1"> 5712 <opt>i1</opt> 5713 <opt>m1</opt> 5714 </mod> 5715 <mod name="cmpf" start="6" size="1"> 5716 <opt>gt</opt> 5717 <opt>ge</opt> 5718 </mod> 5719 </ins> 5720 5721 <ins name="+ICMPI.u32" mask="0xffb80" exact="0x7b880"> 5722 <src start="0"/> 5723 <src start="3"/> 5724 <mod name="result_type" start="10" size="1" default="i1"> 5725 <opt>i1</opt> 5726 <opt>m1</opt> 5727 </mod> 5728 <mod name="cmpf" start="6" size="1"> 5729 <opt>gt</opt> 5730 <opt>ge</opt> 5731 </mod> 5732 </ins> 5733 5734 <ins name="+ICMPM.i32" mask="0xffe00" exact="0x7ba00"> 5735 <src start="0"/> 5736 <src start="3"/> 5737 <src start="6"/> 5738 </ins> 5739 5740 <ins name="+ILOGB.f32" mask="0xfffe0" exact="0x3d9e0"> 5741 <src start="0"/> 5742 <mod name="widen0" start="3" size="2"> 5743 <reserved/> 5744 <opt>none</opt> 5745 <opt>h0</opt> 5746 <opt>h1</opt> 5747 </mod> 5748 </ins> 5749 5750 <ins name="+ILOGB.v2f16" mask="0xfffe0" exact="0x3d9c0"> 5751 <src start="0"/> 5752 <mod name="swz0" start="3" size="2" default="h01"> 5753 <opt>h00</opt> 5754 <opt>h10</opt> 5755 <opt>h01</opt> 5756 <opt>h11</opt> 5757 </mod> 5758 </ins> 5759 5760 <ins name="+IMOV_FMA" mask="0xffff7" exact="0xd7820"> 5761 <mod name="threads" start="3" size="1" default="odd"> 5762 <opt>even</opt> 5763 <opt>odd</opt> 5764 </mod> 5765 </ins> 5766 5767 <ins name="+ISUB.s32"> 5768 <src start="0"/> 5769 <src start="3"/> 5770 <mod name="saturate" start="8" size="1" opt="sat"/> 5771 <mod name="lanes1" size="3"> 5772 <opt>none</opt> 5773 <opt>h0</opt> 5774 <opt>h1</opt> 5775 <opt>b0</opt> 5776 <opt>b1</opt> 5777 <opt>b2</opt> 5778 <opt>b3</opt> 5779 </mod> 5780 <encoding mask="0xffec0" exact="0xbd600"> 5781 <eq left="lanes1" right="#none"/> 5782 </encoding> 5783 <encoding mask="0xffcc0" exact="0xbfc00"> 5784 <or> 5785 <eq left="lanes1" right="#h0"/> 5786 <eq left="lanes1" right="#h1"/> 5787 </or> 5788 <derived start="9" size="1"> 5789 <eq left="lanes1" right="#h0"/> 5790 <eq left="lanes1" right="#h1"/> 5791 </derived> 5792 </encoding> 5793 <encoding mask="0xff8c0" exact="0xbf000"> 5794 <or> 5795 <eq left="lanes1" right="#b0"/> 5796 <eq left="lanes1" right="#b1"/> 5797 <eq left="lanes1" right="#b2"/> 5798 <eq left="lanes1" right="#b3"/> 5799 </or> 5800 <derived start="9" size="2"> 5801 <eq left="lanes1" right="#b0"/> 5802 <eq left="lanes1" right="#b1"/> 5803 <eq left="lanes1" right="#b2"/> 5804 <eq left="lanes1" right="#b3"/> 5805 </derived> 5806 </encoding> 5807 </ins> 5808 5809 <ins name="+ISUB.u32"> 5810 <src start="0"/> 5811 <src start="3"/> 5812 <mod name="saturate" start="8" size="1" opt="sat"/> 5813 <mod name="lanes1" size="3"> 5814 <opt>none</opt> 5815 <opt>h0</opt> 5816 <opt>h1</opt> 5817 <opt>b0</opt> 5818 <opt>b1</opt> 5819 <opt>b2</opt> 5820 <opt>b3</opt> 5821 </mod> 5822 <encoding mask="0xffe40" exact="0xbd600"> 5823 <eq left="lanes1" right="#none"/> 5824 <derived start="7" size="1"> 5825 <and alias="true"> 5826 <eq left="saturate" right="#none"/> 5827 <eq left="lanes1" right="#none"/> 5828 </and> 5829 <or> 5830 <eq left="saturate" right="#sat"/> 5831 <neq left="lanes1" right="#none"/> 5832 </or> 5833 </derived> 5834 </encoding> 5835 <encoding mask="0xffc40" exact="0xbfc00"> 5836 <or> 5837 <eq left="lanes1" right="#h0"/> 5838 <eq left="lanes1" right="#h1"/> 5839 </or> 5840 <derived start="7" size="1"> 5841 <and alias="true"> 5842 <eq left="saturate" right="#none"/> 5843 <eq left="lanes1" right="#none"/> 5844 </and> 5845 <or> 5846 <eq left="saturate" right="#sat"/> 5847 <neq left="lanes1" right="#none"/> 5848 </or> 5849 </derived> 5850 <derived start="9" size="1"> 5851 <eq left="lanes1" right="#h0"/> 5852 <eq left="lanes1" right="#h1"/> 5853 </derived> 5854 </encoding> 5855 <encoding mask="0xff840" exact="0xbf000"> 5856 <or> 5857 <eq left="lanes1" right="#b0"/> 5858 <eq left="lanes1" right="#b1"/> 5859 <eq left="lanes1" right="#b2"/> 5860 <eq left="lanes1" right="#b3"/> 5861 </or> 5862 <derived start="7" size="1"> 5863 <and alias="true"> 5864 <eq left="saturate" right="#none"/> 5865 <eq left="lanes1" right="#none"/> 5866 </and> 5867 <or> 5868 <eq left="saturate" right="#sat"/> 5869 <neq left="lanes1" right="#none"/> 5870 </or> 5871 </derived> 5872 <derived start="9" size="2"> 5873 <eq left="lanes1" right="#b0"/> 5874 <eq left="lanes1" right="#b1"/> 5875 <eq left="lanes1" right="#b2"/> 5876 <eq left="lanes1" right="#b3"/> 5877 </derived> 5878 </encoding> 5879 </ins> 5880 5881 <ins name="+ISUB.v2s16"> 5882 <src start="0"/> 5883 <src start="3"/> 5884 <mod name="saturate" start="8" size="1" opt="sat"/> 5885 <mod name="lanes0" size="1" default="h01"> 5886 <opt>h01</opt> 5887 <opt>h10</opt> 5888 </mod> 5889 <mod name="lanes1" size="3" default="h01"> 5890 <opt>h01</opt> 5891 <opt>h10</opt> 5892 <opt>h00</opt> 5893 <opt>h11</opt> 5894 <opt>b01</opt> 5895 <opt>b23</opt> 5896 </mod> 5897 <encoding mask="0xff8c0" exact="0xbd800"> 5898 <and> 5899 <or> 5900 <eq left="lanes0" right="#h01"/> 5901 <eq left="lanes0" right="#h10"/> 5902 </or> 5903 <or> 5904 <eq left="lanes1" right="#h01"/> 5905 <eq left="lanes1" right="#h10"/> 5906 </or> 5907 </and> 5908 <derived start="9" size="1"> 5909 <eq left="lanes1" right="#h01"/> 5910 <eq left="lanes1" right="#h10"/> 5911 </derived> 5912 <derived start="10" size="1"> 5913 <eq left="lanes0" right="#h01"/> 5914 <eq left="lanes0" right="#h10"/> 5915 </derived> 5916 </encoding> 5917 <encoding mask="0xffcc0" exact="0xbfc40"> 5918 <and> 5919 <eq left="lanes0" right="#h01"/> 5920 <or> 5921 <eq left="lanes1" right="#h00"/> 5922 <eq left="lanes1" right="#h11"/> 5923 </or> 5924 </and> 5925 <derived start="9" size="1"> 5926 <eq left="lanes1" right="#h00"/> 5927 <eq left="lanes1" right="#h11"/> 5928 </derived> 5929 </encoding> 5930 <encoding mask="0xffcc0" exact="0xbf800"> 5931 <and> 5932 <eq left="lanes0" right="#h01"/> 5933 <or> 5934 <eq left="lanes1" right="#b01"/> 5935 <eq left="lanes1" right="#b23"/> 5936 </or> 5937 </and> 5938 <derived start="9" size="1"> 5939 <eq left="lanes1" right="#b01"/> 5940 <eq left="lanes1" right="#b23"/> 5941 </derived> 5942 </encoding> 5943 </ins> 5944 5945 <ins name="+ISUB.v2u16"> 5946 <src start="0"/> 5947 <src start="3"/> 5948 <mod name="saturate" start="8" size="1" opt="sat"/> 5949 <mod name="lanes0" size="1" default="h01"> 5950 <opt>h01</opt> 5951 <opt>h10</opt> 5952 </mod> 5953 <mod name="lanes1" size="3" default="h01"> 5954 <opt>h01</opt> 5955 <opt>h10</opt> 5956 <opt>h00</opt> 5957 <opt>h11</opt> 5958 <opt>b01</opt> 5959 <opt>b23</opt> 5960 </mod> 5961 <encoding mask="0xff840" exact="0xbd800"> 5962 <and> 5963 <or> 5964 <eq left="lanes0" right="#h01"/> 5965 <eq left="lanes0" right="#h10"/> 5966 </or> 5967 <or> 5968 <eq left="lanes1" right="#h01"/> 5969 <eq left="lanes1" right="#h10"/> 5970 </or> 5971 </and> 5972 <derived start="7" size="1"> 5973 <and alias="true"> 5974 <eq left="saturate" right="#none"/> 5975 <neq left="lanes1" right="#b01"/> 5976 <neq left="lanes1" right="#b23"/> 5977 </and> 5978 <or> 5979 <eq left="saturate" right="#sat"/> 5980 <eq left="lanes1" right="#b01"/> 5981 <eq left="lanes1" right="#b23"/> 5982 </or> 5983 </derived> 5984 <derived start="9" size="1"> 5985 <eq left="lanes1" right="#h01"/> 5986 <eq left="lanes1" right="#h10"/> 5987 </derived> 5988 <derived start="10" size="1"> 5989 <eq left="lanes0" right="#h01"/> 5990 <eq left="lanes0" right="#h10"/> 5991 </derived> 5992 </encoding> 5993 <encoding mask="0xffc40" exact="0xbfc40"> 5994 <and> 5995 <eq left="lanes0" right="#h01"/> 5996 <or> 5997 <eq left="lanes1" right="#h00"/> 5998 <eq left="lanes1" right="#h11"/> 5999 </or> 6000 </and> 6001 <derived start="7" size="1"> 6002 <and alias="true"> 6003 <eq left="saturate" right="#none"/> 6004 <neq left="lanes1" right="#b01"/> 6005 <neq left="lanes1" right="#b23"/> 6006 </and> 6007 <or> 6008 <eq left="saturate" right="#sat"/> 6009 <eq left="lanes1" right="#b01"/> 6010 <eq left="lanes1" right="#b23"/> 6011 </or> 6012 </derived> 6013 <derived start="9" size="1"> 6014 <eq left="lanes1" right="#h00"/> 6015 <eq left="lanes1" right="#h11"/> 6016 </derived> 6017 </encoding> 6018 <encoding mask="0xffc40" exact="0xbf800"> 6019 <and> 6020 <eq left="lanes0" right="#h01"/> 6021 <or> 6022 <eq left="lanes1" right="#b01"/> 6023 <eq left="lanes1" right="#b23"/> 6024 </or> 6025 </and> 6026 <derived start="7" size="1"> 6027 <and alias="true"> 6028 <eq left="saturate" right="#none"/> 6029 <neq left="lanes1" right="#b01"/> 6030 <neq left="lanes1" right="#b23"/> 6031 </and> 6032 <or> 6033 <eq left="saturate" right="#sat"/> 6034 <eq left="lanes1" right="#b01"/> 6035 <eq left="lanes1" right="#b23"/> 6036 </or> 6037 </derived> 6038 <derived start="9" size="1"> 6039 <eq left="lanes1" right="#b01"/> 6040 <eq left="lanes1" right="#b23"/> 6041 </derived> 6042 </encoding> 6043 </ins> 6044 6045 <ins name="+ISUB.v4s8"> 6046 <src start="0"/> 6047 <src start="3"/> 6048 <mod name="saturate" start="8" size="1" opt="sat"/> 6049 <mod name="lanes0" size="3" default="b0123"> 6050 <opt>b0123</opt> 6051 </mod> 6052 <mod name="lanes1" size="3" default="b0123"> 6053 <opt>b0123</opt> 6054 <opt>b0000</opt> 6055 <opt>b1111</opt> 6056 <opt>b2222</opt> 6057 <opt>b3333</opt> 6058 <opt>b0101</opt> 6059 <opt>b2323</opt> 6060 </mod> 6061 <encoding mask="0xffec0" exact="0xbd400"> 6062 <and> 6063 <eq left="lanes0" right="#b0123"/> 6064 <eq left="lanes1" right="#b0123"/> 6065 </and> 6066 </encoding> 6067 <encoding mask="0xff8c0" exact="0xbf040"> 6068 <and> 6069 <eq left="lanes0" right="#b0123"/> 6070 <or> 6071 <eq left="lanes1" right="#b0000"/> 6072 <eq left="lanes1" right="#b1111"/> 6073 <eq left="lanes1" right="#b2222"/> 6074 <eq left="lanes1" right="#b3333"/> 6075 </or> 6076 </and> 6077 <derived start="9" size="2"> 6078 <eq left="lanes1" right="#b0000"/> 6079 <eq left="lanes1" right="#b1111"/> 6080 <eq left="lanes1" right="#b2222"/> 6081 <eq left="lanes1" right="#b3333"/> 6082 </derived> 6083 </encoding> 6084 <encoding mask="0xffcc0" exact="0xbf840"> 6085 <and> 6086 <eq left="lanes0" right="#b0123"/> 6087 <or> 6088 <eq left="lanes1" right="#b0101"/> 6089 <eq left="lanes1" right="#b2323"/> 6090 </or> 6091 </and> 6092 <derived start="9" size="1"> 6093 <eq left="lanes1" right="#b0101"/> 6094 <eq left="lanes1" right="#b2323"/> 6095 </derived> 6096 </encoding> 6097 </ins> 6098 6099 <ins name="+ISUB.v4u8"> 6100 <src start="0"/> 6101 <src start="3"/> 6102 <mod name="saturate" start="8" size="1" opt="sat"/> 6103 <mod name="lanes0" size="3" default="b0123"> 6104 <opt>b0123</opt> 6105 </mod> 6106 <mod name="lanes1" size="3" default="b0123"> 6107 <opt>b0123</opt> 6108 <opt>b0000</opt> 6109 <opt>b1111</opt> 6110 <opt>b2222</opt> 6111 <opt>b3333</opt> 6112 <opt>b0101</opt> 6113 <opt>b2323</opt> 6114 </mod> 6115 <encoding mask="0xffe40" exact="0xbd400"> 6116 <and> 6117 <eq left="lanes0" right="#b0123"/> 6118 <eq left="lanes1" right="#b0123"/> 6119 </and> 6120 <derived start="7" size="1"> 6121 <eq alias="true" left="saturate" right="#none"/> 6122 <eq left="saturate" right="#sat"/> 6123 </derived> 6124 </encoding> 6125 <encoding mask="0xff840" exact="0xbf040"> 6126 <and> 6127 <eq left="lanes0" right="#b0123"/> 6128 <or> 6129 <eq left="lanes1" right="#b0000"/> 6130 <eq left="lanes1" right="#b1111"/> 6131 <eq left="lanes1" right="#b2222"/> 6132 <eq left="lanes1" right="#b3333"/> 6133 </or> 6134 </and> 6135 <derived start="7" size="1"> 6136 <eq alias="true" left="saturate" right="#none"/> 6137 <eq left="saturate" right="#sat"/> 6138 </derived> 6139 <derived start="9" size="2"> 6140 <eq left="lanes1" right="#b0000"/> 6141 <eq left="lanes1" right="#b1111"/> 6142 <eq left="lanes1" right="#b2222"/> 6143 <eq left="lanes1" right="#b3333"/> 6144 </derived> 6145 </encoding> 6146 <encoding mask="0xffc40" exact="0xbf840"> 6147 <and> 6148 <eq left="lanes0" right="#b0123"/> 6149 <or> 6150 <eq left="lanes1" right="#b0101"/> 6151 <eq left="lanes1" right="#b2323"/> 6152 </or> 6153 </and> 6154 <derived start="7" size="1"> 6155 <eq alias="true" left="saturate" right="#none"/> 6156 <eq left="saturate" right="#sat"/> 6157 </derived> 6158 <derived start="9" size="1"> 6159 <eq left="lanes1" right="#b0101"/> 6160 <eq left="lanes1" right="#b2323"/> 6161 </derived> 6162 </encoding> 6163 </ins> 6164 6165 <ins name="+JUMP" mask="0xffe3f" exact="0x6fe34" last="true" dests="0"> 6166 <src start="6" mask="0xf7"/> 6167 </ins> 6168 6169 <ins name="+KABOOM" mask="0xffff8" exact="0xd7858" unused="true" message="job_management"> 6170 <src start="0"/> 6171 </ins> 6172 6173 <ins name="+LDEXP.f32" mask="0xffe00" exact="0x74c00"> 6174 <src start="0"/> 6175 <src start="3"/> 6176 <mod name="round" start="6" size="3"> 6177 <opt>none</opt> 6178 <opt>rtp</opt> 6179 <opt>rtn</opt> 6180 <opt>rtz</opt> 6181 <opt>rtna</opt> 6182 <reserved/> 6183 <opt>inf</opt> 6184 <opt>inf0</opt> 6185 </mod> 6186 </ins> 6187 6188 <ins name="+LDEXP.v2f16" mask="0xffe00" exact="0x74e00"> 6189 <src start="0"/> 6190 <src start="3"/> 6191 <mod name="round" start="6" size="3"> 6192 <opt>none</opt> 6193 <opt>rtp</opt> 6194 <opt>rtn</opt> 6195 <opt>rtz</opt> 6196 <opt>rtna</opt> 6197 <reserved/> 6198 <opt>inf</opt> 6199 <opt>inf0</opt> 6200 </mod> 6201 </ins> 6202 6203 <ins name="+LD_ATTR" staging="w=format" message="attribute"> 6204 <src start="0"/> 6205 <src start="3"/> 6206 <src start="6"/> 6207 <mod name="register_format" size="4"> 6208 <opt>f16</opt> 6209 <opt>f32</opt> 6210 <opt>s32</opt> 6211 <opt>u32</opt> 6212 <opt>s16</opt> 6213 <opt>u16</opt> 6214 <opt>f64</opt> 6215 <opt>i64</opt> 6216 <opt>auto</opt> 6217 </mod> 6218 <mod name="vecsize" start="11" size="2"> 6219 <opt>none</opt> 6220 <opt>v2</opt> 6221 <opt>v3</opt> 6222 <opt>v4</opt> 6223 </mod> 6224 <encoding mask="0xf0600" exact="0x40400"> 6225 <neq left="register_format" right="#auto"/> 6226 <derived start="13" size="3"> 6227 <eq left="register_format" right="#f16"/> 6228 <eq left="register_format" right="#f32"/> 6229 <eq left="register_format" right="#s32"/> 6230 <eq left="register_format" right="#u32"/> 6231 <eq left="register_format" right="#s16"/> 6232 <eq left="register_format" right="#u16"/> 6233 <eq left="register_format" right="#f64"/> 6234 <eq left="register_format" right="#i64"/> 6235 </derived> 6236 </encoding> 6237 <encoding mask="0xfe600" exact="0xc4400"> 6238 <eq left="register_format" right="#auto"/> 6239 </encoding> 6240 </ins> 6241 6242 <ins name="+LD_ATTR_IMM" staging="w=format" message="attribute"> 6243 <src start="0"/> 6244 <src start="3"/> 6245 <immediate name="attribute_index" start="6" size="4"/> 6246 <mod name="register_format" size="4"> 6247 <opt>f16</opt> 6248 <opt>f32</opt> 6249 <opt>s32</opt> 6250 <opt>u32</opt> 6251 <opt>s16</opt> 6252 <opt>u16</opt> 6253 <opt>f64</opt> 6254 <opt>i64</opt> 6255 <opt>auto</opt> 6256 </mod> 6257 <mod name="vecsize" start="11" size="2"> 6258 <opt>none</opt> 6259 <opt>v2</opt> 6260 <opt>v3</opt> 6261 <opt>v4</opt> 6262 </mod> 6263 <encoding mask="0xf0400" exact="0x40000"> 6264 <neq left="register_format" right="#auto"/> 6265 <derived start="13" size="3"> 6266 <eq left="register_format" right="#f16"/> 6267 <eq left="register_format" right="#f32"/> 6268 <eq left="register_format" right="#s32"/> 6269 <eq left="register_format" right="#u32"/> 6270 <eq left="register_format" right="#s16"/> 6271 <eq left="register_format" right="#u16"/> 6272 <eq left="register_format" right="#f64"/> 6273 <eq left="register_format" right="#i64"/> 6274 </derived> 6275 </encoding> 6276 <encoding mask="0xfe400" exact="0xc4000"> 6277 <eq left="register_format" right="#auto"/> 6278 </encoding> 6279 </ins> 6280 6281 <ins name="+LD_ATTR_TEX" staging="w=format" message="attribute"> 6282 <src start="0"/> 6283 <src start="3"/> 6284 <src start="6"/> 6285 <mod name="register_format" size="4"> 6286 <opt>f16</opt> 6287 <opt>f32</opt> 6288 <opt>s32</opt> 6289 <opt>u32</opt> 6290 <opt>s16</opt> 6291 <opt>u16</opt> 6292 <opt>f64</opt> 6293 <opt>i64</opt> 6294 <opt>auto</opt> 6295 </mod> 6296 <mod name="vecsize" start="11" size="2"> 6297 <opt>none</opt> 6298 <opt>v2</opt> 6299 <opt>v3</opt> 6300 <opt>v4</opt> 6301 </mod> 6302 <encoding mask="0xf0600" exact="0x40600"> 6303 <neq left="register_format" right="#auto"/> 6304 <derived start="13" size="3"> 6305 <eq left="register_format" right="#f16"/> 6306 <eq left="register_format" right="#f32"/> 6307 <eq left="register_format" right="#s32"/> 6308 <eq left="register_format" right="#u32"/> 6309 <eq left="register_format" right="#s16"/> 6310 <eq left="register_format" right="#u16"/> 6311 <eq left="register_format" right="#f64"/> 6312 <eq left="register_format" right="#i64"/> 6313 </derived> 6314 </encoding> 6315 <encoding mask="0xfe600" exact="0xc4600"> 6316 <eq left="register_format" right="#auto"/> 6317 </encoding> 6318 </ins> 6319 6320 <ins name="+LD_CVT" staging="w=format" mask="0xff800" exact="0xc9000" message="load"> 6321 <src start="0"/> 6322 <src start="3"/> 6323 <src start="6" mask="0xf7"/> 6324 <mod name="register_format" size="4" pseudo="true"> 6325 <opt>f16</opt> 6326 <opt>f32</opt> 6327 <opt>s32</opt> 6328 <opt>u32</opt> 6329 <opt>s16</opt> 6330 <opt>u16</opt> 6331 <opt>f64</opt> 6332 <opt>i64</opt> 6333 </mod> 6334 <mod name="vecsize" start="9" size="2"> 6335 <opt>none</opt> 6336 <opt>v2</opt> 6337 <opt>v3</opt> 6338 <opt>v4</opt> 6339 </mod> 6340 </ins> 6341 6342 <ins name="+LD_GCLK.u64" staging="w=2" mask="0xffff8" exact="0xd7800" message="attribute"> 6343 <mod name="source" start="0" size="3"> 6344 <reserved/> 6345 <reserved/> 6346 <reserved/> 6347 <reserved/> 6348 <reserved/> 6349 <reserved/> 6350 <opt>system_timestamp</opt> 6351 <opt>cycle_counter</opt> 6352 </mod> 6353 </ins> 6354 6355 <ins name="+LD_TILE" staging="w=vecsize" mask="0xff800" exact="0xcb000" message="tile"> 6356 <src start="0"/> 6357 <src start="3"/> 6358 <src start="6" mask="0xf7"/> 6359 <mod name="vecsize" start="9" size="2"> 6360 <opt>none</opt> 6361 <opt>v2</opt> 6362 <opt>v3</opt> 6363 <opt>v4</opt> 6364 </mod> 6365 </ins> 6366 6367 <ins name="+LD_VAR" staging="w=vecsize" message="varying"> 6368 <src start="0"/> 6369 <src start="3"/> 6370 <mod name="vecsize" start="8" size="2"> 6371 <opt>none</opt> 6372 <opt>v2</opt> 6373 <opt>v3</opt> 6374 <opt>v4</opt> 6375 </mod> 6376 <mod name="update" size="2"> 6377 <opt>store</opt> 6378 <opt>retrieve</opt> 6379 <opt>conditional</opt> 6380 <opt>clobber</opt> 6381 </mod> 6382 <mod name="register_format" size="2"> 6383 <opt>f32</opt> 6384 <opt>f16</opt> 6385 <opt>auto</opt> 6386 </mod> 6387 <mod name="sample" size="3"> 6388 <opt>center</opt> 6389 <opt>centroid</opt> 6390 <opt>sample</opt> 6391 <opt>explicit</opt> 6392 <opt>none</opt> 6393 </mod> 6394 <encoding mask="0x7c0c0" exact="0x500c0"> 6395 <neq left="register_format" right="#auto"/> 6396 <derived start="19" size="1"> 6397 <eq left="register_format" right="#f32"/> 6398 <eq left="register_format" right="#f16"/> 6399 </derived> 6400 <derived start="10" size="4"> 6401 <and> 6402 <eq left="sample" right="#center"/> 6403 <eq left="update" right="#store"/> 6404 </and> 6405 <and> 6406 <eq left="sample" right="#centroid"/> 6407 <eq left="update" right="#store"/> 6408 </and> 6409 <and> 6410 <eq left="sample" right="#sample"/> 6411 <eq left="update" right="#store"/> 6412 </and> 6413 <and> 6414 <eq left="sample" right="#explicit"/> 6415 <eq left="update" right="#store"/> 6416 </and> 6417 <and> 6418 <eq left="sample" right="#none"/> 6419 <eq left="update" right="#retrieve"/> 6420 </and> 6421 <reserved/> 6422 <reserved/> 6423 <reserved/> 6424 <and> 6425 <eq left="sample" right="#center"/> 6426 <eq left="update" right="#conditional"/> 6427 </and> 6428 <and> 6429 <eq left="sample" right="#centroid"/> 6430 <eq left="update" right="#conditional"/> 6431 </and> 6432 <and> 6433 <eq left="sample" right="#center"/> 6434 <eq left="update" right="#clobber"/> 6435 </and> 6436 <and> 6437 <eq left="sample" right="#centroid"/> 6438 <eq left="update" right="#clobber"/> 6439 </and> 6440 <and> 6441 <eq left="sample" right="#sample"/> 6442 <eq left="update" right="#clobber"/> 6443 </and> 6444 <and> 6445 <eq left="sample" right="#explicit"/> 6446 <eq left="update" right="#clobber"/> 6447 </and> 6448 <reserved/> 6449 <reserved/> 6450 </derived> 6451 </encoding> 6452 <encoding mask="0xfc0c0" exact="0xcc0c0"> 6453 <eq left="register_format" right="#auto"/> 6454 <derived start="10" size="4"> 6455 <and> 6456 <eq left="sample" right="#center"/> 6457 <eq left="update" right="#store"/> 6458 </and> 6459 <and> 6460 <eq left="sample" right="#centroid"/> 6461 <eq left="update" right="#store"/> 6462 </and> 6463 <and> 6464 <eq left="sample" right="#sample"/> 6465 <eq left="update" right="#store"/> 6466 </and> 6467 <and> 6468 <eq left="sample" right="#explicit"/> 6469 <eq left="update" right="#store"/> 6470 </and> 6471 <and> 6472 <eq left="sample" right="#none"/> 6473 <eq left="update" right="#retrieve"/> 6474 </and> 6475 <reserved/> 6476 <reserved/> 6477 <reserved/> 6478 <and> 6479 <eq left="sample" right="#center"/> 6480 <eq left="update" right="#conditional"/> 6481 </and> 6482 <and> 6483 <eq left="sample" right="#centroid"/> 6484 <eq left="update" right="#conditional"/> 6485 </and> 6486 <and> 6487 <eq left="sample" right="#center"/> 6488 <eq left="update" right="#clobber"/> 6489 </and> 6490 <and> 6491 <eq left="sample" right="#centroid"/> 6492 <eq left="update" right="#clobber"/> 6493 </and> 6494 <and> 6495 <eq left="sample" right="#sample"/> 6496 <eq left="update" right="#clobber"/> 6497 </and> 6498 <and> 6499 <eq left="sample" right="#explicit"/> 6500 <eq left="update" right="#clobber"/> 6501 </and> 6502 <reserved/> 6503 <reserved/> 6504 </derived> 6505 </encoding> 6506 </ins> 6507 6508 <ins name="+LD_VAR_FLAT" staging="w=format" message="varying"> 6509 <src start="3"/> 6510 <mod name="vecsize" start="8" size="2"> 6511 <opt>none</opt> 6512 <opt>v2</opt> 6513 <opt>v3</opt> 6514 <opt>v4</opt> 6515 </mod> 6516 <mod name="register_format" size="3"> 6517 <opt>f32</opt> 6518 <opt>f16</opt> 6519 <opt>u32</opt> 6520 <opt>s32</opt> 6521 <opt>auto</opt> 6522 </mod> 6523 <mod name="function" start="0" size="3"> 6524 <reserved/> 6525 <reserved/> 6526 <reserved/> 6527 <opt>none</opt> 6528 <reserved/> 6529 <reserved/> 6530 <opt>and</opt> 6531 <opt>or</opt> 6532 </mod> 6533 <encoding mask="0x7f8c0" exact="0x538c0"> 6534 <neq left="register_format" right="#auto"/> 6535 <derived start="10" size="1"> 6536 <or> 6537 <eq left="register_format" right="#f32"/> 6538 <eq left="register_format" right="#f16"/> 6539 </or> 6540 <or> 6541 <eq left="register_format" right="#u32"/> 6542 <eq left="register_format" right="#s32"/> 6543 </or> 6544 </derived> 6545 <derived start="19" size="1"> 6546 <or> 6547 <eq left="register_format" right="#f32"/> 6548 <eq left="register_format" right="#u32"/> 6549 </or> 6550 <or> 6551 <eq left="register_format" right="#f16"/> 6552 <eq left="register_format" right="#s32"/> 6553 </or> 6554 </derived> 6555 </encoding> 6556 <encoding mask="0xffcc0" exact="0xcf8c0"> 6557 <eq left="register_format" right="#auto"/> 6558 </encoding> 6559 </ins> 6560 6561 <ins name="+LD_VAR_FLAT_IMM" staging="w=format" message="varying"> 6562 <immediate name="index" start="3" size="5"/> 6563 <mod name="vecsize" start="8" size="2"> 6564 <opt>none</opt> 6565 <opt>v2</opt> 6566 <opt>v3</opt> 6567 <opt>v4</opt> 6568 </mod> 6569 <mod name="register_format" size="3"> 6570 <opt>f32</opt> 6571 <opt>f16</opt> 6572 <opt>u32</opt> 6573 <opt>s32</opt> 6574 <opt>auto</opt> 6575 </mod> 6576 <mod name="function" start="0" size="3"> 6577 <reserved/> 6578 <reserved/> 6579 <reserved/> 6580 <opt>none</opt> 6581 <reserved/> 6582 <reserved/> 6583 <opt>and</opt> 6584 <opt>or</opt> 6585 </mod> 6586 <encoding mask="0x7f800" exact="0x53800"> 6587 <neq left="register_format" right="#auto"/> 6588 <derived start="10" size="1"> 6589 <or> 6590 <eq left="register_format" right="#f32"/> 6591 <eq left="register_format" right="#f16"/> 6592 </or> 6593 <or> 6594 <eq left="register_format" right="#u32"/> 6595 <eq left="register_format" right="#s32"/> 6596 </or> 6597 </derived> 6598 <derived start="19" size="1"> 6599 <or> 6600 <eq left="register_format" right="#f32"/> 6601 <eq left="register_format" right="#u32"/> 6602 </or> 6603 <or> 6604 <eq left="register_format" right="#f16"/> 6605 <eq left="register_format" right="#s32"/> 6606 </or> 6607 </derived> 6608 </encoding> 6609 <encoding mask="0xffc00" exact="0xcf800"> 6610 <eq left="register_format" right="#auto"/> 6611 </encoding> 6612 </ins> 6613 6614 <ins name="+LD_VAR_IMM" staging="w=format" message="varying"> 6615 <src start="0"/> 6616 <immediate name="index" start="3" size="5"/> 6617 <mod name="vecsize" start="8" size="2"> 6618 <opt>none</opt> 6619 <opt>v2</opt> 6620 <opt>v3</opt> 6621 <opt>v4</opt> 6622 </mod> 6623 <mod name="update" size="2"> 6624 <opt>store</opt> 6625 <opt>retrieve</opt> 6626 <opt>conditional</opt> 6627 <opt>clobber</opt> 6628 </mod> 6629 <mod name="register_format" size="2"> 6630 <opt>f32</opt> 6631 <opt>f16</opt> 6632 <opt>auto</opt> 6633 </mod> 6634 <mod name="sample" size="3"> 6635 <opt>center</opt> 6636 <opt>centroid</opt> 6637 <opt>sample</opt> 6638 <opt>explicit</opt> 6639 <opt>none</opt> 6640 </mod> 6641 <encoding mask="0x7c000" exact="0x50000"> 6642 <neq left="register_format" right="#auto"/> 6643 <derived start="19" size="1"> 6644 <eq left="register_format" right="#f32"/> 6645 <eq left="register_format" right="#f16"/> 6646 </derived> 6647 <derived start="10" size="4"> 6648 <and> 6649 <eq left="sample" right="#center"/> 6650 <eq left="update" right="#store"/> 6651 </and> 6652 <and> 6653 <eq left="sample" right="#centroid"/> 6654 <eq left="update" right="#store"/> 6655 </and> 6656 <and> 6657 <eq left="sample" right="#sample"/> 6658 <eq left="update" right="#store"/> 6659 </and> 6660 <and> 6661 <eq left="sample" right="#explicit"/> 6662 <eq left="update" right="#store"/> 6663 </and> 6664 <and> 6665 <eq left="sample" right="#none"/> 6666 <eq left="update" right="#retrieve"/> 6667 </and> 6668 <reserved/> 6669 <reserved/> 6670 <reserved/> 6671 <and> 6672 <eq left="sample" right="#center"/> 6673 <eq left="update" right="#conditional"/> 6674 </and> 6675 <and> 6676 <eq left="sample" right="#centroid"/> 6677 <eq left="update" right="#conditional"/> 6678 </and> 6679 <and> 6680 <eq left="sample" right="#center"/> 6681 <eq left="update" right="#clobber"/> 6682 </and> 6683 <and> 6684 <eq left="sample" right="#centroid"/> 6685 <eq left="update" right="#clobber"/> 6686 </and> 6687 <and> 6688 <eq left="sample" right="#sample"/> 6689 <eq left="update" right="#clobber"/> 6690 </and> 6691 <and> 6692 <eq left="sample" right="#explicit"/> 6693 <eq left="update" right="#clobber"/> 6694 </and> 6695 <reserved/> 6696 <reserved/> 6697 </derived> 6698 </encoding> 6699 <encoding mask="0xfc000" exact="0xcc000"> 6700 <eq left="register_format" right="#auto"/> 6701 <derived start="10" size="4"> 6702 <and> 6703 <eq left="sample" right="#center"/> 6704 <eq left="update" right="#store"/> 6705 </and> 6706 <and> 6707 <eq left="sample" right="#centroid"/> 6708 <eq left="update" right="#store"/> 6709 </and> 6710 <and> 6711 <eq left="sample" right="#sample"/> 6712 <eq left="update" right="#store"/> 6713 </and> 6714 <and> 6715 <eq left="sample" right="#explicit"/> 6716 <eq left="update" right="#store"/> 6717 </and> 6718 <and> 6719 <eq left="sample" right="#none"/> 6720 <eq left="update" right="#retrieve"/> 6721 </and> 6722 <reserved/> 6723 <reserved/> 6724 <reserved/> 6725 <and> 6726 <eq left="sample" right="#center"/> 6727 <eq left="update" right="#conditional"/> 6728 </and> 6729 <and> 6730 <eq left="sample" right="#centroid"/> 6731 <eq left="update" right="#conditional"/> 6732 </and> 6733 <and> 6734 <eq left="sample" right="#center"/> 6735 <eq left="update" right="#clobber"/> 6736 </and> 6737 <and> 6738 <eq left="sample" right="#centroid"/> 6739 <eq left="update" right="#clobber"/> 6740 </and> 6741 <and> 6742 <eq left="sample" right="#sample"/> 6743 <eq left="update" right="#clobber"/> 6744 </and> 6745 <and> 6746 <eq left="sample" right="#explicit"/> 6747 <eq left="update" right="#clobber"/> 6748 </and> 6749 <reserved/> 6750 <reserved/> 6751 </derived> 6752 </encoding> 6753 </ins> 6754 6755 <ins name="+LD_VAR_SPECIAL" staging="w=format" message="varying"> 6756 <src start="0"/> 6757 <mod name="varying_name" size="5"> 6758 <opt>point</opt> 6759 <reserved/> 6760 <opt>frag_w</opt> 6761 <opt>frag_z</opt> 6762 </mod> 6763 <mod name="vecsize" size="2"> 6764 <opt>none</opt> 6765 <opt>v2</opt> 6766 <opt>v3</opt> 6767 <opt>v4</opt> 6768 </mod> 6769 <mod name="update" size="2"> 6770 <opt>store</opt> 6771 <opt>retrieve</opt> 6772 <opt>conditional</opt> 6773 <opt>clobber</opt> 6774 </mod> 6775 <mod name="register_format" size="2"> 6776 <opt>f32</opt> 6777 <opt>f16</opt> 6778 <opt>auto</opt> 6779 </mod> 6780 <mod name="sample" size="3"> 6781 <opt>center</opt> 6782 <opt>centroid</opt> 6783 <opt>sample</opt> 6784 <opt>explicit</opt> 6785 <opt>none</opt> 6786 </mod> 6787 <encoding mask="0x7c3e0" exact="0x500a0"> 6788 <neq left="register_format" right="#auto"/> 6789 <derived start="3" size="2"> 6790 <and> 6791 <eq left="varying_name" right="#point"/> 6792 <eq left="vecsize" right="#v2"/> 6793 <eq left="update" right="#clobber"/> 6794 </and> 6795 <reserved/> 6796 <and> 6797 <eq left="varying_name" right="#frag_w"/> 6798 <eq left="vecsize" right="#none"/> 6799 <eq left="update" right="#clobber"/> 6800 </and> 6801 <and> 6802 <eq left="varying_name" right="#frag_z"/> 6803 <eq left="vecsize" right="#none"/> 6804 <eq left="update" right="#clobber"/> 6805 <neq left="sample" right="#explicit"/> 6806 <neq left="register_format" right="#auto"/> 6807 </and> 6808 </derived> 6809 <derived start="19" size="1"> 6810 <eq left="register_format" right="#f32"/> 6811 <eq left="register_format" right="#f16"/> 6812 </derived> 6813 <derived start="10" size="4"> 6814 <and> 6815 <eq left="sample" right="#center"/> 6816 <eq left="update" right="#store"/> 6817 </and> 6818 <and> 6819 <eq left="sample" right="#centroid"/> 6820 <eq left="update" right="#store"/> 6821 </and> 6822 <and> 6823 <eq left="sample" right="#sample"/> 6824 <eq left="update" right="#store"/> 6825 </and> 6826 <and> 6827 <eq left="sample" right="#explicit"/> 6828 <eq left="update" right="#store"/> 6829 </and> 6830 <and> 6831 <eq left="sample" right="#none"/> 6832 <eq left="update" right="#retrieve"/> 6833 </and> 6834 <reserved/> 6835 <reserved/> 6836 <reserved/> 6837 <and> 6838 <eq left="sample" right="#center"/> 6839 <eq left="update" right="#conditional"/> 6840 </and> 6841 <and> 6842 <eq left="sample" right="#centroid"/> 6843 <eq left="update" right="#conditional"/> 6844 </and> 6845 <and> 6846 <eq left="sample" right="#center"/> 6847 <eq left="update" right="#clobber"/> 6848 </and> 6849 <and> 6850 <eq left="sample" right="#centroid"/> 6851 <eq left="update" right="#clobber"/> 6852 </and> 6853 <and> 6854 <eq left="sample" right="#sample"/> 6855 <eq left="update" right="#clobber"/> 6856 </and> 6857 <and> 6858 <eq left="sample" right="#explicit"/> 6859 <eq left="update" right="#clobber"/> 6860 </and> 6861 <reserved/> 6862 <reserved/> 6863 </derived> 6864 </encoding> 6865 <encoding mask="0xfc3e0" exact="0xcc0a0"> 6866 <eq left="register_format" right="#auto"/> 6867 <derived start="3" size="2"> 6868 <and> 6869 <eq left="varying_name" right="#point"/> 6870 <eq left="vecsize" right="#v2"/> 6871 <eq left="update" right="#clobber"/> 6872 </and> 6873 <reserved/> 6874 <and> 6875 <eq left="varying_name" right="#frag_w"/> 6876 <eq left="vecsize" right="#none"/> 6877 <eq left="update" right="#clobber"/> 6878 </and> 6879 <and> 6880 <eq left="varying_name" right="#frag_z"/> 6881 <eq left="vecsize" right="#none"/> 6882 <eq left="update" right="#clobber"/> 6883 <neq left="sample" right="#explicit"/> 6884 <neq left="register_format" right="#auto"/> 6885 </and> 6886 </derived> 6887 <derived start="10" size="4"> 6888 <and> 6889 <eq left="sample" right="#center"/> 6890 <eq left="update" right="#store"/> 6891 </and> 6892 <and> 6893 <eq left="sample" right="#centroid"/> 6894 <eq left="update" right="#store"/> 6895 </and> 6896 <and> 6897 <eq left="sample" right="#sample"/> 6898 <eq left="update" right="#store"/> 6899 </and> 6900 <and> 6901 <eq left="sample" right="#explicit"/> 6902 <eq left="update" right="#store"/> 6903 </and> 6904 <and> 6905 <eq left="sample" right="#none"/> 6906 <eq left="update" right="#retrieve"/> 6907 </and> 6908 <reserved/> 6909 <reserved/> 6910 <reserved/> 6911 <and> 6912 <eq left="sample" right="#center"/> 6913 <eq left="update" right="#conditional"/> 6914 </and> 6915 <and> 6916 <eq left="sample" right="#centroid"/> 6917 <eq left="update" right="#conditional"/> 6918 </and> 6919 <and> 6920 <eq left="sample" right="#center"/> 6921 <eq left="update" right="#clobber"/> 6922 </and> 6923 <and> 6924 <eq left="sample" right="#centroid"/> 6925 <eq left="update" right="#clobber"/> 6926 </and> 6927 <and> 6928 <eq left="sample" right="#sample"/> 6929 <eq left="update" right="#clobber"/> 6930 </and> 6931 <and> 6932 <eq left="sample" right="#explicit"/> 6933 <eq left="update" right="#clobber"/> 6934 </and> 6935 <reserved/> 6936 <reserved/> 6937 </derived> 6938 </encoding> 6939 </ins> 6940 6941 <ins name="+LEA_ATTR" staging="w=3" message="attribute"> 6942 <src start="0"/> 6943 <src start="3"/> 6944 <src start="6"/> 6945 <mod name="register_format" size="4"> 6946 <opt>f16</opt> 6947 <opt>f32</opt> 6948 <opt>s32</opt> 6949 <opt>u32</opt> 6950 <opt>s16</opt> 6951 <opt>u16</opt> 6952 <opt>f64</opt> 6953 <opt>i64</opt> 6954 <opt>auto</opt> 6955 </mod> 6956 <encoding mask="0xfc600" exact="0xc0400"> 6957 <neq left="register_format" right="#auto"/> 6958 <derived start="11" size="3"> 6959 <eq left="register_format" right="#f16"/> 6960 <eq left="register_format" right="#f32"/> 6961 <eq left="register_format" right="#s32"/> 6962 <eq left="register_format" right="#u32"/> 6963 <eq left="register_format" right="#s16"/> 6964 <eq left="register_format" right="#u16"/> 6965 <eq left="register_format" right="#f64"/> 6966 <eq left="register_format" right="#i64"/> 6967 </derived> 6968 </encoding> 6969 <encoding mask="0xffe00" exact="0xc8400"> 6970 <eq left="register_format" right="#auto"/> 6971 </encoding> 6972 </ins> 6973 6974 <ins name="+LEA_ATTR_IMM" staging="w=3" message="attribute"> 6975 <src start="0"/> 6976 <src start="3"/> 6977 <immediate name="attribute_index" start="6" size="4"/> 6978 <mod name="register_format" size="4"> 6979 <opt>f16</opt> 6980 <opt>f32</opt> 6981 <opt>s32</opt> 6982 <opt>u32</opt> 6983 <opt>s16</opt> 6984 <opt>u16</opt> 6985 <opt>f64</opt> 6986 <opt>i64</opt> 6987 <opt>auto</opt> 6988 </mod> 6989 <encoding mask="0xfc400" exact="0xc0000"> 6990 <neq left="register_format" right="#auto"/> 6991 <derived start="11" size="3"> 6992 <eq left="register_format" right="#f16"/> 6993 <eq left="register_format" right="#f32"/> 6994 <eq left="register_format" right="#s32"/> 6995 <eq left="register_format" right="#u32"/> 6996 <eq left="register_format" right="#s16"/> 6997 <eq left="register_format" right="#u16"/> 6998 <eq left="register_format" right="#f64"/> 6999 <eq left="register_format" right="#i64"/> 7000 </derived> 7001 </encoding> 7002 <encoding mask="0xffc00" exact="0xc8000"> 7003 <eq left="register_format" right="#auto"/> 7004 </encoding> 7005 </ins> 7006 7007 <ins name="+LEA_ATTR_TEX" staging="w=3" message="attribute"> 7008 <src start="0"/> 7009 <src start="3"/> 7010 <src start="6"/> 7011 <mod name="register_format" size="4"> 7012 <opt>f16</opt> 7013 <opt>f32</opt> 7014 <opt>s32</opt> 7015 <opt>u32</opt> 7016 <opt>s16</opt> 7017 <opt>u16</opt> 7018 <opt>f64</opt> 7019 <opt>i64</opt> 7020 <opt>auto</opt> 7021 </mod> 7022 <encoding mask="0xfc600" exact="0xc0600"> 7023 <neq left="register_format" right="#auto"/> 7024 <derived start="11" size="3"> 7025 <eq left="register_format" right="#f16"/> 7026 <eq left="register_format" right="#f32"/> 7027 <eq left="register_format" right="#s32"/> 7028 <eq left="register_format" right="#u32"/> 7029 <eq left="register_format" right="#s16"/> 7030 <eq left="register_format" right="#u16"/> 7031 <eq left="register_format" right="#f64"/> 7032 <eq left="register_format" right="#i64"/> 7033 </derived> 7034 </encoding> 7035 <encoding mask="0xffe00" exact="0xc8600"> 7036 <eq left="register_format" right="#auto"/> 7037 </encoding> 7038 </ins> 7039 7040 <ins name="+LEA_TEX" staging="w=3" mask="0xff600" exact="0xd6600" message="attribute"> 7041 <src start="0"/> 7042 <src start="3"/> 7043 <src start="6"/> 7044 <mod name="format" start="11" size="1"> 7045 <opt>u16</opt> 7046 <opt>u32</opt> 7047 </mod> 7048 </ins> 7049 7050 <ins name="+LEA_TEX_IMM" staging="w=3" mask="0xff000" exact="0xd6000" message="attribute"> 7051 <src start="0"/> 7052 <src start="3"/> 7053 <immediate name="texture_index" start="6" size="5"/> 7054 <mod name="format" start="11" size="1"> 7055 <opt>u16</opt> 7056 <opt>u32</opt> 7057 </mod> 7058 </ins> 7059 7060 <ins name="+LOAD.i128" staging="w=4" mask="0xffe00" exact="0x61000" message="load"> 7061 <src start="0"/> 7062 <src start="3"/> 7063 <mod name="seg" start="6" size="3"> 7064 <reserved/> 7065 <opt>none</opt> 7066 <opt>wls</opt> 7067 <opt>stream</opt> 7068 <opt>ubo</opt> 7069 <reserved/> 7070 <reserved/> 7071 <opt>tl</opt> 7072 </mod> 7073 </ins> 7074 7075 <ins name="+LOAD.i16" staging="w=1" message="load"> 7076 <src start="0"/> 7077 <src start="3"/> 7078 <mod name="seg" start="6" size="3"> 7079 <reserved/> 7080 <opt>none</opt> 7081 <opt>wls</opt> 7082 <opt>stream</opt> 7083 <opt>ubo</opt> 7084 <reserved/> 7085 <reserved/> 7086 <opt>tl</opt> 7087 </mod> 7088 <mod name="lane_dest" size="2" default="h0"> 7089 <opt>h0</opt> 7090 <opt>h1</opt> 7091 <opt>w0</opt> 7092 <opt>d0</opt> 7093 </mod> 7094 <mod name="extend" size="2"> 7095 <opt>none</opt> 7096 <opt>sext</opt> 7097 <opt>zext</opt> 7098 </mod> 7099 <encoding mask="0xffc00" exact="0x60800"> 7100 <and> 7101 <eq left="extend" right="#none"/> 7102 <or> 7103 <eq left="lane_dest" right="#h0"/> 7104 <eq left="lane_dest" right="#h1"/> 7105 </or> 7106 </and> 7107 <derived start="9" size="1"> 7108 <eq left="lane_dest" right="#h0"/> 7109 <eq left="lane_dest" right="#h1"/> 7110 </derived> 7111 </encoding> 7112 <encoding mask="0xffc00" exact="0x63000"> 7113 <and> 7114 <neq left="extend" right="#none"/> 7115 <eq left="lane_dest" right="#w0"/> 7116 </and> 7117 <derived start="9" size="1"> 7118 <eq left="extend" right="#sext"/> 7119 <eq left="extend" right="#zext"/> 7120 </derived> 7121 </encoding> 7122 <encoding mask="0xffc00" exact="0x61800"> 7123 <and> 7124 <neq left="extend" right="#none"/> 7125 <eq left="lane_dest" right="#d0"/> 7126 </and> 7127 <derived start="9" size="1"> 7128 <eq left="extend" right="#sext"/> 7129 <eq left="extend" right="#zext"/> 7130 </derived> 7131 </encoding> 7132 </ins> 7133 7134 <ins name="+LOAD.i24" staging="w=1" mask="0xffe00" exact="0x65000" message="load"> 7135 <src start="0"/> 7136 <src start="3"/> 7137 <mod name="seg" start="6" size="3"> 7138 <reserved/> 7139 <opt>none</opt> 7140 <opt>wls</opt> 7141 <opt>stream</opt> 7142 <opt>ubo</opt> 7143 <reserved/> 7144 <reserved/> 7145 <opt>tl</opt> 7146 </mod> 7147 </ins> 7148 7149 <ins name="+LOAD.i32" staging="w=1" message="load"> 7150 <src start="0"/> 7151 <src start="3"/> 7152 <mod name="seg" start="6" size="3"> 7153 <reserved/> 7154 <opt>none</opt> 7155 <opt>wls</opt> 7156 <opt>stream</opt> 7157 <opt>ubo</opt> 7158 <reserved/> 7159 <reserved/> 7160 <opt>tl</opt> 7161 </mod> 7162 <mod name="lane_dest" size="1" opt="d0"/> 7163 <mod name="extend" size="2"> 7164 <opt>none</opt> 7165 <opt>sext</opt> 7166 <opt>zext</opt> 7167 </mod> 7168 <encoding mask="0xffe00" exact="0x60c00"> 7169 <and> 7170 <eq left="extend" right="#none"/> 7171 <eq left="lane_dest" right="#none"/> 7172 </and> 7173 </encoding> 7174 <encoding mask="0xffc00" exact="0x61c00"> 7175 <and> 7176 <neq left="extend" right="#none"/> 7177 <eq left="lane_dest" right="#d0"/> 7178 </and> 7179 <derived start="9" size="1"> 7180 <eq left="extend" right="#sext"/> 7181 <eq left="extend" right="#zext"/> 7182 </derived> 7183 </encoding> 7184 </ins> 7185 7186 <ins name="+LOAD.i48" staging="w=2" mask="0xffe00" exact="0x65200" message="load"> 7187 <src start="0"/> 7188 <src start="3"/> 7189 <mod name="seg" start="6" size="3"> 7190 <reserved/> 7191 <opt>none</opt> 7192 <opt>wls</opt> 7193 <opt>stream</opt> 7194 <opt>ubo</opt> 7195 <reserved/> 7196 <reserved/> 7197 <opt>tl</opt> 7198 </mod> 7199 </ins> 7200 7201 <ins name="+LOAD.i64" staging="w=2" mask="0xffe00" exact="0x60e00" message="load"> 7202 <src start="0"/> 7203 <src start="3"/> 7204 <mod name="seg" start="6" size="3"> 7205 <reserved/> 7206 <opt>none</opt> 7207 <opt>wls</opt> 7208 <opt>stream</opt> 7209 <opt>ubo</opt> 7210 <reserved/> 7211 <reserved/> 7212 <opt>tl</opt> 7213 </mod> 7214 </ins> 7215 7216 <ins name="+LOAD.i8" staging="w=1" message="load"> 7217 <src start="0"/> 7218 <src start="3"/> 7219 <mod name="seg" start="6" size="3"> 7220 <reserved/> 7221 <opt>none</opt> 7222 <opt>wls</opt> 7223 <opt>stream</opt> 7224 <opt>ubo</opt> 7225 <reserved/> 7226 <reserved/> 7227 <opt>tl</opt> 7228 </mod> 7229 <mod name="lane_dest" size="3" default="b0"> 7230 <opt>b0</opt> 7231 <opt>b1</opt> 7232 <opt>b2</opt> 7233 <opt>b3</opt> 7234 <opt>h0</opt> 7235 <opt>h1</opt> 7236 <opt>w0</opt> 7237 <opt>d0</opt> 7238 </mod> 7239 <mod name="extend" size="2"> 7240 <opt>none</opt> 7241 <opt>sext</opt> 7242 <opt>zext</opt> 7243 </mod> 7244 <encoding mask="0xff800" exact="0x60000"> 7245 <and> 7246 <eq left="extend" right="#none"/> 7247 <or> 7248 <eq left="lane_dest" right="#b0"/> 7249 <eq left="lane_dest" right="#b1"/> 7250 <eq left="lane_dest" right="#b2"/> 7251 <eq left="lane_dest" right="#b3"/> 7252 </or> 7253 </and> 7254 <derived start="9" size="2"> 7255 <eq left="lane_dest" right="#b0"/> 7256 <eq left="lane_dest" right="#b1"/> 7257 <eq left="lane_dest" right="#b2"/> 7258 <eq left="lane_dest" right="#b3"/> 7259 </derived> 7260 </encoding> 7261 <encoding mask="0xff800" exact="0x63800"> 7262 <and> 7263 <neq left="extend" right="#none"/> 7264 <or> 7265 <eq left="lane_dest" right="#h0"/> 7266 <eq left="lane_dest" right="#h1"/> 7267 </or> 7268 </and> 7269 <derived start="9" size="1"> 7270 <eq left="extend" right="#sext"/> 7271 <eq left="extend" right="#zext"/> 7272 </derived> 7273 <derived start="10" size="1"> 7274 <eq left="lane_dest" right="#h0"/> 7275 <eq left="lane_dest" right="#h1"/> 7276 </derived> 7277 </encoding> 7278 <encoding mask="0xffc00" exact="0x63400"> 7279 <and> 7280 <neq left="extend" right="#none"/> 7281 <eq left="lane_dest" right="#w0"/> 7282 </and> 7283 <derived start="9" size="1"> 7284 <eq left="extend" right="#sext"/> 7285 <eq left="extend" right="#zext"/> 7286 </derived> 7287 </encoding> 7288 <encoding mask="0xffc00" exact="0x61400"> 7289 <and> 7290 <neq left="extend" right="#none"/> 7291 <eq left="lane_dest" right="#d0"/> 7292 </and> 7293 <derived start="9" size="1"> 7294 <eq left="extend" right="#sext"/> 7295 <eq left="extend" right="#zext"/> 7296 </derived> 7297 </encoding> 7298 </ins> 7299 7300 <ins name="+LOAD.i96" staging="w=3" mask="0xffe00" exact="0x65400" message="load"> 7301 <src start="0"/> 7302 <src start="3"/> 7303 <mod name="seg" start="6" size="3"> 7304 <reserved/> 7305 <opt>none</opt> 7306 <opt>wls</opt> 7307 <opt>stream</opt> 7308 <opt>ubo</opt> 7309 <reserved/> 7310 <reserved/> 7311 <opt>tl</opt> 7312 </mod> 7313 </ins> 7314 7315 <ins name="+LOGB.f32" mask="0xfffe0" exact="0x3d9a0"> 7316 <src start="0"/> 7317 <mod name="widen0" start="3" size="2"> 7318 <reserved/> 7319 <opt>none</opt> 7320 <opt>h0</opt> 7321 <opt>h1</opt> 7322 </mod> 7323 </ins> 7324 7325 <ins name="+LOGB.v2f16" mask="0xfffe0" exact="0x3d980"> 7326 <src start="0"/> 7327 <mod name="swz0" start="3" size="2" default="h01"> 7328 <opt>h00</opt> 7329 <opt>h10</opt> 7330 <opt>h01</opt> 7331 <opt>h11</opt> 7332 </mod> 7333 </ins> 7334 7335 <ins name="+MKVEC.v2i16" mask="0xfff00" exact="0x75300"> 7336 <src start="0"/> 7337 <src start="3"/> 7338 <mod name="lane0" start="6" size="1" default="h0"> 7339 <opt>h0</opt> 7340 <opt>h1</opt> 7341 </mod> 7342 <mod name="lane1" start="7" size="1" default="h0"> 7343 <opt>h0</opt> 7344 <opt>h1</opt> 7345 </mod> 7346 </ins> 7347 7348 <ins name="+MOV.i32" mask="0xffff8" exact="0x3d968"> 7349 <src start="0"/> 7350 </ins> 7351 7352 <ins name="+MUX.i32" mask="0xff800" exact="0x74000"> 7353 <src start="0"/> 7354 <src start="3"/> 7355 <src start="6"/> 7356 <mod name="mux" start="9" size="2" default="int_zero"> 7357 <opt>neg</opt> 7358 <opt>int_zero</opt> 7359 <opt>fp_zero</opt> 7360 <opt>bit</opt> 7361 </mod> 7362 </ins> 7363 7364 <ins name="+MUX.v2i16" mask="0xfc000" exact="0x70000"> 7365 <src start="0"/> 7366 <src start="3"/> 7367 <src start="6"/> 7368 <mod name="mux" start="9" size="2" default="int_zero"> 7369 <opt>neg</opt> 7370 <opt>int_zero</opt> 7371 <opt>fp_zero</opt> 7372 <opt>bit</opt> 7373 </mod> 7374 <mod name="swap2" start="11" size="1" default="h01"> 7375 <opt>h01</opt> 7376 <opt>h10</opt> 7377 </mod> 7378 <mod name="swap1" start="12" size="1" default="h01"> 7379 <opt>h01</opt> 7380 <opt>h10</opt> 7381 </mod> 7382 <mod name="swap0" start="13" size="1" default="h01"> 7383 <opt>h01</opt> 7384 <opt>h10</opt> 7385 </mod> 7386 </ins> 7387 7388 <ins name="+MUX.v4i8" mask="0xffc00" exact="0x74800"> 7389 <src start="0"/> 7390 <src start="3"/> 7391 <src start="6"/> 7392 <mod name="mux" start="9" size="1" default="int_zero"> 7393 <opt>neg</opt> 7394 <opt>int_zero</opt> 7395 </mod> 7396 </ins> 7397 7398 <ins name="+NOP" mask="0xfffff" exact="0x3d964"/> 7399 7400 <ins name="+QUIET.f32" mask="0xffff8" exact="0x3d970"> 7401 <src start="0"/> 7402 </ins> 7403 7404 <ins name="+QUIET.v2f16" mask="0xfffc8" exact="0x3d900"> 7405 <src start="0"/> 7406 <mod name="swz0" start="4" size="2" default="h01"> 7407 <opt>h00</opt> 7408 <opt>h10</opt> 7409 <opt>h01</opt> 7410 <opt>h11</opt> 7411 </mod> 7412 </ins> 7413 7414 <ins name="+S16_TO_F32" mask="0xfffe8" exact="0x3cce0"> 7415 <src start="0"/> 7416 <mod name="lane0" start="4" size="1" default="h0"> 7417 <opt>h0</opt> 7418 <opt>h1</opt> 7419 </mod> 7420 </ins> 7421 7422 <ins name="+S16_TO_S32" mask="0xfffe8" exact="0x3ccc0"> 7423 <src start="0"/> 7424 <mod name="lane0" start="4" size="1" default="h0"> 7425 <opt>h0</opt> 7426 <opt>h1</opt> 7427 </mod> 7428 </ins> 7429 7430 <ins name="+S32_TO_F32"> 7431 <src start="0"/> 7432 <mod name="round" size="3"> 7433 <opt>none</opt> 7434 <opt>rtp</opt> 7435 <opt>rtn</opt> 7436 <opt>rtz</opt> 7437 <opt>rtna</opt> 7438 </mod> 7439 <encoding mask="0xfffc8" exact="0x3cbc0"> 7440 <neq left="round" right="#rtna"/> 7441 <derived start="4" size="2"> 7442 <eq left="round" right="#none"/> 7443 <eq left="round" right="#rtp"/> 7444 <eq left="round" right="#rtn"/> 7445 <eq left="round" right="#rtz"/> 7446 </derived> 7447 </encoding> 7448 <encoding mask="0xffff8" exact="0x3cd00"> 7449 <eq left="round" right="#rtna"/> 7450 </encoding> 7451 </ins> 7452 7453 <ins name="+S8_TO_F32" mask="0xfffc8" exact="0x3cb80"> 7454 <src start="0"/> 7455 <mod name="lane0" start="4" size="2" default="b0"> 7456 <opt>b0</opt> 7457 <opt>b1</opt> 7458 <opt>b2</opt> 7459 <opt>b3</opt> 7460 </mod> 7461 </ins> 7462 7463 <ins name="+S8_TO_S32" mask="0xfffc8" exact="0x3cb40"> 7464 <src start="0"/> 7465 <mod name="lane0" start="4" size="2" default="b0"> 7466 <opt>b0</opt> 7467 <opt>b1</opt> 7468 <opt>b2</opt> 7469 <opt>b3</opt> 7470 </mod> 7471 </ins> 7472 7473 <ins name="+SEG_ADD" mask="0xfff40" exact="0x3d500"> 7474 <src start="0"/> 7475 <mod name="seg" start="3" size="3"> 7476 <reserved/> 7477 <reserved/> 7478 <opt>wls</opt> 7479 <reserved/> 7480 <reserved/> 7481 <reserved/> 7482 <reserved/> 7483 <opt>tl</opt> 7484 </mod> 7485 <mod name="preserve_null" start="7" size="1" opt="preserve_null"/> 7486 </ins> 7487 7488 <ins name="+SEG_SUB" mask="0xfff40" exact="0x3d540" unused="true"> 7489 <src start="0"/> 7490 <mod name="seg" start="3" size="3"> 7491 <reserved/> 7492 <reserved/> 7493 <opt>wls</opt> 7494 <reserved/> 7495 <reserved/> 7496 <reserved/> 7497 <reserved/> 7498 <opt>tl</opt> 7499 </mod> 7500 <mod name="preserve_null" start="7" size="1" opt="preserve_null"/> 7501 </ins> 7502 7503 <ins name="+SHADDXH.i32" mask="0xfffc0" exact="0x3f8c0"> 7504 <src start="0"/> 7505 <src start="3"/> 7506 </ins> 7507 7508 <ins name="+SHIFT_DOUBLE.i32" mask="0xffe00" exact="0xefe00"> 7509 <src start="0"/> 7510 <src start="3"/> 7511 <src start="6"/> 7512 </ins> 7513 7514 <ins name="+STORE.i128" staging="r=4" mask="0xffe00" exact="0x61200" message="store" dests="0"> 7515 <src start="0"/> 7516 <src start="3"/> 7517 <mod name="seg" start="6" size="3"> 7518 <reserved/> 7519 <opt>none</opt> 7520 <opt>wls</opt> 7521 <opt>stream</opt> 7522 <reserved/> 7523 <reserved/> 7524 <reserved/> 7525 <opt>tl</opt> 7526 </mod> 7527 </ins> 7528 7529 <ins name="+STORE.i16" staging="r=1" mask="0xffe00" exact="0x62800" message="store" dests="0"> 7530 <src start="0"/> 7531 <src start="3"/> 7532 <mod name="seg" start="6" size="3"> 7533 <reserved/> 7534 <opt>none</opt> 7535 <opt>wls</opt> 7536 <opt>stream</opt> 7537 <reserved/> 7538 <reserved/> 7539 <reserved/> 7540 <opt>tl</opt> 7541 </mod> 7542 </ins> 7543 7544 <ins name="+STORE.i24" staging="r=1" mask="0xffe00" exact="0x65800" message="store" dests="0"> 7545 <src start="0"/> 7546 <src start="3"/> 7547 <mod name="seg" start="6" size="3"> 7548 <reserved/> 7549 <opt>none</opt> 7550 <opt>wls</opt> 7551 <opt>stream</opt> 7552 <reserved/> 7553 <reserved/> 7554 <reserved/> 7555 <opt>tl</opt> 7556 </mod> 7557 </ins> 7558 7559 <ins name="+STORE.i32" staging="r=1" mask="0xffe00" exact="0x62c00" message="store" dests="0"> 7560 <src start="0"/> 7561 <src start="3"/> 7562 <mod name="seg" start="6" size="3"> 7563 <reserved/> 7564 <opt>none</opt> 7565 <opt>wls</opt> 7566 <opt>stream</opt> 7567 <reserved/> 7568 <reserved/> 7569 <reserved/> 7570 <opt>tl</opt> 7571 </mod> 7572 </ins> 7573 7574 <ins name="+STORE.i48" staging="r=2" mask="0xffe00" exact="0x65a00" message="store" dests="0"> 7575 <src start="0"/> 7576 <src start="3"/> 7577 <mod name="seg" start="6" size="3"> 7578 <reserved/> 7579 <opt>none</opt> 7580 <opt>wls</opt> 7581 <opt>stream</opt> 7582 <reserved/> 7583 <reserved/> 7584 <reserved/> 7585 <opt>tl</opt> 7586 </mod> 7587 </ins> 7588 7589 <ins name="+STORE.i64" staging="r=2" mask="0xffe00" exact="0x62e00" message="store" dests="0"> 7590 <src start="0"/> 7591 <src start="3"/> 7592 <mod name="seg" start="6" size="3"> 7593 <reserved/> 7594 <opt>none</opt> 7595 <opt>wls</opt> 7596 <opt>stream</opt> 7597 <reserved/> 7598 <reserved/> 7599 <reserved/> 7600 <opt>tl</opt> 7601 </mod> 7602 </ins> 7603 7604 <ins name="+STORE.i8" staging="r=1" mask="0xffe00" exact="0x62000" message="store" dests="0"> 7605 <src start="0"/> 7606 <src start="3"/> 7607 <mod name="seg" start="6" size="3"> 7608 <reserved/> 7609 <opt>none</opt> 7610 <opt>wls</opt> 7611 <opt>stream</opt> 7612 <reserved/> 7613 <reserved/> 7614 <reserved/> 7615 <opt>tl</opt> 7616 </mod> 7617 </ins> 7618 7619 <ins name="+STORE.i96" staging="r=3" mask="0xffe00" exact="0x65c00" message="store" dests="0"> 7620 <src start="0"/> 7621 <src start="3"/> 7622 <mod name="seg" start="6" size="3"> 7623 <reserved/> 7624 <opt>none</opt> 7625 <opt>wls</opt> 7626 <opt>stream</opt> 7627 <reserved/> 7628 <reserved/> 7629 <reserved/> 7630 <opt>tl</opt> 7631 </mod> 7632 </ins> 7633 7634 <ins name="+ST_CVT" staging="r=format" mask="0xff800" exact="0xc9800" message="store" dests="0"> 7635 <src start="0"/> 7636 <src start="3"/> 7637 <src start="6" mask="0xf7"/> 7638 <mod name="register_format" size="4" pseudo="true"> 7639 <opt>f16</opt> 7640 <opt>f32</opt> 7641 <opt>s32</opt> 7642 <opt>u32</opt> 7643 <opt>s16</opt> 7644 <opt>u16</opt> 7645 <opt>f64</opt> 7646 <opt>i64</opt> 7647 </mod> 7648 <mod name="vecsize" start="9" size="2"> 7649 <opt>none</opt> 7650 <opt>v2</opt> 7651 <opt>v3</opt> 7652 <opt>v4</opt> 7653 </mod> 7654 </ins> 7655 7656 <ins name="+ST_TILE" staging="r=format" mask="0xff800" exact="0xcb800" message="tile" dests="0"> 7657 <src start="0"/> 7658 <src start="3"/> 7659 <src start="6" mask="0xf7"/> 7660 <mod name="vecsize" start="9" size="2"> 7661 <opt>none</opt> 7662 <opt>v2</opt> 7663 <opt>v3</opt> 7664 <opt>v4</opt> 7665 </mod> 7666 </ins> 7667 7668 <ins name="+SWZ.v2i16" mask="0xfffc8" exact="0x3d948"> 7669 <src start="0"/> 7670 <mod name="swz0" start="4" size="2"> 7671 <opt>h00</opt> 7672 <opt>h10</opt> 7673 <reserved/> 7674 <opt>h11</opt> 7675 </mod> 7676 </ins> 7677 7678 <ins name="+SWZ.v4i8" mask="0xfffc0" exact="0x3df40"> 7679 <src start="0"/> 7680 <mod name="swz0" start="3" size="3"> 7681 <opt>b0000</opt> 7682 <opt>b1111</opt> 7683 <opt>b2222</opt> 7684 <opt>b3333</opt> 7685 <opt>b0011</opt> 7686 <opt>b2233</opt> 7687 <opt>b1032</opt> 7688 <opt>b3210</opt> 7689 </mod> 7690 </ins> 7691 7692 <ins name="+TEXC" staging="rw=sr_count" mask="0xffc00" exact="0xd7000" message="tex"> 7693 <src start="0"/> 7694 <src start="3"/> 7695 <src start="6" mask="0xf7"/> 7696 <mod name="skip" start="9" size="1" opt="skip"/> 7697 <!-- not actually encoded, but used for IR --> 7698 <immediate name="sr_count" size="4" pseudo="true"/> 7699 <mod name="lod_mode" start="13" size="1" default="zero_lod" pseudo="true"> 7700 <opt>computed_lod</opt> 7701 <opt>zero_lod</opt> 7702 </mod> 7703 </ins> 7704 7705 <ins name="+TEXS_2D.f16" staging="w=2" mask="0xfc000" exact="0xd8000" message="tex"> 7706 <src start="0"/> 7707 <src start="3"/> 7708 <immediate name="texture_index" start="6" size="3"/> 7709 <immediate name="sampler_index" start="10" size="3"/> 7710 <mod name="skip" start="9" size="1" opt="skip"/> 7711 <mod name="lod_mode" start="13" size="1" default="zero_lod"> 7712 <opt>computed_lod</opt> 7713 <opt>zero_lod</opt> 7714 </mod> 7715 </ins> 7716 7717 <ins name="+TEXS_2D.f32" staging="w=4" mask="0xfc000" exact="0x58000" message="tex"> 7718 <src start="0"/> 7719 <src start="3"/> 7720 <immediate name="texture_index" start="6" size="3"/> 7721 <immediate name="sampler_index" start="10" size="3"/> 7722 <mod name="skip" start="9" size="1" opt="skip"/> 7723 <mod name="lod_mode" start="13" size="1" default="zero_lod"> 7724 <opt>computed_lod</opt> 7725 <opt>zero_lod</opt> 7726 </mod> 7727 </ins> 7728 7729 <ins name="+TEXS_CUBE.f16" staging="w=2" mask="0xfc000" exact="0xdc000" message="tex"> 7730 <src start="0"/> 7731 <src start="3"/> 7732 <src start="6"/> 7733 <immediate name="sampler_index" start="10" size="2"/> 7734 <immediate name="texture_index" start="12" size="2"/> 7735 <mod name="skip" start="9" size="1" opt="skip"/> 7736 </ins> 7737 7738 <ins name="+TEXS_CUBE.f32" staging="w=4" mask="0xfc000" exact="0x5c000" message="tex"> 7739 <src start="0"/> 7740 <src start="3"/> 7741 <src start="6"/> 7742 <immediate name="sampler_index" start="10" size="2"/> 7743 <immediate name="texture_index" start="12" size="2"/> 7744 <mod name="skip" start="9" size="1" opt="skip"/> 7745 </ins> 7746 7747 <ins name="+U16_TO_F32" mask="0xfffe8" exact="0x3cce8"> 7748 <src start="0"/> 7749 <mod name="lane0" start="4" size="1" default="h0"> 7750 <opt>h0</opt> 7751 <opt>h1</opt> 7752 </mod> 7753 </ins> 7754 7755 <ins name="+U16_TO_U32" mask="0xfffe8" exact="0x3ccc8"> 7756 <src start="0"/> 7757 <mod name="lane0" start="4" size="1" default="h0"> 7758 <opt>h0</opt> 7759 <opt>h1</opt> 7760 </mod> 7761 </ins> 7762 7763 <ins name="+U32_TO_F32"> 7764 <src start="0"/> 7765 <mod name="round" size="3"> 7766 <opt>none</opt> 7767 <opt>rtp</opt> 7768 <opt>rtn</opt> 7769 <opt>rtz</opt> 7770 <opt>rtna</opt> 7771 </mod> 7772 <encoding mask="0xfffc8" exact="0x3cbc8"> 7773 <neq left="round" right="#rtna"/> 7774 <derived start="4" size="2"> 7775 <eq left="round" right="#none"/> 7776 <eq left="round" right="#rtp"/> 7777 <eq left="round" right="#rtn"/> 7778 <eq left="round" right="#rtz"/> 7779 </derived> 7780 </encoding> 7781 <encoding mask="0xffff8" exact="0x3cd08"> 7782 <eq left="round" right="#rtna"/> 7783 </encoding> 7784 </ins> 7785 7786 <ins name="+U8_TO_F32" mask="0xfffc8" exact="0x3cb88"> 7787 <src start="0"/> 7788 <mod name="lane0" start="4" size="2" default="b0"> 7789 <opt>b0</opt> 7790 <opt>b1</opt> 7791 <opt>b2</opt> 7792 <opt>b3</opt> 7793 </mod> 7794 </ins> 7795 7796 <ins name="+U8_TO_U32" mask="0xfffc8" exact="0x3cb48"> 7797 <src start="0"/> 7798 <mod name="lane0" start="4" size="2" default="b0"> 7799 <opt>b0</opt> 7800 <opt>b1</opt> 7801 <opt>b2</opt> 7802 <opt>b3</opt> 7803 </mod> 7804 </ins> 7805 7806 <ins name="+V2F16_TO_V2S16"> 7807 <src start="0"/> 7808 <mod name="round" size="3"> 7809 <opt>none</opt> 7810 <opt>rtp</opt> 7811 <opt>rtn</opt> 7812 <opt>rtz</opt> 7813 <opt>rtna</opt> 7814 </mod> 7815 <mod name="swz0" size="2" default="h01"> 7816 <opt>h00</opt> 7817 <opt>h10</opt> 7818 <opt>h01</opt> 7819 <opt>h11</opt> 7820 </mod> 7821 <encoding mask="0xfff08" exact="0x3c200"> 7822 <neq left="round" right="#rtna"/> 7823 <copy name="swz0" start="6"/> 7824 <derived start="4" size="2"> 7825 <eq left="round" right="#none"/> 7826 <eq left="round" right="#rtp"/> 7827 <eq left="round" right="#rtn"/> 7828 <eq left="round" right="#rtz"/> 7829 </derived> 7830 </encoding> 7831 <encoding mask="0xfffc8" exact="0x3ca80"> 7832 <eq left="round" right="#rtna"/> 7833 <copy name="swz0" start="4"/> 7834 </encoding> 7835 </ins> 7836 7837 <ins name="+V2F16_TO_V2U16"> 7838 <src start="0"/> 7839 <mod name="round" size="3"> 7840 <opt>none</opt> 7841 <opt>rtp</opt> 7842 <opt>rtn</opt> 7843 <opt>rtz</opt> 7844 <opt>rtna</opt> 7845 </mod> 7846 <mod name="swz0" size="2" default="h01"> 7847 <opt>h00</opt> 7848 <opt>h10</opt> 7849 <opt>h01</opt> 7850 <opt>h11</opt> 7851 </mod> 7852 <encoding mask="0xfff08" exact="0x3c208"> 7853 <neq left="round" right="#rtna"/> 7854 <copy name="swz0" start="6"/> 7855 <derived start="4" size="2"> 7856 <eq left="round" right="#none"/> 7857 <eq left="round" right="#rtp"/> 7858 <eq left="round" right="#rtn"/> 7859 <eq left="round" right="#rtz"/> 7860 </derived> 7861 </encoding> 7862 <encoding mask="0xfffc8" exact="0x3ca88"> 7863 <eq left="round" right="#rtna"/> 7864 <copy name="swz0" start="4"/> 7865 </encoding> 7866 </ins> 7867 7868 <ins name="+V2F32_TO_V2F16" mask="0xfe000" exact="0x76000"> 7869 <src start="0"/> 7870 <src start="3"/> 7871 <mod name="abs0" size="1" opt="abs"/> 7872 <mod name="abs1" size="1" opt="abs"/> 7873 <mod name="neg0" size="1" opt="neg"/> 7874 <mod name="neg1" size="1" opt="neg"/> 7875 <mod name="clamp" start="8" size="2"> 7876 <opt>none</opt> 7877 <opt>clamp_0_inf</opt> 7878 <opt>clamp_m1_1</opt> 7879 <opt>clamp_0_1</opt> 7880 </mod> 7881 <mod name="round" start="10" size="3"> 7882 <opt>none</opt> 7883 <opt>rtp</opt> 7884 <opt>rtn</opt> 7885 <opt>rtz</opt> 7886 <opt>rtna</opt> 7887 </mod> 7888 <derived start="6" size="1"> 7889 <and> 7890 <eq left="abs0" right="#none"/> 7891 <eq left="abs1" right="#none"/> 7892 </and> 7893 <and> 7894 <eq left="abs0" right="#abs"/> 7895 <eq left="abs1" right="#abs"/> 7896 </and> 7897 </derived> 7898 <derived start="7" size="1"> 7899 <and> 7900 <eq left="neg0" right="#none"/> 7901 <eq left="neg1" right="#none"/> 7902 </and> 7903 <and> 7904 <eq left="neg0" right="#neg"/> 7905 <eq left="neg1" right="#neg"/> 7906 </and> 7907 </derived> 7908 </ins> 7909 7910 <ins name="+V2S16_TO_V2F16"> 7911 <src start="0"/> 7912 <mod name="round" size="3"> 7913 <opt>none</opt> 7914 <opt>rtp</opt> 7915 <opt>rtn</opt> 7916 <opt>rtz</opt> 7917 <opt>rtna</opt> 7918 </mod> 7919 <mod name="swz0" size="2" default="h01"> 7920 <opt>h00</opt> 7921 <opt>h10</opt> 7922 <opt>h01</opt> 7923 <opt>h11</opt> 7924 </mod> 7925 <encoding mask="0xfff08" exact="0x3c600"> 7926 <neq left="round" right="#rtna"/> 7927 <copy name="swz0" start="6"/> 7928 <derived start="4" size="2"> 7929 <eq left="round" right="#none"/> 7930 <eq left="round" right="#rtp"/> 7931 <eq left="round" right="#rtn"/> 7932 <eq left="round" right="#rtz"/> 7933 </derived> 7934 </encoding> 7935 <encoding mask="0xfffc8" exact="0x3cb00"> 7936 <eq left="round" right="#rtna"/> 7937 <copy name="swz0" start="4"/> 7938 </encoding> 7939 </ins> 7940 7941 <ins name="+V2S8_TO_V2F16" mask="0xfff08" exact="0x3c800"> 7942 <src start="0"/> 7943 <mod name="swz0" start="4" size="4" default="b01"> 7944 <opt>b00</opt> 7945 <opt>b10</opt> 7946 <opt>b20</opt> 7947 <opt>b30</opt> 7948 <opt>b01</opt> 7949 <opt>b11</opt> 7950 <opt>b21</opt> 7951 <opt>b31</opt> 7952 <opt>b02</opt> 7953 <opt>b12</opt> 7954 <opt>b22</opt> 7955 <opt>b32</opt> 7956 <opt>b03</opt> 7957 <opt>b13</opt> 7958 <opt>b23</opt> 7959 <opt>b33</opt> 7960 </mod> 7961 </ins> 7962 7963 <ins name="+V2S8_TO_V2S16" mask="0xfff08" exact="0x3c700"> 7964 <src start="0"/> 7965 <mod name="swz0" start="4" size="4" default="b01"> 7966 <opt>b00</opt> 7967 <opt>b10</opt> 7968 <opt>b20</opt> 7969 <opt>b30</opt> 7970 <opt>b01</opt> 7971 <opt>b11</opt> 7972 <opt>b21</opt> 7973 <opt>b31</opt> 7974 <opt>b02</opt> 7975 <opt>b12</opt> 7976 <opt>b22</opt> 7977 <opt>b32</opt> 7978 <opt>b03</opt> 7979 <opt>b13</opt> 7980 <opt>b23</opt> 7981 <opt>b33</opt> 7982 </mod> 7983 </ins> 7984 7985 <ins name="+V2U16_TO_V2F16"> 7986 <src start="0"/> 7987 <mod name="round" size="3"> 7988 <opt>none</opt> 7989 <opt>rtp</opt> 7990 <opt>rtn</opt> 7991 <opt>rtz</opt> 7992 <opt>rtna</opt> 7993 </mod> 7994 <mod name="swz0" size="2" default="h01"> 7995 <opt>h00</opt> 7996 <opt>h10</opt> 7997 <opt>h01</opt> 7998 <opt>h11</opt> 7999 </mod> 8000 <encoding mask="0xfff08" exact="0x3c608"> 8001 <neq left="round" right="#rtna"/> 8002 <copy name="swz0" start="6"/> 8003 <derived start="4" size="2"> 8004 <eq left="round" right="#none"/> 8005 <eq left="round" right="#rtp"/> 8006 <eq left="round" right="#rtn"/> 8007 <eq left="round" right="#rtz"/> 8008 </derived> 8009 </encoding> 8010 <encoding mask="0xfffc8" exact="0x3cb08"> 8011 <eq left="round" right="#rtna"/> 8012 <copy name="swz0" start="4"/> 8013 </encoding> 8014 </ins> 8015 8016 <ins name="+V2U8_TO_V2F16" mask="0xfff08" exact="0x3c808"> 8017 <src start="0"/> 8018 <mod name="swz0" start="4" size="4" default="b01"> 8019 <opt>b00</opt> 8020 <opt>b10</opt> 8021 <opt>b20</opt> 8022 <opt>b30</opt> 8023 <opt>b01</opt> 8024 <opt>b11</opt> 8025 <opt>b21</opt> 8026 <opt>b31</opt> 8027 <opt>b02</opt> 8028 <opt>b12</opt> 8029 <opt>b22</opt> 8030 <opt>b32</opt> 8031 <opt>b03</opt> 8032 <opt>b13</opt> 8033 <opt>b23</opt> 8034 <opt>b33</opt> 8035 </mod> 8036 </ins> 8037 8038 <ins name="+V2U8_TO_V2U16" mask="0xfff08" exact="0x3c708"> 8039 <src start="0"/> 8040 <mod name="swz0" start="4" size="4" default="b01"> 8041 <opt>b00</opt> 8042 <opt>b10</opt> 8043 <opt>b20</opt> 8044 <opt>b30</opt> 8045 <opt>b01</opt> 8046 <opt>b11</opt> 8047 <opt>b21</opt> 8048 <opt>b31</opt> 8049 <opt>b02</opt> 8050 <opt>b12</opt> 8051 <opt>b22</opt> 8052 <opt>b32</opt> 8053 <opt>b03</opt> 8054 <opt>b13</opt> 8055 <opt>b23</opt> 8056 <opt>b33</opt> 8057 </mod> 8058 </ins> 8059 8060 <ins name="+VAR_TEX.f16" staging="w=2" mask="0xffd00" exact="0xca100" message="vartex"> 8061 <immediate name="varying_index" start="0" size="3"/> 8062 <immediate name="texture_index" start="3" size="2"/> 8063 <mod name="update" size="1"> 8064 <opt>store</opt> 8065 <opt>retrieve</opt> 8066 </mod> 8067 <mod name="skip" start="7" size="1" opt="skip"/> 8068 <mod name="lod_mode" start="9" size="1" default="zero_lod"> 8069 <opt>computed_lod</opt> 8070 <opt>zero_lod</opt> 8071 </mod> 8072 <mod name="sample" size="1"> 8073 <opt>center</opt> 8074 <opt>none</opt> 8075 </mod> 8076 <derived start="5" size="2"> 8077 <and> 8078 <eq left="sample" right="#center"/> 8079 <eq left="update" right="#store"/> 8080 </and> 8081 <and> 8082 <eq left="sample" right="#none"/> 8083 <eq left="update" right="#retrieve"/> 8084 </and> 8085 <reserved/> 8086 <reserved/> 8087 </derived> 8088 </ins> 8089 8090 <ins name="+VAR_TEX.f32" staging="w=4" mask="0xffd00" exact="0xca000" message="vartex"> 8091 <immediate name="varying_index" start="0" size="3"/> 8092 <immediate name="texture_index" start="3" size="2"/> 8093 <mod name="update" size="1"> 8094 <opt>store</opt> 8095 <opt>retrieve</opt> 8096 </mod> 8097 <mod name="skip" start="7" size="1" opt="skip"/> 8098 <mod name="lod_mode" start="9" size="1" default="zero_lod"> 8099 <opt>computed_lod</opt> 8100 <opt>zero_lod</opt> 8101 </mod> 8102 <mod name="sample" size="1"> 8103 <opt>center</opt> 8104 <opt>none</opt> 8105 </mod> 8106 <derived start="5" size="2"> 8107 <and> 8108 <eq left="sample" right="#center"/> 8109 <eq left="update" right="#store"/> 8110 </and> 8111 <and> 8112 <eq left="sample" right="#none"/> 8113 <eq left="update" right="#retrieve"/> 8114 </and> 8115 <reserved/> 8116 <reserved/> 8117 </derived> 8118 </ins> 8119 8120 <ins name="+VN_ASST2.f32"> 8121 <src start="0"/> 8122 <mod name="scale" size="1" opt="scale"/> 8123 <mod name="neg0" size="1" opt="neg"/> 8124 <encoding mask="0xffff0" exact="0x3df80"> 8125 <eq left="scale" right="#none"/> 8126 <copy name="neg0" start="3"/> 8127 </encoding> 8128 <encoding mask="0xfffe8" exact="0x3de80"> 8129 <eq left="scale" right="#scale"/> 8130 <copy name="neg0" start="4"/> 8131 </encoding> 8132 </ins> 8133 8134 <ins name="+VN_ASST2.v2f16" mask="0xffff0" exact="0x3dfa0"> 8135 <src start="0"/> 8136 <mod name="neg0" start="3" size="1" opt="neg"/> 8137 </ins> 8138 8139 <ins name="+WMASK" mask="0xfffc0" exact="0x3d700"> 8140 <src start="0"/> 8141 <immediate name="fill" start="3" size="1"/> 8142 <mod name="subgroup" start="4" size="2"> 8143 <opt>subgroup2</opt> 8144 <opt>subgroup4</opt> 8145 <opt>subgroup8</opt> 8146 </mod> 8147 </ins> 8148 8149 <ins name="+ZS_EMIT" staging="w=1" mask="0xff800" exact="0xd7800" message="z_stencil"> 8150 <src start="0"/> 8151 <src start="3"/> 8152 <src start="6"/> 8153 <mod name="stencil" size="1" opt="stencil"/> 8154 <mod name="z" size="1" opt="z"/> 8155 <derived start="9" size="2"> 8156 <reserved/> 8157 <and> 8158 <eq left="stencil" right="#stencil"/> 8159 <eq left="z" right="#none"/> 8160 </and> 8161 <and> 8162 <eq left="stencil" right="#none"/> 8163 <eq left="z" right="#z"/> 8164 </and> 8165 <and> 8166 <eq left="stencil" right="#stencil"/> 8167 <eq left="z" right="#z"/> 8168 </and> 8169 </derived> 8170 </ins> 8171 8172 <!--- Lowered to *SEG_ADD/+SEG_ADD --> 8173 <ins name="+SEG_ADD.i64" pseudo="true"> 8174 <src start="0"/> 8175 <src start="3"/> 8176 <mod name="seg" size="3"> 8177 <reserved/> 8178 <reserved/> 8179 <opt>wls</opt> 8180 <reserved/> 8181 <reserved/> 8182 <reserved/> 8183 <reserved/> 8184 <opt>tl</opt> 8185 </mod> 8186 <mod name="preserve_null" size="1" opt="preserve_null"/> 8187 </ins> 8188 8189 <!-- Scheduler lowered to *ATOM_C.i32/+ATOM_CX --> 8190 <ins name="+PATOM_C.i32" pseudo="true" staging="rw=sr_count" message="atomic"> 8191 <src start="0"/> 8192 <src start="3"/> 8193 <mod name="atom_opc" start="9" size="4"> 8194 <reserved/> 8195 <reserved/> 8196 <opt>aadd</opt> 8197 <reserved/> 8198 <reserved/> 8199 <reserved/> 8200 <reserved/> 8201 <reserved/> 8202 <opt>asmin</opt> 8203 <opt>asmax</opt> 8204 <opt>aumin</opt> 8205 <opt>aumax</opt> 8206 <opt>aand</opt> 8207 <opt>aor</opt> 8208 <opt>axor</opt> 8209 </mod> 8210 <!-- not actually encoded, but used for IR --> 8211 <immediate name="sr_count" size="4" pseudo="true"/> 8212 </ins> 8213 8214 <ins name="+PATOM_C1.i32" pseudo="true" staging="w=sr_count" message="atomic"> 8215 <src start="0"/> 8216 <src start="3"/> 8217 <mod name="atom_opc" start="6" size="3"> 8218 <opt>ainc</opt> 8219 <opt>adec</opt> 8220 <opt>aumax1</opt> 8221 <opt>asmax1</opt> 8222 <opt>aor1</opt> 8223 </mod> 8224 <!-- not actually encoded, but used for IR --> 8225 <immediate name="sr_count" size="4" pseudo="true"/> 8226 </ins> 8227 8228 <!-- *CUBEFACE1/+CUBEFACE2 pair, two destinations, scheduler lowered --> 8229 <ins name="+CUBEFACE" pseudo="true" dests="2"> 8230 <src start="0"/> 8231 <src start="3"/> 8232 <src start="6"/> 8233 <mod name="neg0" size="1" opt="neg"/> 8234 <mod name="neg1" size="1" opt="neg"/> 8235 <mod name="neg2" size="1" opt="neg"/> 8236 </ins> 8237 8238 <ins name="+IADD_IMM.i32" pseudo="true"> 8239 <src start="0"/> 8240 <immediate name="index" size="32"/> 8241 </ins> 8242 8243 <ins name="+IADD_IMM.v2i16" pseudo="true"> 8244 <src start="0"/> 8245 <immediate name="index" size="32"/> 8246 </ins> 8247 8248 <ins name="+IADD_IMM.v4i8" pseudo="true"> 8249 <src start="0"/> 8250 <immediate name="index" size="32"/> 8251 </ins> 8252 8253 <ins name="+FADD_IMM.f32" pseudo="true"> 8254 <src start="0"/> 8255 <immediate name="index" size="32"/> 8256 </ins> 8257 8258 <ins name="+FADD_IMM.v2f16" pseudo="true"> 8259 <src start="0"/> 8260 <immediate name="index" size="32"/> 8261 </ins> 8262 8263 <ins name="+FRSCALE.f32" pseudo="true"> 8264 <src start="0"/> 8265 <src start="3"/> 8266 <mod name="clamp" size="2"> 8267 <opt>none</opt> 8268 <opt>clamp_0_inf</opt> 8269 <opt>clamp_m1_1</opt> 8270 <opt>clamp_0_1</opt> 8271 </mod> 8272 <mod name="neg0" size="1" opt="neg"/> 8273 <mod name="neg1" size="1" opt="neg"/> 8274 <mod name="abs0" start="15" size="1" opt="abs"/> 8275 <mod name="abs1" start="15" size="1" opt="abs"/> 8276 </ins> 8277 8278 <ins name="+FRSCALE.v2f16" pseudo="true"> 8279 <src start="0"/> 8280 <src start="3"/> 8281 <mod name="clamp" size="2"> 8282 <opt>none</opt> 8283 <opt>clamp_0_inf</opt> 8284 <opt>clamp_m1_1</opt> 8285 <opt>clamp_0_1</opt> 8286 </mod> 8287 <mod name="neg0" size="1" opt="neg"/> 8288 <mod name="neg1" size="1" opt="neg"/> 8289 <mod name="abs0" start="15" size="1" opt="abs"/> 8290 <mod name="abs1" start="15" size="1" opt="abs"/> 8291 </ins> 8292 8293 <ins name="*FABSNEG.f32" pseudo="true"> 8294 <src start="0" mask="0xfb"/> 8295 <mod name="neg0" start="7" size="1" opt="neg"/> 8296 <mod name="abs0" start="12" size="1" opt="abs"/> 8297 <mod name="widen0" size="2"> 8298 <opt>none</opt> 8299 <opt>h0</opt> 8300 <opt>h1</opt> 8301 </mod> 8302 </ins> 8303 8304 <ins name="*FABSNEG.v2f16" pseudo="true"> 8305 <src start="0" mask="0xfb"/> 8306 <mod name="abs0" size="1" opt="abs"/> 8307 <mod name="neg0" start="7" size="1" opt="neg"/> 8308 <mod name="swz0" start="9" size="2" default="h01"> 8309 <opt>h00</opt> 8310 <opt>h10</opt> 8311 <opt>h01</opt> 8312 <opt>h11</opt> 8313 </mod> 8314 </ins> 8315 8316 <ins name="*FCLAMP.f32" pseudo="true"> 8317 <src start="0" mask="0xfb"/> 8318 <mod name="clamp" start="15" size="2"> 8319 <opt>none</opt> 8320 <opt>clamp_0_inf</opt> 8321 <opt>clamp_m1_1</opt> 8322 <opt>clamp_0_1</opt> 8323 </mod> 8324 </ins> 8325 8326 <ins name="*FCLAMP.v2f16" pseudo="true"> 8327 <src start="0" mask="0xfb"/> 8328 <mod name="clamp" start="15" size="2"> 8329 <opt>none</opt> 8330 <opt>clamp_0_inf</opt> 8331 <opt>clamp_m1_1</opt> 8332 <opt>clamp_0_1</opt> 8333 </mod> 8334 </ins> 8335 8336 <ins name="+DISCARD.b32" pseudo="true" dests="0"> 8337 <src start="0"/> 8338 <mod name="widen0" size="2"> 8339 <opt>none</opt> 8340 <opt>h0</opt> 8341 <opt>h1</opt> 8342 </mod> 8343 </ins> 8344 8345</bifrost> 8346