tools/reorder/cygprof.c
author Birunthan Mohanathas <birunthan@mohanathas.com>
Wed, 16 Jul 2014 12:02:34 -0700
changeset 194423 faecfa9d0bb6c46e32934182e6154758190262ed
parent 94484 f4157e8c410708d76703f19e4dfb61859bfe32d8
permissions -rw-r--r--
Bug 1028565 - Part 5: Flatten editor/{idl,public}/ directories. r=ehsan

/* 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);
}