Mono_Posix_Syscall_seekdir (void * dir, mph_off_t offset)
{
  int * D.7569;
  int D.7570;

  if (0 != 0) goto <D.7567>; else goto <D.7568>;
  <D.7567>:
  D.7569 = __errno_location ();
  *D.7569 = 75;
  D.7570 = -1;
  return D.7570;
  <D.7568>:
  seekdir (dir, offset);
  D.7570 = 0;
  return D.7570;
}


Mono_Posix_Syscall_telldir (void * dir)
{
  gint64 D.7572;

  D.7572 = telldir (dir);
  return D.7572;
}


Mono_Posix_Syscall_readdir (void * dirp, struct Mono_Posix_Syscall__Dirent * entry)
{
  int * D.7576;
  int D.7577;
  struct dirent * d;

  if (entry == 0B) goto <D.7574>; else goto <D.7575>;
  <D.7574>:
  D.7576 = __errno_location ();
  *D.7576 = 14;
  D.7577 = -1;
  return D.7577;
  <D.7575>:
  D.7576 = __errno_location ();
  *D.7576 = 0;
  d = readdir (dirp);
  if (d == 0B) goto <D.7578>; else goto <D.7579>;
  <D.7578>:
  D.7577 = -1;
  return D.7577;
  <D.7579>:
  copy_dirent (entry, d);
  D.7577 = 0;
  return D.7577;
}


copy_dirent (struct Mono_Posix_Syscall__Dirent * to, struct dirent * from)
{
  long unsigned int D.7581;
  char[256] * D.7582;
  char * D.7583;
  long int D.7584;
  short unsigned int D.7585;
  unsigned char D.7586;

  memset (to, 0, 32);
  D.7581 = from->d_ino;
  to->d_ino = D.7581;
  D.7582 = &from->d_name;
  D.7583 = __strdup (D.7582);
  to->d_name = D.7583;
  D.7584 = from->d_off;
  to->d_off = D.7584;
  D.7585 = from->d_reclen;
  to->d_reclen = D.7585;
  D.7586 = from->d_type;
  to->d_type = D.7586;
}


memset (void * __dest, int __ch, size_t __len)
{
  int D.7589;
  int D.7594;
  void * D.7596;
  long unsigned int D.7597;

  D.7589 = __builtin_constant_p (__len);
  if (D.7589 != 0) goto <D.7590>; else goto <D.7591>;
  <D.7590>:
  if (__len == 0) goto <D.7592>; else goto <D.7593>;
  <D.7592>:
  D.7594 = __builtin_constant_p (__ch);
  if (D.7594 == 0) goto <D.7587>; else goto <D.7595>;
  <D.7595>:
  if (__ch != 0) goto <D.7587>; else goto <D.7588>;
  <D.7587>:
  __warn_memset_zero_len ();
  D.7596 = __dest;
  return D.7596;
  <D.7588>:
  <D.7593>:
  <D.7591>:
  D.7597 = __builtin_object_size (__dest, 0);
  D.7596 = __builtin___memset_chk (__dest, __ch, __len, D.7597);
  return D.7596;
}


Mono_Posix_Syscall_readdir_r (void * dirp, struct Mono_Posix_Syscall__Dirent * entry, void * * result)
{
  void * D.7601;
  int D.7604;
  struct dirent * _entry;
  int r;

  _entry = malloc (4377);
  r = readdir_r (dirp, _entry, result);
  if (r == 0) goto <D.7599>; else goto <D.7600>;
  <D.7599>:
  D.7601 = *result;
  if (D.7601 != 0B) goto <D.7602>; else goto <D.7603>;
  <D.7602>:
  copy_dirent (entry, _entry);
  <D.7603>:
  <D.7600>:
  free (_entry);
  D.7604 = r;
  return D.7604;
}


Mono_Posix_Syscall_rewinddir (void * dir)
{
  int D.7606;

  rewinddir (dir);
  D.7606 = 0;
  return D.7606;
}


