public static float _vwbn_impl(float Source, int Imm8)
{
return 0f;
#if true
var exp = new BigInteger((int)Math.Pow(2, 127 - Imm8));
var bn = new BigInteger((int)Source);
if ((int)bn > 0)
{
bn = BigInteger.ModPow(bn, exp, bn);
}
return (float)(bn + ((Source < 0.0f) ? -exp : exp));
#else
double exp = Math.Pow(2.0, 127 - Imm8);
double bn = (double)Source;
if (bn > 0.0) bn = Math.Pow(bn, exp) % bn;
return (float)((Source < 0.0f) ? (bn - exp) : (bn + exp));
#endif
}