17495:         /*0000*/                   IMAD.MOV.U32 R1, RZ, RZ, c[0x0][0x28] ;
17497:         /*0010*/                   ULDC.64 UR4, c[0x0][0x170] ;
17499:         /*0020*/                   S2R R4, SR_CTAID.X ;
17501:         /*0030*/                   UISETP.GT.U32.AND UP0, UPT, UR4, 0x1, UPT ;
17503:         /*0040*/                   UISETP.GT.U32.AND.EX UP0, UPT, UR5, URZ, UPT, UP0 ;
17505:         /*0050*/                   USEL UR8, UR4, 0x1, UP0 ;
17507:         /*0060*/                   USEL UR9, URZ, UR5, !UP0 ;
17509:         /*0070*/                   UIADD3 UR8, UP0, UR8, -0x1, URZ ;
17511:         /*0080*/                   UIADD3.X UR9, UR9, -0x1, URZ, UP0, !UPT ;
17513:         /*0090*/                   UISETP.NE.U32.AND UP0, UPT, URZ, UR4, UPT ;
17515:         /*00a0*/                   USHF.R.U64 UR8, UR8, 0x5, UR9 ;
17517:         /*00b0*/                   UISETP.NE.U32.AND.EX UP0, UPT, URZ, UR5, UPT, UP0 ;
17519:         /*00c0*/                   UIADD3 UR8, UP1, UR8, 0x1, URZ ;
17521:         /*00d0*/                   ULEA.HI.X UR9, UR9, URZ, URZ, 0x1b, UP1 ;
17523:         /*00e0*/                   USEL UR8, UR8, URZ, UP0 ;
17525:         /*00f0*/                   USEL UR9, UR9, URZ, UP0 ;
17527:         /*0100*/                   ISETP.LT.U32.AND P0, PT, R4, UR8, PT ;
17529:         /*0110*/                   IMAD.U32 R0, RZ, RZ, UR9 ;
17531:         /*0120*/                   ISETP.GT.U32.AND.EX P0, PT, R0, RZ, PT, P0 ;
17533:         /*0130*/              @!P0 EXIT ;
17535:         /*0140*/                   S2R R0, SR_TID.X ;
17537:         /*0150*/                   ULDC.64 UR6, c[0x0][0x168] ;
17539:         /*0160*/                   IMAD.MOV.U32 R5, RZ, RZ, RZ ;
17541:         /*0170*/                   ULOP3.LUT UR6, UR6, 0xffffffc0, URZ, 0xc0, !UPT ;
17543:         /*0180*/                   ULDC.64 UR4, c[0x0][0x160] ;
17545:         /*0190*/                   ULOP3.LUT UR7, UR7, 0x1fffffff, URZ, 0xc0, !UPT ;
17547:         /*01a0*/                   UIADD3 UR6, UP0, UR6, UR4, URZ ;
17549:         /*01b0*/                   ULDC.64 UR12, c[0x0][0x118] ;
17551:         /*01c0*/                   UIADD3.X UR7, UR7, UR5, URZ, UP0, !UPT ;
17553:         /*01d0*/                   IMAD.SHL.U32 R6, R4.reuse, 0x20, RZ ;
17555:         /*01e0*/                   SHF.L.U64.HI R16, R4, 0x5, R5 ;
17557:         /*01f0*/                   BSSY B0, 0x5e0 ;
17559:         /*0200*/                   IADD3 R7, P1, -R6, c[0x0][0x170], RZ ;
17561:         /*0210*/                   ISETP.LT.U32.AND P0, PT, R7, 0x20, PT ;
17563:         /*0220*/                   IADD3.X R2, ~R16, c[0x0][0x174], RZ, P1, !PT ;
17565:         /*0230*/                   ISETP.LT.AND.EX P0, PT, R2, RZ, PT, P0 ;
17567:         /*0240*/                   SEL R7, R7, 0x20, P0 ;
17569:         /*0250*/                   ISETP.GE.AND P0, PT, R0, R7, PT ;
17571:         /*0260*/               @P0 BRA 0x5d0 ;
17573:         /*0270*/                   IMAD.MOV.U32 R8, RZ, RZ, R0 ;
17575:         /*0280*/                   IADD3 R2, P0, R8, R6, RZ ;
17577:         /*0290*/                   BSSY B1, 0x470 ;
17579:         /*02a0*/                   IMAD.X R3, RZ, RZ, R16, P0 ;
17581:         /*02b0*/                   LOP3.LUT R9, R3, c[0x0][0x17c], RZ, 0xfc, !PT ;
17583:         /*02c0*/                   ISETP.NE.U32.AND P0, PT, R9, RZ, PT ;
17585:         /*02d0*/               @P0 BRA 0x420 ;
17587:         /*02e0*/                   I2F.U32.RP R9, c[0x0][0x178] ;
17589:         /*02f0*/                   ISETP.NE.U32.AND P2, PT, RZ, c[0x0][0x178], PT ;
17591:         /*0300*/                   MUFU.RCP R9, R9 ;
17593:         /*0310*/                   IADD3 R10, R9, 0xffffffe, RZ ;
17595:         /*0320*/                   F2I.FTZ.U32.TRUNC.NTZ R11, R10 ;
17597:         /*0330*/                   IMAD.MOV.U32 R10, RZ, RZ, RZ ;
17599:         /*0340*/                   IMAD.MOV R13, RZ, RZ, -R11 ;
17601:         /*0350*/                   IMAD R13, R13, c[0x0][0x178], RZ ;
17603:         /*0360*/                   IMAD.HI.U32 R11, R11, R13, R10 ;
17605:         /*0370*/                   IMAD.HI.U32 R10, R11, R2, RZ ;
17607:         /*0380*/                   IMAD.MOV R11, RZ, RZ, -R10 ;
17609:         /*0390*/                   IMAD R11, R11, c[0x0][0x178], R2 ;
17611:         /*03a0*/                   ISETP.GE.U32.AND P0, PT, R11, c[0x0][0x178], PT ;
17613:         /*03b0*/               @P0 IADD3 R11, R11, -c[0x0][0x178], RZ ;
17615:         /*03c0*/               @P0 IADD3 R10, R10, 0x1, RZ ;
17617:         /*03d0*/                   ISETP.GE.U32.AND P1, PT, R11, c[0x0][0x178], PT ;
17619:         /*03e0*/                   IMAD.MOV.U32 R11, RZ, RZ, RZ ;
17621:         /*03f0*/               @P1 IADD3 R10, R10, 0x1, RZ ;
17623:         /*0400*/              @!P2 LOP3.LUT R10, RZ, c[0x0][0x178], RZ, 0x33, !PT ;
17625:         /*0410*/                   BRA 0x460 ;
17627:         /*0420*/                   MOV R10, 0x440 ;
17629:         /*0430*/                   CALL.REL.NOINC 0x640 ;
17631:         /*0440*/                   IMAD.MOV.U32 R10, RZ, RZ, R9 ;
17633:         /*0450*/                   IMAD.MOV.U32 R11, RZ, RZ, R12 ;
17635:         /*0460*/                   BSYNC B1 ;
17637:         /*0470*/                   IADD3 R14, P0, RZ, -R10, RZ ;
17639:         /*0480*/                   IADD3 R8, R8, 0x20, RZ ;
17641:         /*0490*/                   IMAD.X R9, RZ, RZ, ~R11, P0 ;
17643:         /*04a0*/                   IMAD.WIDE.U32 R12, R14, c[0x0][0x178], R2 ;
17645:         /*04b0*/                   IMAD R9, R9, c[0x0][0x178], RZ ;
17647:         /*04c0*/                   IMAD R11, R11, c[0x0][0x180], RZ ;
17649:         /*04d0*/                   IMAD R9, R14, c[0x0][0x17c], R9 ;
17651:         /*04e0*/                   IMAD.IADD R13, R13, 0x1, R9 ;
17653:         /*04f0*/                   IMAD R9, R10.reuse, c[0x0][0x184], R11 ;
17655:         /*0500*/                   IMAD.WIDE.U32 R10, R10, c[0x0][0x180], R12 ;
17657:         /*0510*/                   LEA R12, P1, R2, UR6, 0x3 ;
17659:         /*0520*/                   IMAD.IADD R14, R11, 0x1, R9 ;
17661:         /*0530*/                   LEA.HI.X R13, R2, UR7, R3, 0x3, P1 ;
17663:         /*0540*/                   SHF.R.S32.HI R11, RZ, 0x1f, R14.reuse ;
17665:         /*0550*/                   SHF.R.S32.HI R9, RZ, 0x1f, R14 ;
17667:         /*0560*/                   LOP3.LUT R11, R11, c[0x0][0x188], RZ, 0xc0, !PT ;
17669:         /*0570*/                   LOP3.LUT R9, R9, c[0x0][0x18c], RZ, 0xc0, !PT ;
17671:         /*0580*/                   IADD3 R10, P0, R11, R10, RZ ;
17673:         /*0590*/                   IMAD.X R11, R9, 0x1, R14, P0 ;
17675:         /*05a0*/                   ISETP.GE.AND P0, PT, R8, R7, PT ;
17677:         /*05b0*/                   STG.E.64 [R12.64], R10 ;
17679:         /*05c0*/              @!P0 BRA 0x280 ;
17681:         /*05d0*/                   BSYNC B0 ;
17683:         /*05e0*/                   IADD3 R4, P0, R4, c[0x0][0xc], RZ ;
17685:         /*05f0*/                   IMAD.X R5, RZ, RZ, R5, P0 ;
17687:         /*0600*/                   ISETP.GE.U32.AND P0, PT, R4, UR8, PT ;
17689:         /*0610*/                   ISETP.GE.U32.AND.EX P0, PT, R5, UR9, PT, P0 ;
17691:         /*0620*/               @P0 EXIT ;
17693:         /*0630*/                   BRA 0x1d0 ;
17695:         /*0640*/                   ULDC.64 UR10, c[0x0][0x178] ;
17697:         /*0650*/                   ISETP.GE.AND P3, PT, R3, RZ, PT ;
17699:         /*0660*/                   UIADD3 UR4, UP1, URZ, -UR10, URZ ;
17701:         /*0670*/                   UISETP.LE.AND UP0, UPT, URZ, UR11, UPT ;
17703:         /*0680*/                   UIADD3.X UR5, URZ, ~UR11, URZ, UP1, !UPT ;
17705:         /*0690*/                   USEL UR4, UR4, UR10, !UP0 ;
17707:         /*06a0*/                   USEL UR5, UR5, UR11, !UP0 ;
17709:         /*06b0*/                   I2F.U64.RP R9, UR4 ;
17711:         /*06c0*/                   MUFU.RCP R9, R9 ;
17713:         /*06d0*/                   IADD3 R12, R9, 0x1ffffffe, RZ ;
17715:         /*06e0*/                   F2I.U64.TRUNC R12, R12 ;
17717:         /*06f0*/                   IMAD.WIDE.U32 R14, R12, UR4, RZ ;
17719:         /*0700*/                   IMAD R11, R12.reuse, UR5, R15 ;
17721:         /*0710*/                   IADD3 R17, P0, RZ, -R14, RZ ;
17723:         /*0720*/                   IMAD.MOV.U32 R15, RZ, RZ, R12 ;
17725:         /*0730*/                   IMAD R11, R13, UR4, R11 ;
17727:         /*0740*/                   IMAD.HI.U32 R14, R12, R17, RZ ;
17729:         /*0750*/                   IMAD.X R11, RZ, RZ, ~R11, P0 ;
17731:         /*0760*/                   IMAD.WIDE.U32 R14, P0, R12, R11, R14 ;
17733:         /*0770*/                   IMAD R19, R13.reuse, R11, RZ ;
17735:         /*0780*/                   IMAD.HI.U32 R14, P1, R13, R17, R14 ;
17737:         /*0790*/                   IMAD.HI.U32 R9, R13, R11, RZ ;
17739:         /*07a0*/                   IADD3 R15, P2, R19, R14, RZ ;
17741:         /*07b0*/                   IMAD.X R9, R9, 0x1, R13, P0 ;
17743:         /*07c0*/                   IMAD.WIDE.U32 R12, R15, UR4, RZ ;
17745:         /*07d0*/                   IADD3.X R9, RZ, RZ, R9, P2, P1 ;
17747:         /*07e0*/                   IMAD R14, R15, UR5, R13 ;
17749:         /*07f0*/                   IADD3 R17, P0, RZ, -R12, RZ ;
17751:         /*0800*/                   IADD3 R13, P4, RZ, -R2, RZ ;
17753:         /*0810*/                   IMAD R11, R9, UR4, R14 ;
17755:         /*0820*/                   IMAD.HI.U32 R14, R15, R17, RZ ;
17757:         /*0830*/                   IMAD.X R12, RZ, RZ, ~R11, P0 ;
17759:         /*0840*/                   IMAD.WIDE.U32 R14, P0, R15, R12, R14 ;
17761:         /*0850*/                   IMAD.HI.U32 R11, P1, R9, R17, R14 ;
17763:         /*0860*/                   SEL R15, R13, R2, !P3 ;
17765:         /*0870*/                   IMAD R14, R9.reuse, R12.reuse, RZ ;
17767:         /*0880*/                   IMAD.HI.U32 R12, R9, R12, RZ ;
17769:         /*0890*/                   IADD3 R11, P2, R14, R11, RZ ;
17771:         /*08a0*/                   IMAD.X R13, RZ, RZ, ~R3, P4 ;
17773:         /*08b0*/                   IMAD.X R9, R12, 0x1, R9, P0 ;
17775:         /*08c0*/                   IMAD.HI.U32 R12, R11, R15, RZ ;
17777:         /*08d0*/                   SEL R18, R13, R3, !P3 ;
17779:         /*08e0*/                   IADD3.X R9, RZ, RZ, R9, P2, P1 ;
17781:         /*08f0*/                   IMAD.MOV.U32 R13, RZ, RZ, RZ ;
17783:         /*0900*/                   IMAD.WIDE.U32 R12, R11, R18, R12 ;
17785:         /*0910*/                   IMAD R14, R9.reuse, R18, RZ ;
17787:         /*0920*/                   IMAD.HI.U32 R11, P0, R9, R15, R12 ;
17789:         /*0930*/                   IMAD.HI.U32 R9, R9, R18, RZ ;
17791:         /*0940*/                   IADD3 R11, P1, R14, R11, RZ ;
17793:         /*0950*/                   IMAD.X R9, RZ, RZ, R9, P0 ;
17795:         /*0960*/                   IMAD.WIDE.U32 R12, R11, UR4, RZ ;
17797:         /*0970*/                   IMAD.X R9, RZ, RZ, R9, P1 ;
17799:         /*0980*/                   IADD3 R12, P1, -R12, R15, RZ ;
17801:         /*0990*/                   IMAD R14, R11, UR5, R13 ;
17803:         /*09a0*/                   ISETP.GE.U32.AND P0, PT, R12, UR4, PT ;
17805:         /*09b0*/                   IMAD R14, R9, UR4, R14 ;
17807:         /*09c0*/                   IMAD.X R18, R18, 0x1, ~R14, P1 ;
17809:         /*09d0*/                   IADD3 R13, P1, R12, -UR4, RZ ;
17811:         /*09e0*/                   IADD3 R14, P2, R11, 0x1, RZ ;
17813:         /*09f0*/                   ISETP.GE.U32.AND.EX P0, PT, R18.reuse, UR5, PT, P0 ;
17815:         /*0a00*/                   IADD3.X R15, R18, ~UR5, RZ, P1, !PT ;
17817:         /*0a10*/                   SEL R13, R13, R12, P0 ;
17819:         /*0a20*/                   IMAD.X R12, RZ, RZ, R9, P2 ;
17821:         /*0a30*/                   SEL R14, R14, R11, P0 ;
17823:         /*0a40*/                   SEL R15, R15, R18, P0 ;
17825:         /*0a50*/                   ISETP.GE.U32.AND P1, PT, R13, UR4, PT ;
17827:         /*0a60*/                   SEL R11, R12, R9, P0 ;
17829:         /*0a70*/                   IADD3 R9, P2, R14, 0x1, RZ ;
17831:         /*0a80*/                   ISETP.GE.U32.AND.EX P0, PT, R15, UR5, PT, P1 ;
17833:         /*0a90*/                   LOP3.LUT R13, R3, c[0x0][0x17c], RZ, 0x3c, !PT ;
17835:         /*0aa0*/                   IMAD.X R12, RZ, RZ, R11, P2 ;
17837:         /*0ab0*/                   SEL R9, R9, R14, P0 ;
17839:         /*0ac0*/                   ISETP.GE.AND P1, PT, R13, RZ, PT ;
17841:         /*0ad0*/                   SEL R12, R12, R11, P0 ;
17843:         /*0ae0*/                   IADD3 R14, P2, RZ, -R9.reuse, RZ ;
17845:         /*0af0*/                   ISETP.NE.U32.AND P0, PT, RZ, c[0x0][0x178], PT ;
17847:         /*0b00*/                   SEL R9, R14, R9, !P1 ;
17849:         /*0b10*/                   IMAD.X R11, RZ, RZ, ~R12, P2 ;
17851:         /*0b20*/                   ISETP.NE.AND.EX P0, PT, RZ, c[0x0][0x17c], PT, P0 ;
17853:         /*0b30*/                   SEL R12, R11, R12, !P1 ;
17855:         /*0b40*/                   IMAD.MOV.U32 R11, RZ, RZ, 0x0 ;
17857:         /*0b50*/                   SEL R9, R9, 0xffffffff, P0 ;
17859:         /*0b60*/                   SEL R12, R12, 0xffffffff, P0 ;
17861:         /*0b70*/                   RET.REL.NODEC R10 0x0 ;
17863:         /*0b80*/                   BRA 0xb80;
17865:         /*0b90*/                   NOP;
17867:         /*0ba0*/                   NOP;
17869:         /*0bb0*/                   NOP;
17871:         /*0bc0*/                   NOP;
17873:         /*0bd0*/                   NOP;
17875:         /*0be0*/                   NOP;
17877:         /*0bf0*/                   NOP;
17879:         /*0c00*/                   NOP;
17881:         /*0c10*/                   NOP;
17883:         /*0c20*/                   NOP;
17885:         /*0c30*/                   NOP;
17887:         /*0c40*/                   NOP;
17889:         /*0c50*/                   NOP;
17891:         /*0c60*/                   NOP;
17893:         /*0c70*/                   NOP;
