Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Branch: master
Commits on Dec 12, 2013
  1. build: Add support for building with newer PIN versions

    The structure of PIN Makefiles has changed in recent PIN
    versions. This brings our makefiles in line with what PIN expects.
  2. build: Check for bzlib.h in configure

    We previously only checked for the bz2 library and not for the
    headers. This is insufficient since most distributions install
    libraries without headers unless a special dev package is installed.
Commits on May 10, 2011
  1. Count instructions and accesses and print statistics

    Keep track of both the number of executed instructions and the number of
    executed memory accesses. Print the execution statistics when the tracing
Commits on Apr 27, 2011
  1. Add support for instruction time in the PIN trace tool

    Add support for choosing between instruction and access based time in
    the PIN tool. The default time base is still access based time.
  2. Remove old unused log functions

    The old log_rd and log_wr functions were earlier replaced with a
    generic log_access function that takes the access type as an
    argument. Remove the old, and now unused, functions.
  3. Include some header sanity checks in usfcat

    Check that the headers of all files being concatenated are compatible.
    This currently means:
      * They use the same time base
      * The status of the trace flag is the same
      * The status fo the instruction is the same
    Add a force option to the tool that allows users to bypass these checks.
  4. Add support for storing which time base a USF file uses

    Store which time base a USF file uses in its header. Old files will
    default to 'accesses', which is the typical case. Future applications
    may want to store cycles or instructions instead of accesses, enable
    that by reserving two bits in the header to represent the time base.
    Also, update the usfdump utility to display which time base is used.
  5. Decode flag values in usfdump

    Decode and print the decoded values from the flag field instead of just
    the raw flags. Also, update the test script to avoid
    including the trace flag when greping for trace events.
Commits on Apr 15, 2011
  1. Cleanup trace functions in the trace tool

    Don't use a macro to generate two different trace functions for reads
    and writes, instead provide the access type as a parameter. Instead of
    explicitly checking for single read and write operands, iterate over
    all memory operands belonging to an instruction. This avoids a
    potential problem where the instrumentation code may miss some memory
  2. Initial migration of USF trace tool from SVN

    This commit adds a simple PIN-based trace tool that produces USF trace
    files. The tool is built automatically if a working PIN installation is
    detected. The configure script will look for PIN in the directory
    specified by the PIN_HOME environment variable.
Commits on Apr 14, 2011
  1. Change E_ERROR to abort on all errors

    For some unknown reason E_ERROR didn't abort on USF_ERROR_EOF. This is
    clearly not what we want in most cases. Update the behavior of the
    macro to abort whenever the error value is not USF_ERROR_OK.
Commits on Mar 29, 2011
  1. Cleanup internal IO API

    The buffer passed to the usf_internal_write call was not declared as a
    pointer to a constant data area. This caused some compiler warnings on
    Solaris and required some ugly casts. Fix this by declaring the buffer
    parameter as pointing to a constant.
  2. Automatically disable tools with unsatisfied dependencies

    Check for argp.h and only try to compile tools depending on argp if it
    actually exists. This may currently disable usfdump and usf2usf. Argp
    is usually absent on Solaris, OSX and probably on Windows.
  3. Add missing strings.h header file required for bzero

    Fix a warning related to a missing declaration of bzero by including
    the proper header file.
Commits on Mar 21, 2011
  1. Add support for delta compression in usfcat

    Add a command line option to usfcat to enable delta compression of the
    output file. Delta compression is disabled by default.
  2. Fix uninitialized header values

    The compression field in the USF header was not initialized. memset
    the header to all zero to make sure that all future elements are
    initialized to their default values (which should be 0). Set the
    compression to the compression setting for the first input file unless
    otherwise specified.
Commits on Mar 10, 2011
  1. Fix broken indentation

  2. Print error messages on stderr

  3. Produce warning messages on invalid format strings

    The print_and_exit function in several of the USF tools didn't include
    the attribute that tells GCC that the function expects a printf format
    string. This patch adds such an attribute to prevent future accidents.
  4. Fix broken command line handling in usfcat

    The usfcat tool has several issues related to command line handling.
    This patch cleans up and fixes several issues related to how
    getopt_long was used. It also includes some more verbose error
    messages related to command line handling.
  5. Fix bug when printing error messages

    Some USF tools weren't formating their error strings correctly when
    outputting line numbers in error messages. This patch correctly
    outputs line numbers as integers.
Commits on Feb 2, 2011
  1. Initial commit

Something went wrong with that request. Please try again.