mono_sigctx_to_monoctx (void * sigctx, struct MonoContext * mctx)
{
  long unsigned int D.8960;
  int D.8961;
  long unsigned int D.8962;
  int D.8963;
  long unsigned int D.8964;
  int D.8965;
  mgreg_t[16] * D.8966;
  long unsigned int * D.8967;
  struct arm_ucontext * my_uc;

  my_uc = sigctx;
  D.8960 = my_uc->sig_ctx.arm_pc;
  D.8961 = (int) D.8960;
  mctx->pc = D.8961;
  D.8962 = my_uc->sig_ctx.arm_sp;
  D.8963 = (int) D.8962;
  mctx->regs[13] = D.8963;
  D.8964 = my_uc->sig_ctx.arm_cpsr;
  D.8965 = (int) D.8964;
  mctx->cpsr = D.8965;
  D.8966 = &mctx->regs;
  D.8967 = &my_uc->sig_ctx.arm_r0;
  memcpy (D.8966, D.8967, 64);
}


memcpy (void * restrict __dest, const void * restrict __src, size_t __len)
{
  void * D.8968;
  unsigned int D.8969;

  D.8969 = __builtin_object_size (__dest, 0);
  D.8968 = __builtin___memcpy_chk (__dest, __src, __len, D.8969);
  return D.8968;
}


mono_monoctx_to_sigctx (struct MonoContext * mctx, void * ctx)
{
  int D.8971;
  long unsigned int D.8972;
  int D.8973;
  long unsigned int D.8974;
  int D.8975;
  long unsigned int D.8976;
  long unsigned int * D.8977;
  mgreg_t[16] * D.8978;
  struct arm_ucontext * my_uc;

  my_uc = ctx;
  D.8971 = mctx->pc;
  D.8972 = (long unsigned int) D.8971;
  my_uc->sig_ctx.arm_pc = D.8972;
  D.8973 = mctx->regs[13];
  D.8974 = (long unsigned int) D.8973;
  my_uc->sig_ctx.arm_sp = D.8974;
  D.8975 = mctx->cpsr;
  D.8976 = (long unsigned int) D.8975;
  my_uc->sig_ctx.arm_cpsr = D.8976;
  D.8977 = &my_uc->sig_ctx.arm_r0;
  D.8978 = &mctx->regs;
  memcpy (D.8977, D.8978, 48);
}


