tools/reorder/cygprof.c
author Martin Stransky <stransky@redhat.com>
Wed, 13 Jun 2012 10:47:54 -0400
changeset 99309 a55eea2c294d6cada5beee638bb4a3a4797cbc19
parent 96742 f4157e8c410708d76703f19e4dfb61859bfe32d8
permissions -rw-r--r--
Bug 627699 - Port GTK2 to GTK3, gfx patch; r=vlad

/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

/*

  A stub library to LD_PRELOAD against an image that's been compiled
  with -finstrument-functions. It dumps the address of the function
  that's being entered upon function entry, and the address that's
  being returned to on function exit. Addresses are dumped as binary
  data to stdout.

 */

#include <unistd.h>

void
__cyg_profile_func_enter(void *this_fn, void *call_site)
{
    write(STDOUT_FILENO, &this_fn, sizeof this_fn);
}

void
__cyg_profile_func_exit(void *this_fn, void *call_site)
{
    write(STDOUT_FILENO, &call_site, sizeof call_site);
}