Пример #1
0
void registerFloatInstructions()
{
   // TODO: fmXXX instructions are CLOSE, but not perfectly
   //   accurate...

   RegisterInstruction(fadd);
   RegisterInstruction(fadds);
   RegisterInstruction(fdiv);
   RegisterInstruction(fdivs);
   RegisterInstruction(fmul);
   RegisterInstruction(fmuls);
   RegisterInstruction(fsub);
   RegisterInstruction(fsubs);
   RegisterInstructionFallback(fres);
   RegisterInstructionFallback(frsqrte);
   RegisterInstructionFallback(fsel);
   RegisterInstruction(fmadd);
   RegisterInstruction(fmadds);
   RegisterInstruction(fmsub);
   RegisterInstruction(fmsubs);
   RegisterInstruction(fnmadd);
   RegisterInstruction(fnmadds);
   RegisterInstruction(fnmsub);
   RegisterInstruction(fnmsubs);
   RegisterInstructionFallback(fctiw);
   RegisterInstructionFallback(fctiwz);
   RegisterInstruction(frsp);
   RegisterInstruction(fabs);
   RegisterInstruction(fnabs);
   RegisterInstruction(fmr);
   RegisterInstruction(fneg);
}
Пример #2
0
void
JitManager::registerConditionInstructions()
{
   RegisterInstruction(cmp);
   RegisterInstruction(cmpi);
   RegisterInstruction(cmpl);
   RegisterInstruction(cmpli);
   RegisterInstruction(fcmpo);
   RegisterInstruction(fcmpu);
   RegisterInstruction(crand);
   RegisterInstruction(crandc);
   RegisterInstruction(creqv);
   RegisterInstruction(crnand);
   RegisterInstruction(crnor);
   RegisterInstruction(cror);
   RegisterInstruction(crorc);
   RegisterInstruction(crxor);
   RegisterInstruction(mcrf);
   RegisterInstruction(mcrxr);
   RegisterInstruction(mfcr);
   RegisterInstruction(mtcrf);
   RegisterInstructionFallback(ps_cmpu0);
   RegisterInstructionFallback(ps_cmpo0);
   RegisterInstructionFallback(ps_cmpu1);
   RegisterInstructionFallback(ps_cmpo1);
}
Пример #3
0
void
registerSystemInstructions()
{
   RegisterInstruction(dcbf);
   RegisterInstruction(dcbi);
   RegisterInstruction(dcbst);
   RegisterInstruction(dcbt);
   RegisterInstruction(dcbtst);
   RegisterInstruction(dcbz);
   RegisterInstruction(dcbz_l);
   RegisterInstruction(eieio);
   RegisterInstruction(icbi);
   RegisterInstruction(isync);
   RegisterInstruction(sync);
   RegisterInstruction(mfspr);
   RegisterInstruction(mtspr);
   RegisterInstructionFallback(mftb);
   RegisterInstructionFallback(mfmsr);
   RegisterInstructionFallback(mtmsr);
   RegisterInstructionFallback(mfsr);
   RegisterInstructionFallback(mfsrin);
   RegisterInstructionFallback(mtsr);
   RegisterInstructionFallback(mtsrin);
   RegisterInstruction(kc);
   RegisterInstructionFallback(tw);
}
Пример #4
0
 void registerPairedInstructions()
 {
    RegisterInstructionFallback(ps_add);
    RegisterInstructionFallback(ps_div);
    RegisterInstructionFallback(ps_mul);
    RegisterInstructionFallback(ps_sub);
    RegisterInstructionFallback(ps_abs);
    RegisterInstructionFallback(ps_nabs);
    RegisterInstructionFallback(ps_neg);
    RegisterInstructionFallback(ps_sel);
    RegisterInstructionFallback(ps_res);
    RegisterInstructionFallback(ps_rsqrte);
    RegisterInstructionFallback(ps_msub);
    RegisterInstructionFallback(ps_madd);
    RegisterInstructionFallback(ps_nmsub);
    RegisterInstructionFallback(ps_nmadd);
    RegisterInstructionFallback(ps_mr);
    RegisterInstructionFallback(ps_sum0);
    RegisterInstructionFallback(ps_sum1);
    RegisterInstructionFallback(ps_muls0);
    RegisterInstructionFallback(ps_muls1);
    RegisterInstructionFallback(ps_madds0);
    RegisterInstructionFallback(ps_madds1);
    RegisterInstruction(ps_merge00);
    RegisterInstruction(ps_merge01);
    RegisterInstruction(ps_merge10);
    RegisterInstruction(ps_merge11);
 }
Пример #5
0
void registerFloatInstructions()
{
   RegisterInstructionFallback(fadd);
   RegisterInstructionFallback(fadds);
   RegisterInstructionFallback(fdiv);
   RegisterInstructionFallback(fdivs);
   RegisterInstructionFallback(fmul);
   RegisterInstructionFallback(fmuls);
   RegisterInstructionFallback(fsub);
   RegisterInstructionFallback(fsubs);
   RegisterInstructionFallback(fres);
   RegisterInstructionFallback(frsqrte);
   RegisterInstructionFallback(fsel);
   RegisterInstructionFallback(fmadd);
   RegisterInstructionFallback(fmadds);
   RegisterInstructionFallback(fmsub);
   RegisterInstructionFallback(fmsubs);
   RegisterInstructionFallback(fnmadd);
   RegisterInstructionFallback(fnmadds);
   RegisterInstructionFallback(fnmsub);
   RegisterInstructionFallback(fnmsubs);
   RegisterInstructionFallback(fctiw);
   RegisterInstructionFallback(fctiwz);
   RegisterInstructionFallback(frsp);
   RegisterInstructionFallback(fabs);
   RegisterInstructionFallback(fnabs);
   RegisterInstructionFallback(fmr);
   RegisterInstructionFallback(fabs);
   RegisterInstructionFallback(fneg);
}