Exemple #1
0
 table30_t() : Table() {
     table[0x000] = INSTRUCTION(rldiclx);
     table[0x001] = INSTRUCTION(rldicrx);
     table[0x002] = INSTRUCTION(rldicx);
     table[0x003] = INSTRUCTION(rldimix);
     table[0x004] = INSTRUCTION(rldc_lr);
 }
Exemple #2
0
 table59_t() : Table() {
     table[0x012] = INSTRUCTION(fdivsx);
     table[0x014] = INSTRUCTION(fsubsx);
     table[0x015] = INSTRUCTION(faddsx);
     table[0x016] = INSTRUCTION(fsqrtsx);
     table[0x018] = INSTRUCTION(fresx);
     table[0x019] = INSTRUCTION(fmulsx);
     table[0x01C] = INSTRUCTION(fmsubsx);
     table[0x01D] = INSTRUCTION(fmaddsx);
     table[0x01E] = INSTRUCTION(fnmsubsx);
     table[0x01F] = INSTRUCTION(fnmaddsx);
 }
Exemple #3
0
 table63_t() : Table() {
     table[0x017] = INSTRUCTION(fselx);
     table[0x019] = INSTRUCTION(fmulx);
     table[0x01C] = INSTRUCTION(fmsubx);
     table[0x01D] = INSTRUCTION(fmaddx);
     table[0x01E] = INSTRUCTION(fnmsubx);
     table[0x01F] = INSTRUCTION(fnmaddx);
 }
Exemple #4
0
    NOTE_G, 125,  NOTE_C, 125
};

//#pragma INTO_ROM
seven_seg_display_t  zero_display = { 
    SEVEN_SEG_AB, 1, 0, 0, 0,
    CHAR_0, 0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,
    CHAR_0, 0, 0, 0, 0, 0, 0, 0,0,0,0,0,0,0,0,0,
};

//----------------------------------------------------------------------------
// test sequence  : move forward for 2 seconds.
//
uint16_t  program_a[50] = {

    INSTRUCTION(PUSH_L8,        IMMEDIATE,  40              ), 
    INSTRUCTION(PUSH_L8,        IMMEDIATE,  MOTOR_FORWARD   ),
    INSTRUCTION(PUSH_L8,        IMMEDIATE,  LEFT_MOTOR      ),
    INSTRUCTION(SET_PARAMETER,  NO_MOD,     SPEED           ),
    INSTRUCTION(PUSH_L8,        IMMEDIATE,  40              ), 
    INSTRUCTION(PUSH_L8,        IMMEDIATE,  MOTOR_FORWARD   ),
    INSTRUCTION(PUSH_L8,        IMMEDIATE,  RIGHT_MOTOR     ),
    INSTRUCTION(SET_PARAMETER,  NO_MOD,     SPEED           ),
    INSTRUCTION(EXECUTE,        NO_MOD,     START           ),
    INSTRUCTION(DELAY,          IMMEDIATE,  20              ),
    INSTRUCTION(EXECUTE,        NO_MOD,     STOP            ),
    INSTRUCTION(EXIT,           NO_MOD,     NO_DATA         ),
};

//
// decompressed robot command data structure
static void ConstructShader( std::vector<GEN::Instruction>& ops, size_t nRegs, size_t nThreadsPerGroup, size_t simd )
{
    // copy EOT payload
    ops.push_back( 
        GEN::UnaryInstruction( 8, GEN::OP_MOV,
            GEN::DestOperand( GEN::DT_U32, GEN::RegisterRegion( GEN::DirectRegReference(127),8,8,1 ) ),
            GEN::SourceOperand( GEN::DT_U32, GEN::RegisterRegion( GEN::DirectRegReference(0),8,8,1) ) 
            )
    );

  
    ///////////////////////////////////////////////////////
    GEN::DataTypes eType = DATATYPE;
    size_t nFirstOp=ops.size();
    switch( simd )
    {
    case 4:
        {
            // SIMD4
     
            // do some math
            for( size_t i=0; i<NUM_VEC4S; i++ )
            {
                size_t r = 8 + (i%nRegs) ; // write alternating registers
                ops.push_back(
                    INSTRUCTION(4,r)
                );
            }
        }
        break;
    case 8:
        {
            // SIMD8
     
            // do some math
            for( size_t i=0; i<NUM_VEC8S; i++ )
            {
                size_t r = 8 + (i%nRegs) ; // write alternating registers
                ops.push_back(
                    INSTRUCTION(8,r)
                );
            
            }
        }
        break;
    case 16:
        {
            // SIMD16
      
   
            // do some math
            for( size_t i=0; i<NUM_VEC16S; i++ )
            {
                size_t r = 8 + 2*(i%nRegs); // write alternating registers
                ops.push_back(
                    INSTRUCTION(16,r)
                );
            }
        }
        break;
    }

#ifdef NODDCHK
    // set the noDDChk bits
    //   Using NoDDChk with f-add seems to kill dual-issue
    while( nFirstOp < ops.size() )
        ops[nFirstOp++].DisableDDCheck();
#endif
    ///////////////////////////////////////////////////
    
   
   
    
    ops.push_back( 
        GEN::SendEOT(127)
    );
}
Exemple #6
0
 table4_t() : Table() {
     table[0x020] = INSTRUCTION(vmhaddshs);
     table[0x021] = INSTRUCTION(vmhraddshs);
     table[0x022] = INSTRUCTION(vmladduhm);
     table[0x024] = INSTRUCTION(vmsumubm);
     table[0x025] = INSTRUCTION(vmsummbm);
     table[0x026] = INSTRUCTION(vmsumuhm);
     table[0x027] = INSTRUCTION(vmsumuhs);
     table[0x028] = INSTRUCTION(vmsumshm);
     table[0x029] = INSTRUCTION(vmsumshs);
     table[0x02A] = INSTRUCTION(vsel);
     table[0x02B] = INSTRUCTION(vperm);
     table[0x02C] = INSTRUCTION(vsldoi);
     table[0x02E] = INSTRUCTION(vmaddfp);
     table[0x02F] = INSTRUCTION(vnmsubfp);
 }
Exemple #7
0
 table63_ext_t() : Table() {
     table[0x000] = INSTRUCTION(fcmpu);
     table[0x00C] = INSTRUCTION(frspx);
     table[0x00E] = INSTRUCTION(fctiwx);
     table[0x00F] = INSTRUCTION(fctiwzx);
     table[0x012] = INSTRUCTION(fdivx);
     table[0x014] = INSTRUCTION(fsubx);
     table[0x015] = INSTRUCTION(faddx);
     table[0x016] = INSTRUCTION(fsqrtx);
     table[0x01A] = INSTRUCTION(frsqrtex);
     table[0x020] = INSTRUCTION(fcmpo);
     table[0x026] = INSTRUCTION(mtfsb1x);
     table[0x028] = INSTRUCTION(fnegx);
     table[0x040] = INSTRUCTION(mcrfs);
     table[0x046] = INSTRUCTION(mtfsb0x);
     table[0x048] = INSTRUCTION(fmrx);
     table[0x086] = INSTRUCTION(mtfsfix);
     table[0x088] = INSTRUCTION(fnabsx);
     table[0x108] = INSTRUCTION(fabsx);
     table[0x247] = INSTRUCTION(mffsx);
     table[0x2C7] = INSTRUCTION(mtfsfx);
     table[0x32E] = INSTRUCTION(fctidx);
     table[0x32F] = INSTRUCTION(fctidzx);
     table[0x34E] = INSTRUCTION(fcfidx);
 }
Exemple #8
0
 table62_t() : Table() {
     table[0x000] = INSTRUCTION(std);
     table[0x001] = INSTRUCTION(stdu);
 }
Exemple #9
0
 table58_t() : Table() {
     table[0x000] = INSTRUCTION(ld);
     table[0x001] = INSTRUCTION(ldu);
     table[0x002] = INSTRUCTION(lwa);
 }
Exemple #10
0
 table_primary_t() : Table() {
     table[0x004] = TABLE(get_table4);
     table[0x013] = TABLE(get_table19);
     table[0x01E] = TABLE(get_table30);
     table[0x01F] = TABLE(get_table31);
     table[0x03A] = TABLE(get_table58);
     table[0x03B] = TABLE(get_table59);
     table[0x03E] = TABLE(get_table62);
     table[0x03F] = TABLE(get_table63);
     table[0x002] = INSTRUCTION(tdi);
     table[0x003] = INSTRUCTION(twi);
     table[0x007] = INSTRUCTION(mulli);
     table[0x008] = INSTRUCTION(subfic);
     table[0x00A] = INSTRUCTION(cmpli);
     table[0x00B] = INSTRUCTION(cmpi);
     table[0x00C] = INSTRUCTION(addic);
     table[0x00D] = INSTRUCTION(addic_);
     table[0x00E] = INSTRUCTION(addi);
     table[0x00F] = INSTRUCTION(addis);
     table[0x010] = INSTRUCTION(bcx);
     table[0x011] = INSTRUCTION(sc);
     table[0x012] = INSTRUCTION(bx);
     table[0x014] = INSTRUCTION(rlwimix);
     table[0x015] = INSTRUCTION(rlwinmx);
     table[0x017] = INSTRUCTION(rlwnmx);
     table[0x018] = INSTRUCTION(ori);
     table[0x019] = INSTRUCTION(oris);
     table[0x01A] = INSTRUCTION(xori);
     table[0x01B] = INSTRUCTION(xoris);
     table[0x01C] = INSTRUCTION(andi_);
     table[0x01D] = INSTRUCTION(andis_);
     table[0x020] = INSTRUCTION(lwz);
     table[0x021] = INSTRUCTION(lwzu);
     table[0x022] = INSTRUCTION(lbz);
     table[0x023] = INSTRUCTION(lbzu);
     table[0x024] = INSTRUCTION(stw);
     table[0x025] = INSTRUCTION(stwu);
     table[0x026] = INSTRUCTION(stb);
     table[0x027] = INSTRUCTION(stbu);
     table[0x028] = INSTRUCTION(lhz);
     table[0x029] = INSTRUCTION(lhzu);
     table[0x02A] = INSTRUCTION(lha);
     table[0x02B] = INSTRUCTION(lhau);
     table[0x02C] = INSTRUCTION(sth);
     table[0x02D] = INSTRUCTION(sthu);
     table[0x02E] = INSTRUCTION(lmw);
     table[0x02F] = INSTRUCTION(stmw);
     table[0x030] = INSTRUCTION(lfs);
     table[0x031] = INSTRUCTION(lfsu);
     table[0x032] = INSTRUCTION(lfd);
     table[0x033] = INSTRUCTION(lfdu);
     table[0x034] = INSTRUCTION(stfs);
     table[0x035] = INSTRUCTION(stfsu);
     table[0x036] = INSTRUCTION(stfd);
     table[0x037] = INSTRUCTION(stfdu);
 }
Exemple #11
0
 table31_t() : Table() {
     table[0x000] = INSTRUCTION(cmp);
     table[0x004] = INSTRUCTION(tw);
     table[0x006] = INSTRUCTION(lvsl);
     table[0x007] = INSTRUCTION(lvebx);
     table[0x008] = INSTRUCTION(subfcx);
     table[0x009] = INSTRUCTION(mulhdux);
     table[0x00A] = INSTRUCTION(addcx);
     table[0x00B] = INSTRUCTION(mulhwux);
     table[0x013] = INSTRUCTION(mfocrf);
     table[0x014] = INSTRUCTION(lwarx);
     table[0x015] = INSTRUCTION(ldx);
     table[0x017] = INSTRUCTION(lwzx);
     table[0x018] = INSTRUCTION(slwx);
     table[0x01A] = INSTRUCTION(cntlzwx);
     table[0x01B] = INSTRUCTION(sldx);
     table[0x01C] = INSTRUCTION(andx);
     table[0x020] = INSTRUCTION(cmpl);
     table[0x026] = INSTRUCTION(lvsr);
     table[0x027] = INSTRUCTION(lvehx);
     table[0x028] = INSTRUCTION(subfx);
     table[0x035] = INSTRUCTION(ldux);
     table[0x036] = INSTRUCTION(dcbst);
     table[0x037] = INSTRUCTION(lwzux);
     table[0x03A] = INSTRUCTION(cntlzdx);
     table[0x03C] = INSTRUCTION(andcx);
     table[0x044] = INSTRUCTION(td);
     table[0x047] = INSTRUCTION(lvewx);
     table[0x049] = INSTRUCTION(mulhdx);
     table[0x04B] = INSTRUCTION(mulhwx);
     table[0x054] = INSTRUCTION(ldarx);
     table[0x056] = INSTRUCTION(dcbf);
     table[0x057] = INSTRUCTION(lbzx);
     table[0x067] = INSTRUCTION(lvx);
     table[0x068] = INSTRUCTION(negx);
     table[0x077] = INSTRUCTION(lbzux);
     table[0x07C] = INSTRUCTION(norx);
     table[0x087] = INSTRUCTION(stvebx);
     table[0x088] = INSTRUCTION(subfex);
     table[0x08A] = INSTRUCTION(addex);
     table[0x090] = INSTRUCTION(mtocrf);
     table[0x095] = INSTRUCTION(stdx);
     table[0x096] = INSTRUCTION(stwcx_);
     table[0x097] = INSTRUCTION(stwx);
     table[0x0A7] = INSTRUCTION(stvehx);
     table[0x0B5] = INSTRUCTION(stdux);
     table[0x0B7] = INSTRUCTION(stwux);
     table[0x0C7] = INSTRUCTION(stvewx);
     table[0x0C8] = INSTRUCTION(subfzex);
     table[0x0CA] = INSTRUCTION(addzex);
     table[0x0D6] = INSTRUCTION(stdcx_);
     table[0x0D7] = INSTRUCTION(stbx);
     table[0x0E7] = INSTRUCTION(stvx);
     table[0x0E8] = INSTRUCTION(subfmex);
     table[0x0E9] = INSTRUCTION(mulldx);
     table[0x0EA] = INSTRUCTION(addmex);
     table[0x0EB] = INSTRUCTION(mullwx);
     table[0x0F6] = INSTRUCTION(dcbtst);
     table[0x0F7] = INSTRUCTION(stbux);
     table[0x10A] = INSTRUCTION(addx);
     table[0x116] = INSTRUCTION(dcbt);
     table[0x117] = INSTRUCTION(lhzx);
     table[0x11C] = INSTRUCTION(eqvx);
     table[0x136] = INSTRUCTION(eciwx);
     table[0x137] = INSTRUCTION(lhzux);
     table[0x13C] = INSTRUCTION(xorx);
     table[0x153] = INSTRUCTION(mfspr);
     table[0x155] = INSTRUCTION(lwax);
     table[0x156] = INSTRUCTION(dst);
     table[0x157] = INSTRUCTION(lhax);
     table[0x167] = INSTRUCTION(lvxl);
     table[0x173] = INSTRUCTION(mftb);
     table[0x175] = INSTRUCTION(lwaux);
     table[0x176] = INSTRUCTION(dstst);
     table[0x177] = INSTRUCTION(lhaux);
     table[0x197] = INSTRUCTION(sthx);
     table[0x19C] = INSTRUCTION(orcx);
     table[0x1B6] = INSTRUCTION(ecowx);
     table[0x1B7] = INSTRUCTION(sthux);
     table[0x1BC] = INSTRUCTION(orx);
     table[0x1C9] = INSTRUCTION(divdux);
     table[0x1CB] = INSTRUCTION(divwux);
     table[0x1D3] = INSTRUCTION(mtspr);
     table[0x1DC] = INSTRUCTION(nandx);
     table[0x1E7] = INSTRUCTION(stvxl);
     table[0x1E9] = INSTRUCTION(divdx);
     table[0x1EB] = INSTRUCTION(divwx);
     table[0x207] = INSTRUCTION(lvlx);
     table[0x214] = INSTRUCTION(ldbrx);
     table[0x215] = INSTRUCTION(lswx);
     table[0x216] = INSTRUCTION(lwbrx);
     table[0x217] = INSTRUCTION(lfsx);
     table[0x218] = INSTRUCTION(srwx);
     table[0x21B] = INSTRUCTION(srdx);
     table[0x227] = INSTRUCTION(lvrx);
     table[0x237] = INSTRUCTION(lfsux);
     table[0x255] = INSTRUCTION(lswi);
     table[0x256] = INSTRUCTION(sync);
     table[0x257] = INSTRUCTION(lfdx);
     table[0x277] = INSTRUCTION(lfdux);
     table[0x287] = INSTRUCTION(stvlx);
     table[0x295] = INSTRUCTION(stswx);
     table[0x296] = INSTRUCTION(stwbrx);
     table[0x297] = INSTRUCTION(stfsx);
     table[0x2A7] = INSTRUCTION(stvrx);
     table[0x2B7] = INSTRUCTION(stfsux);
     table[0x2D5] = INSTRUCTION(stswi);
     table[0x2D7] = INSTRUCTION(stfdx);
     table[0x2F7] = INSTRUCTION(stfdux);
     table[0x307] = INSTRUCTION(lvlxl);
     table[0x316] = INSTRUCTION(lhbrx);
     table[0x318] = INSTRUCTION(srawx);
     table[0x31A] = INSTRUCTION(sradx);
     table[0x327] = INSTRUCTION(lvrxl);
     table[0x336] = INSTRUCTION(dss);
     table[0x338] = INSTRUCTION(srawix);
     table[0x33A] = INSTRUCTION(sradix);
     table[0x33B] = INSTRUCTION(sradix);
     table[0x356] = INSTRUCTION(eieio);
     table[0x387] = INSTRUCTION(stvlxl);
     table[0x396] = INSTRUCTION(sthbrx);
     table[0x39A] = INSTRUCTION(extshx);
     table[0x387] = INSTRUCTION(stvrxl);
     table[0x3BA] = INSTRUCTION(extsbx);
     table[0x3D7] = INSTRUCTION(stfiwx);
     table[0x3DA] = INSTRUCTION(extswx);
     table[0x3D6] = INSTRUCTION(icbi);
     table[0x3F6] = INSTRUCTION(dcbz);
 }
Exemple #12
0
 table19_t() : Table() {
     table[0x000] = INSTRUCTION(mcrf);
     table[0x010] = INSTRUCTION(bclrx);
     table[0x021] = INSTRUCTION(crnor);
     table[0x081] = INSTRUCTION(crandc);
     table[0x096] = INSTRUCTION(isync);
     table[0x0C1] = INSTRUCTION(crxor);
     table[0x0E1] = INSTRUCTION(crnand);
     table[0x101] = INSTRUCTION(crand);
     table[0x121] = INSTRUCTION(creqv);
     table[0x1A1] = INSTRUCTION(crorc);
     table[0x1C1] = INSTRUCTION(cror);
     table[0x210] = INSTRUCTION(bcctrx);
 }
Exemple #13
0
 table4_ext_t() : Table() {
     table[0x000] = INSTRUCTION(vaddubm);
     table[0x002] = INSTRUCTION(vmaxub);
     table[0x004] = INSTRUCTION(vrlb);
     table[0x006] = INSTRUCTION(vcmpequb);
     table[0x008] = INSTRUCTION(vmuloub);
     table[0x00A] = INSTRUCTION(vaddfp);
     table[0x00C] = INSTRUCTION(vmrghb);
     table[0x00E] = INSTRUCTION(vpkuhum);
     table[0x040] = INSTRUCTION(vadduhm);
     table[0x042] = INSTRUCTION(vmaxuh);
     table[0x044] = INSTRUCTION(vrlh);
     table[0x046] = INSTRUCTION(vcmpequh);
     table[0x048] = INSTRUCTION(vmulouh);
     table[0x04A] = INSTRUCTION(vsubfp);
     table[0x04C] = INSTRUCTION(vmrghh);
     table[0x04E] = INSTRUCTION(vpkuwum);
     table[0x080] = INSTRUCTION(vadduwm);
     table[0x082] = INSTRUCTION(vmaxuw);
     table[0x084] = INSTRUCTION(vrlw);
     table[0x086] = INSTRUCTION(vcmpequw);
     table[0x08C] = INSTRUCTION(vmrghw);
     table[0x08E] = INSTRUCTION(vpkuhus);
     table[0x0C6] = INSTRUCTION(vcmpeqfp);
     table[0x0CE] = INSTRUCTION(vpkuwus);
     table[0x102] = INSTRUCTION(vmaxsb);
     table[0x104] = INSTRUCTION(vslb);
     table[0x108] = INSTRUCTION(vmulosb);
     table[0x10A] = INSTRUCTION(vrefp);
     table[0x10C] = INSTRUCTION(vmrglb);
     table[0x10E] = INSTRUCTION(vpkshus);
     table[0x142] = INSTRUCTION(vmaxsh);
     table[0x144] = INSTRUCTION(vslh);
     table[0x148] = INSTRUCTION(vmulosh);
     table[0x14A] = INSTRUCTION(vrsqrtefp);
     table[0x14C] = INSTRUCTION(vmrglh);
     table[0x14E] = INSTRUCTION(vpkswus);
     table[0x180] = INSTRUCTION(vaddcuw);
     table[0x182] = INSTRUCTION(vmaxsw);
     table[0x184] = INSTRUCTION(vslw);
     table[0x18A] = INSTRUCTION(vexptefp);
     table[0x18C] = INSTRUCTION(vmrglw);
     table[0x18E] = INSTRUCTION(vpkshss);
     table[0x1C4] = INSTRUCTION(vsl);
     table[0x1C6] = INSTRUCTION(vcmpgefp);
     table[0x1CA] = INSTRUCTION(vlogefp);
     table[0x1CE] = INSTRUCTION(vpkswss);
     table[0x200] = INSTRUCTION(vaddubs);
     table[0x202] = INSTRUCTION(vminub);
     table[0x204] = INSTRUCTION(vsrb);
     table[0x206] = INSTRUCTION(vcmpgtub);
     table[0x208] = INSTRUCTION(vmuleub);
     table[0x20A] = INSTRUCTION(vrfin);
     table[0x20C] = INSTRUCTION(vspltb);
     table[0x20E] = INSTRUCTION(vupkhsb);
     table[0x240] = INSTRUCTION(vadduhs);
     table[0x242] = INSTRUCTION(vminuh);
     table[0x244] = INSTRUCTION(vsrh);
     table[0x246] = INSTRUCTION(vcmpgtuh);
     table[0x248] = INSTRUCTION(vmuleuh);
     table[0x24A] = INSTRUCTION(vrfiz);
     table[0x24C] = INSTRUCTION(vsplth);
     table[0x24E] = INSTRUCTION(vupkhsh);
     table[0x280] = INSTRUCTION(vadduws);
     table[0x282] = INSTRUCTION(vminuw);
     table[0x284] = INSTRUCTION(vsrw);
     table[0x286] = INSTRUCTION(vcmpgtuw);
     table[0x28A] = INSTRUCTION(vrfip);
     table[0x28C] = INSTRUCTION(vspltw);
     table[0x28E] = INSTRUCTION(vupklsb);
     table[0x2C4] = INSTRUCTION(vsr);
     table[0x2C6] = INSTRUCTION(vcmpgtfp);
     table[0x2CA] = INSTRUCTION(vrfim);
     table[0x2CE] = INSTRUCTION(vupklsh);
     table[0x300] = INSTRUCTION(vaddsbs);
     table[0x302] = INSTRUCTION(vminsb);
     table[0x304] = INSTRUCTION(vsrab);
     table[0x306] = INSTRUCTION(vcmpgtsb);
     table[0x308] = INSTRUCTION(vmulesb);
     table[0x30A] = INSTRUCTION(vcfux);
     table[0x30C] = INSTRUCTION(vspltisb);
     table[0x30E] = INSTRUCTION(vpkpx);
     table[0x340] = INSTRUCTION(vaddshs);
     table[0x342] = INSTRUCTION(vminsh);
     table[0x344] = INSTRUCTION(vsrah);
     table[0x346] = INSTRUCTION(vcmpgtsh);
     table[0x348] = INSTRUCTION(vmulesh);
     table[0x34A] = INSTRUCTION(vcfsx);
     table[0x34C] = INSTRUCTION(vspltish);
     table[0x34E] = INSTRUCTION(vupkhpx);
     table[0x380] = INSTRUCTION(vaddsws);
     table[0x382] = INSTRUCTION(vminsw);
     table[0x384] = INSTRUCTION(vsraw);
     table[0x386] = INSTRUCTION(vcmpgtsw);
     table[0x38A] = INSTRUCTION(vctuxs);
     table[0x38C] = INSTRUCTION(vspltisw);
     table[0x3C6] = INSTRUCTION(vcmpbfp);
     table[0x3CA] = INSTRUCTION(vctsxs);
     table[0x3CE] = INSTRUCTION(vupklpx);
     table[0x400] = INSTRUCTION(vsububm);
     table[0x402] = INSTRUCTION(vavgub);
     table[0x404] = INSTRUCTION(vand);
     table[0x406] = INSTRUCTION(vcmpequb_);
     table[0x40A] = INSTRUCTION(vmaxfp);
     table[0x40C] = INSTRUCTION(vslo);
     table[0x440] = INSTRUCTION(vsubuhm);
     table[0x442] = INSTRUCTION(vavguh);
     table[0x444] = INSTRUCTION(vandc);
     table[0x446] = INSTRUCTION(vcmpequh_);
     table[0x44A] = INSTRUCTION(vminfp);
     table[0x44C] = INSTRUCTION(vsro);
     table[0x480] = INSTRUCTION(vsubuwm);
     table[0x482] = INSTRUCTION(vavguw);
     table[0x484] = INSTRUCTION(vor);
     table[0x486] = INSTRUCTION(vcmpequw_);
     table[0x4C4] = INSTRUCTION(vxor);
     table[0x4C6] = INSTRUCTION(vcmpeqfp_);
     table[0x502] = INSTRUCTION(vavgsb);
     table[0x504] = INSTRUCTION(vnor);
     table[0x542] = INSTRUCTION(vavgsh);
     table[0x580] = INSTRUCTION(vsubcuw);
     table[0x582] = INSTRUCTION(vavgsw);
     table[0x5C6] = INSTRUCTION(vcmpgefp_);
     table[0x600] = INSTRUCTION(vsububs);
     table[0x604] = INSTRUCTION(mfvscr);
     table[0x606] = INSTRUCTION(vcmpgtub_);
     table[0x608] = INSTRUCTION(vsum4ubs);
     table[0x640] = INSTRUCTION(vsubuhs);
     table[0x644] = INSTRUCTION(mtvscr);
     table[0x646] = INSTRUCTION(vcmpgtuh_);
     table[0x648] = INSTRUCTION(vsum4shs);
     table[0x680] = INSTRUCTION(vsubuws);
     table[0x686] = INSTRUCTION(vcmpgtuw_);
     table[0x688] = INSTRUCTION(vsum2sws);
     table[0x6C6] = INSTRUCTION(vcmpgtfp_);
     table[0x700] = INSTRUCTION(vsubsbs);
     table[0x706] = INSTRUCTION(vcmpgtsb_);
     table[0x708] = INSTRUCTION(vsum4sbs);
     table[0x740] = INSTRUCTION(vsubshs);
     table[0x746] = INSTRUCTION(vcmpgtsh_);
     table[0x780] = INSTRUCTION(vsubsws);
     table[0x786] = INSTRUCTION(vcmpgtsw_);
     table[0x788] = INSTRUCTION(vsumsws);
     table[0x7C6] = INSTRUCTION(vcmpbfp_);
 }