ves_icall_System_Math_Floor (gdouble x)
{
  gdouble D.7573;

  D.7573 = floor (x);
  return D.7573;
}


ves_icall_System_Math_Round (gdouble x)
{
  double D.7579;
  double D.7580;
  double D.7581;
  double D.7582;
  gdouble D.7583;
  double int_part;
  double dec_part;

  int_part = floor (x);
  dec_part = x - int_part;
  if (dec_part == 5.0e-1) goto <D.7578>; else goto <D.7575>;
  <D.7578>:
  D.7579 = int_part * 5.0e-1;
  D.7579 = int_part * 5.0e-1;
  D.7580 = floor (D.7579);
  D.7581 = D.7579 - D.7580;
  D.7582 = D.7581 * 2.0e+0;
  if (D.7582 != 0.0) goto <D.7576>; else goto <D.7575>;
  <D.7575>:
  if (dec_part > 5.0e-1) goto <D.7576>; else goto <D.7577>;
  <D.7576>:
  int_part = int_part + 1.0e+0;
  <D.7577>:
  D.7583 = int_part;
  return D.7583;
}


ves_icall_System_Math_Round2 (gdouble value, gint32 digits, gboolean away_from_zero)
{
  gdouble D.7587;
  double D.7590;
  double D.7593;
  double D.7594;
  double D.7595;
  double p;

  if (value > 1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7585>; else goto <D.7586>;
  <D.7585>:
  D.7587 =  Inf;
  return D.7587;
  <D.7586>:
  if (value < -1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7588>; else goto <D.7589>;
  <D.7588>:
  D.7587 =  -Inf;
  return D.7587;
  <D.7589>:
  D.7590 = (double) digits;
  p = pow (1.0e+1, D.7590);
  if (away_from_zero != 0) goto <D.7591>; else goto <D.7592>;
  <D.7591>:
  D.7593 = value * p;
  D.7594 = round (D.7593);
  D.7587 = D.7594 / p;
  return D.7587;
  <D.7592>:
  D.7593 = value * p;
  D.7595 = rint (D.7593);
  D.7587 = D.7595 / p;
  return D.7587;
}


ves_icall_System_Math_Sin (gdouble x)
{
  gdouble D.7597;

  D.7597 = sin (x);
  return D.7597;
}


ves_icall_System_Math_Cos (gdouble x)
{
  gdouble D.7599;

  D.7599 = cos (x);
  return D.7599;
}


ves_icall_System_Math_Tan (gdouble x)
{
  gdouble D.7601;

  D.7601 = tan (x);
  return D.7601;
}


ves_icall_System_Math_Sinh (gdouble x)
{
  gdouble D.7603;

  D.7603 = sinh (x);
  return D.7603;
}


ves_icall_System_Math_Cosh (gdouble x)
{
  gdouble D.7605;

  D.7605 = cosh (x);
  return D.7605;
}


ves_icall_System_Math_Tanh (gdouble x)
{
  gdouble D.7607;

  D.7607 = tanh (x);
  return D.7607;
}


ves_icall_System_Math_Acos (gdouble x)
{
  gdouble D.7612;

  if (x < -1.0e+0) goto <D.7609>; else goto <D.7611>;
  <D.7611>:
  if (x > 1.0e+0) goto <D.7609>; else goto <D.7610>;
  <D.7609>:
  D.7612 =  Nan;
  return D.7612;
  <D.7610>:
  D.7612 = acos (x);
  return D.7612;
}


ves_icall_System_Math_Asin (gdouble x)
{
  gdouble D.7617;

  if (x < -1.0e+0) goto <D.7614>; else goto <D.7616>;
  <D.7616>:
  if (x > 1.0e+0) goto <D.7614>; else goto <D.7615>;
  <D.7614>:
  D.7617 =  Nan;
  return D.7617;
  <D.7615>:
  D.7617 = asin (x);
  return D.7617;
}


ves_icall_System_Math_Atan (gdouble x)
{
  gdouble D.7619;

  D.7619 = atan (x);
  return D.7619;
}


ves_icall_System_Math_Atan2 (gdouble y, gdouble x)
{
  gdouble D.7629;
  gdouble iftmp.0;
  double result;

  if (y > 1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7625>; else goto <D.7621>;
  <D.7625>:
  if (x > 1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7622>; else goto <D.7626>;
  <D.7626>:
  if (x < -1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7622>; else goto <D.7621>;
  <D.7621>:
  if (y < -1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7627>; else goto <D.7623>;
  <D.7627>:
  if (x > 1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7622>; else goto <D.7623>;
  <D.7623>:
  if (y < -1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7628>; else goto <D.7624>;
  <D.7628>:
  if (x < -1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7622>; else goto <D.7624>;
  <D.7622>:
  D.7629 =  Nan;
  return D.7629;
  <D.7624>:
  result = atan2 (y, x);
  if (result != 0.0) goto <D.7631>; else goto <D.7632>;
  <D.7631>:
  iftmp.0 = result;
  goto <D.7633>;
  <D.7632>:
  iftmp.0 = 0.0;
  <D.7633>:
  D.7629 = iftmp.0;
  return D.7629;
}


ves_icall_System_Math_Exp (gdouble x)
{
  gdouble D.7635;

  D.7635 = exp (x);
  return D.7635;
}


ves_icall_System_Math_Log (gdouble x)
{
  gdouble D.7639;

  if (x == 0.0) goto <D.7637>; else goto <D.7638>;
  <D.7637>:
  D.7639 =  -Inf;
  return D.7639;
  <D.7638>:
  if (x < 0.0) goto <D.7640>; else goto <D.7641>;
  <D.7640>:
  D.7639 =  Nan;
  return D.7639;
  <D.7641>:
  D.7639 = log (x);
  return D.7639;
}


ves_icall_System_Math_Log10 (gdouble x)
{
  gdouble D.7645;

  if (x == 0.0) goto <D.7643>; else goto <D.7644>;
  <D.7643>:
  D.7645 =  -Inf;
  return D.7645;
  <D.7644>:
  if (x < 0.0) goto <D.7646>; else goto <D.7647>;
  <D.7646>:
  D.7645 =  Nan;
  return D.7645;
  <D.7647>:
  D.7645 = log10 (x);
  return D.7645;
}


ves_icall_System_Math_Pow (gdouble x, gdouble y)
{
  int D.7651;
  int D.7653;
  gdouble D.7654;
  int D.7668;
  gdouble iftmp.1;
  double result;

  D.7651 = __isnan (x);
  if (D.7651 != 0) goto <D.7649>; else goto <D.7652>;
  <D.7652>:
  D.7653 = __isnan (y);
  if (D.7653 != 0) goto <D.7649>; else goto <D.7650>;
  <D.7649>:
  D.7654 =  Nan;
  return D.7654;
  <D.7650>:
  if (x == 1.0e+0) goto <D.7657>; else goto <D.7658>;
  <D.7658>:
  if (x == -1.0e+0) goto <D.7657>; else goto <D.7656>;
  <D.7657>:
  if (y > 1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7655>; else goto <D.7659>;
  <D.7659>:
  if (y < -1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7655>; else goto <D.7656>;
  <D.7655>:
  D.7654 =  Nan;
  return D.7654;
  <D.7656>:
  if (x < -9.007199254740991e+15) goto <D.7660>; else goto <D.7661>;
  <D.7660>:
  if (y > 9.007199254740991e+15) goto <D.7662>; else goto <D.7663>;
  <D.7662>:
  D.7654 =  Inf;
  return D.7654;
  <D.7663>:
  if (y < -9.007199254740991e+15) goto <D.7664>; else goto <D.7665>;
  <D.7664>:
  D.7654 = 0.0;
  return D.7654;
  <D.7665>:
  <D.7661>:
  result = pow (x, y);
  D.7668 = __isnan (result);
  if (D.7668 != 0) goto <D.7669>; else goto <D.7670>;
  <D.7669>:
  if (x == -1.0e+0) goto <D.7671>; else goto <D.7672>;
  <D.7671>:
  if (y > 9.007199254740991e+15) goto <D.7666>; else goto <D.7673>;
  <D.7673>:
  if (y < -9.007199254740991e+15) goto <D.7666>; else goto <D.7667>;
  <D.7666>:
  D.7654 = 1.0e+0;
  return D.7654;
  <D.7667>:
  <D.7672>:
  <D.7670>:
  if (result != 0.0) goto <D.7675>; else goto <D.7676>;
  <D.7675>:
  iftmp.1 = result;
  goto <D.7677>;
  <D.7676>:
  iftmp.1 = 0.0;
  <D.7677>:
  D.7654 = iftmp.1;
  return D.7654;
}


ves_icall_System_Math_Sqrt (gdouble x)
{
  gdouble D.7681;

  if (x < 0.0) goto <D.7679>; else goto <D.7680>;
  <D.7679>:
  D.7681 =  Nan;
  return D.7681;
  <D.7680>:
  D.7681 = sqrt (x);
  return D.7681;
}


