ves_icall_System_Math_Floor (gdouble x)
{
  gdouble D.7918;

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


ves_icall_System_Math_Round (gdouble x)
{
  double D.7924;
  double D.7925;
  double D.7926;
  double D.7927;
  gdouble D.7928;
  double int_part;
  double dec_part;

  int_part = floor (x);
  dec_part = x - int_part;
  if (dec_part == 5.0e-1) goto <D.7923>; else goto <D.7920>;
  <D.7923>:
  D.7924 = int_part * 5.0e-1;
  D.7924 = int_part * 5.0e-1;
  D.7925 = floor (D.7924);
  D.7926 = D.7924 - D.7925;
  D.7927 = D.7926 * 2.0e+0;
  if (D.7927 != 0.0) goto <D.7921>; else goto <D.7920>;
  <D.7920>:
  if (dec_part > 5.0e-1) goto <D.7921>; else goto <D.7922>;
  <D.7921>:
  int_part = int_part + 1.0e+0;
  <D.7922>:
  D.7928 = int_part;
  return D.7928;
}


ves_icall_System_Math_Round2 (gdouble value, gint32 digits, gboolean away_from_zero)
{
  gdouble D.7932;
  double D.7935;
  double D.7938;
  double D.7939;
  double D.7940;
  double p;

  if (value > 1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7930>; else goto <D.7931>;
  <D.7930>:
  D.7932 =  Inf;
  return D.7932;
  <D.7931>:
  if (value < -1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7933>; else goto <D.7934>;
  <D.7933>:
  D.7932 =  -Inf;
  return D.7932;
  <D.7934>:
  D.7935 = (double) digits;
  p = pow (1.0e+1, D.7935);
  if (away_from_zero != 0) goto <D.7936>; else goto <D.7937>;
  <D.7936>:
  D.7938 = value * p;
  D.7939 = round (D.7938);
  D.7932 = D.7939 / p;
  return D.7932;
  <D.7937>:
  D.7938 = value * p;
  D.7940 = rint (D.7938);
  D.7932 = D.7940 / p;
  return D.7932;
}


ves_icall_System_Math_Sin (gdouble x)
{
  gdouble D.7942;

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


ves_icall_System_Math_Cos (gdouble x)
{
  gdouble D.7944;

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


ves_icall_System_Math_Tan (gdouble x)
{
  gdouble D.7946;

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


ves_icall_System_Math_Sinh (gdouble x)
{
  gdouble D.7948;

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


ves_icall_System_Math_Cosh (gdouble x)
{
  gdouble D.7950;

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


ves_icall_System_Math_Tanh (gdouble x)
{
  gdouble D.7952;

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


ves_icall_System_Math_Acos (gdouble x)
{
  gdouble D.7957;

  if (x < -1.0e+0) goto <D.7954>; else goto <D.7956>;
  <D.7956>:
  if (x > 1.0e+0) goto <D.7954>; else goto <D.7955>;
  <D.7954>:
  D.7957 =  Nan;
  return D.7957;
  <D.7955>:
  D.7957 = acos (x);
  return D.7957;
}


ves_icall_System_Math_Asin (gdouble x)
{
  gdouble D.7962;

  if (x < -1.0e+0) goto <D.7959>; else goto <D.7961>;
  <D.7961>:
  if (x > 1.0e+0) goto <D.7959>; else goto <D.7960>;
  <D.7959>:
  D.7962 =  Nan;
  return D.7962;
  <D.7960>:
  D.7962 = asin (x);
  return D.7962;
}


ves_icall_System_Math_Atan (gdouble x)
{
  gdouble D.7964;

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


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

  if (y > 1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7970>; else goto <D.7966>;
  <D.7970>:
  if (x > 1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7967>; else goto <D.7971>;
  <D.7971>:
  if (x < -1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7967>; else goto <D.7966>;
  <D.7966>:
  if (y < -1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7972>; else goto <D.7968>;
  <D.7972>:
  if (x > 1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7967>; else goto <D.7968>;
  <D.7968>:
  if (y < -1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7973>; else goto <D.7969>;
  <D.7973>:
  if (x < -1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.7967>; else goto <D.7969>;
  <D.7967>:
  D.7974 =  Nan;
  return D.7974;
  <D.7969>:
  result = atan2 (y, x);
  if (result != 0.0) goto <D.7976>; else goto <D.7977>;
  <D.7976>:
  iftmp.0 = result;
  goto <D.7978>;
  <D.7977>:
  iftmp.0 = 0.0;
  <D.7978>:
  D.7974 = iftmp.0;
  return D.7974;
}


ves_icall_System_Math_Exp (gdouble x)
{
  gdouble D.7980;

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


ves_icall_System_Math_Log (gdouble x)
{
  gdouble D.7984;

  if (x == 0.0) goto <D.7982>; else goto <D.7983>;
  <D.7982>:
  D.7984 =  -Inf;
  return D.7984;
  <D.7983>:
  if (x < 0.0) goto <D.7985>; else goto <D.7986>;
  <D.7985>:
  D.7984 =  Nan;
  return D.7984;
  <D.7986>:
  D.7984 = log (x);
  return D.7984;
}


ves_icall_System_Math_Log10 (gdouble x)
{
  gdouble D.7990;

  if (x == 0.0) goto <D.7988>; else goto <D.7989>;
  <D.7988>:
  D.7990 =  -Inf;
  return D.7990;
  <D.7989>:
  if (x < 0.0) goto <D.7991>; else goto <D.7992>;
  <D.7991>:
  D.7990 =  Nan;
  return D.7990;
  <D.7992>:
  D.7990 = log10 (x);
  return D.7990;
}


ves_icall_System_Math_Pow (gdouble x, gdouble y)
{
  int D.7996;
  int D.7998;
  gdouble D.7999;
  _Bool D.8002;
  _Bool D.8003;
  _Bool D.8004;
  int D.8016;
  gdouble iftmp.1;
  double result;

  D.7996 = __isnan (x);
  if (D.7996 != 0) goto <D.7994>; else goto <D.7997>;
  <D.7997>:
  D.7998 = __isnan (y);
  if (D.7998 != 0) goto <D.7994>; else goto <D.7995>;
  <D.7994>:
  D.7999 =  Nan;
  return D.7999;
  <D.7995>:
  D.8002 = x == 1.0e+0;
  D.8003 = x == -1.0e+0;
  D.8004 = D.8002 | D.8003;
  if (D.8004 != 0) goto <D.8005>; else goto <D.8006>;
  <D.8005>:
  if (y > 1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.8000>; else goto <D.8007>;
  <D.8007>:
  if (y < -1.79769313486231570814527423731704356798070567525844996599e+308) goto <D.8000>; else goto <D.8001>;
  <D.8000>:
  D.7999 =  Nan;
  return D.7999;
  <D.8001>:
  <D.8006>:
  if (x < -9.007199254740991e+15) goto <D.8008>; else goto <D.8009>;
  <D.8008>:
  if (y > 9.007199254740991e+15) goto <D.8010>; else goto <D.8011>;
  <D.8010>:
  D.7999 =  Inf;
  return D.7999;
  <D.8011>:
  if (y < -9.007199254740991e+15) goto <D.8012>; else goto <D.8013>;
  <D.8012>:
  D.7999 = 0.0;
  return D.7999;
  <D.8013>:
  <D.8009>:
  result = pow (x, y);
  D.8016 = __isnan (result);
  if (D.8016 != 0) goto <D.8017>; else goto <D.8018>;
  <D.8017>:
  if (x == -1.0e+0) goto <D.8019>; else goto <D.8020>;
  <D.8019>:
  if (y > 9.007199254740991e+15) goto <D.8014>; else goto <D.8021>;
  <D.8021>:
  if (y < -9.007199254740991e+15) goto <D.8014>; else goto <D.8015>;
  <D.8014>:
  D.7999 = 1.0e+0;
  return D.7999;
  <D.8015>:
  <D.8020>:
  <D.8018>:
  if (result != 0.0) goto <D.8023>; else goto <D.8024>;
  <D.8023>:
  iftmp.1 = result;
  goto <D.8025>;
  <D.8024>:
  iftmp.1 = 0.0;
  <D.8025>:
  D.7999 = iftmp.1;
  return D.7999;
}


ves_icall_System_Math_Sqrt (gdouble x)
{
  gdouble D.8029;

  if (x < 0.0) goto <D.8027>; else goto <D.8028>;
  <D.8027>:
  D.8029 =  Nan;
  return D.8029;
  <D.8028>:
  D.8029 = sqrt (x);
  return D.8029;
}


