Example #1
0
void findrefs(region r, void *from, void *to)
{
  char *f;

  if (!out)
    out = fopen("/dev/tty", "w");

  for (f = PALIGN(from, PTRALIGNMENT); f < (char *)to; f += PTRALIGNMENT)
    if (regionof(*(void **)f) == r)
      printref(f);

  fflush(out);
}
Example #2
0
int region_main(int argc, char *argv[]) {
  region r[2];
  Updater u[1];
  region temp = newregion();
  struct pair *p;
  translation t;

  if ((argc == 1) || (strcmp(argv[1],"d") && strcmp(argv[1],"b"))) {
    printf("Usage: time timer {d | b}\nd for deserialization only; b for both deserialization and serialization\n");
    exit(1);
  }

  u[0] = update_pair;
  t = deserialize("data", "offsets", u, temp);
  if (strcmp(argv[1],"b") == 0) {
    p = (struct pair *) translate_pointer(t, (void *) 1125667648);
    r[0] = regionof((void *) p);
    r[1] = NULL;
    serialize(r, "data2", "offsets2"); 
  }
  return 0;
}