Permalink
Switch branches/tags
Nothing to show
Commits on Aug 17, 2011
  1. Bump VERSION for testing again, to 0.1.3.0 this time.

    siggi@chromium.org committed Aug 17, 2011
    Review URL: http://codereview.appspot.com/4873056
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@403 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  2. Bump version again for testing.

    siggi@chromium.org committed Aug 17, 2011
    Review URL: http://codereview.appspot.com/4901051
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@402 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  3. Bump build VERSION to 0.1.1.0.

    siggi@chromium.org committed Aug 17, 2011
    Fix errors in version unittest and implementation.
    Review URL: http://codereview.appspot.com/4902048
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@401 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  4. Fix typo in optimization script and make sure errors aren't swallowed…

    rogerm@chromium.org committed Aug 17, 2011
    … by benchmarking script
    
    Review URL: http://codereview.appspot.com/4907046
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@400 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Aug 15, 2011
  1. Fix build dependencies.

    siggi@chromium.org committed Aug 15, 2011
    Make common_lib expose a hard dependency instead of syzygy_version doing so.
    Turns out that hard_dependency from a "none" target does not seem to propagate to a lib target.
    Review URL: http://codereview.appspot.com/4894047
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@399 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  2. Check in latest (r397) binaries.

    siggi@chromium.org committed Aug 15, 2011
    Review URL: http://codereview.appspot.com/4909041
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@398 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  3. Make the .syzygy metadata section readable.

    siggi@chromium.org committed Aug 15, 2011
    As-is the section is not mapped, which crashes XP preloading.
    Review URL: http://codereview.appspot.com/4905043
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@397 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Aug 10, 2011
  1. Update latest release binaries.

    rogerm@chromium.org committed Aug 10, 2011
    Review URL: http://codereview.appspot.com/4810093
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@396 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  2. Fix the timeout mechanism for launching the chrome instance on Window…

    rogerm@chromium.org committed Aug 10, 2011
    …s pre-7.
    
    Review URL: http://codereview.appspot.com/4819069
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@395 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Aug 3, 2011
  1. Add version information to decompose.exe

    chrisha@chromium.org committed Aug 3, 2011
    BUG=None
    TEST=None
    Review URL: http://codereview.appspot.com/4837054
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@394 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  2. Make Decomposer::DecomposedImage serializable.

    chrisha@chromium.org committed Aug 3, 2011
    Adds serialization to Decomposer::DecomposedImage. Since this is a 'deep' data structure with pointers flying everywhere, this involves some serialization trickery, and the addition of serialization to many basic types (BlockGraph, AddressSpace, etc). Loading a BlockGraph from its serialized form is 5x faster than redecomposing the entire thing from a warm PDB file.
    
    Creates 'decompose', a new tool for decomposing an image and serializing its BlockGraph representation. The aim will be to make each tool in the toolchain optionally load a block graph directly, rather than redecomposing. The serialized format contains metadata for validating that it has been generated with a compatible version of the toolchain.
    
    Split core/unittest_util.* into a new static library so that the pe unittests can also use the functionality present there.
    
    Added a bunch of unittests for the new functionality.
    Review URL: http://codereview.appspot.com/4802056
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@393 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Aug 2, 2011
  1. Move syzygy binary release to public repo.

    rogerm@chromium.org committed Aug 2, 2011
    Review URL: http://codereview.appspot.com/4842043
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@392 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  2. Benchmark package changes to include an "optimize" entry point for us…

    rogerm@chromium.org committed Aug 2, 2011
    …e by the chrome build bot.
    
    - when running optimize on a chrome build directory, we want to
      limit the number of extra files (particularly PDBs) we copy
      around.
    - Perform all work in/and on the copies of the original.
    - Add the ability to merge the chrome dll and pdb into the
      working copy from a different location.
    - Modify the relinker to write the new PDB to a temporary file
      then rename/replace it to the target file name.  This allows
      the tool to rewrite a PDB file "in-place" (i.e., where source
      and destination filenames are the same).
    Review URL: http://codereview.appspot.com/4808055
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@391 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jul 29, 2011
  1. Add version resource to call_trace.dll.

    siggi@chromium.org committed Jul 29, 2011
    Tidy common version.rc file.
    
    R=rogerm@chromium.org
    BUG=None
    TEST=None
    
    Review URL: http://codereview.appspot.com/4835042
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@390 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jul 28, 2011
  1. Add version resources to tools.

    siggi@chromium.org committed Jul 28, 2011
    R=rogerm@chromium.org
    BUG=None
    TEST=None
    
    Review URL: http://codereview.appspot.com/4794065
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@389 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  2. Test another couple of cases.

    siggi@chromium.org committed Jul 28, 2011
    R=rogerm@chromium.org
    BUG=None
    TEST=None
    
    Review URL: http://codereview.appspot.com/4801060
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@388 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jul 27, 2011
  1. Make shadow stack use exception resistant.

    siggi@chromium.org committed Jul 27, 2011
    Tests for same.
    
    R=chrisha@chromium.org
    BUG=None
    TEST=None
    
    Review URL: http://codereview.appspot.com/4816055
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@387 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jul 26, 2011
  1. Add testing for _penter/_pexit. Fix an errant flag constant.

    siggi@chromium.org committed Jul 26, 2011
    R=rogerm@chromium.org
    BUG=None
    TEST=None
    
    Review URL: http://codereview.appspot.com/4801057
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@386 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jul 25, 2011
  1. Remove rendundant tools directory and files therein.

    siggi@chromium.org committed Jul 25, 2011
    Edit .gitignore file to match current set of directories.
    
    R=chrisha@chromium.org
    BUG=None
    TEST=None
    
    Review URL: http://codereview.appspot.com/4825044
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@385 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jul 20, 2011
  1. Use section contributions for initial parsing of .text

    chrisha@chromium.org committed Jul 20, 2011
    This CL modifies Decomposer to use section contributions for the first pass of parsing, followed by the use of function and data symbols for refinement. The hope was that this would free us from control-flow analysis and block merging, but unfortunately this is still required in order to properly parse NaCl blocks (whose section contributions are too fine grained).
    
    As a side-effect, section contributions give us reliable information regarding padding blocks in .text. This CL also introduces padding block detection, and modifies the two relinkers to not output padding blocks when reordering a section.
    Review URL: http://codereview.appspot.com/4805044
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@384 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jul 13, 2011
  1. Make test harness useable outside of Syzygy

    chrisha@chromium.org committed Jul 13, 2011
    This makes the inputs to the test harness configurable rather than hardcoded. This allows the test harness to be used from other project directories.
    Review URL: http://codereview.appspot.com/4711043
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@383 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jul 8, 2011
  1. Unify metadata support, and add metadata output to relink.exe

    chrisha@chromium.org committed Jul 8, 2011
    This CL unifies how metadata is handled, centralizing it. It retrofits existing metadata users to use the new common::Metadata class, and adds metadata output to relink.exe produced modules.  Additionally, command-line and timestamp information has been added to the metadata.
    
    This CL also modifies both instrument.exe and relink.exe to ensure that .rsrc is kept as the second to last section, regardless. This ensure that modules produced by our toolchain are compatible with resource editors.
    
    The metadata section has been moved to be just prior to .rsrc if it exists, otherwise just prior to .relocs.
    
    BUG=http://code.google.com/p/sawbuck/issues/detail?id=37
    Review URL: http://codereview.appspot.com/4645083
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@382 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  2. Make version generation a hard dependency to fix build flakiness.

    siggi@chromium.org committed Jul 8, 2011
    Review URL: http://codereview.appspot.com/4675065
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@381 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  3. Tweak setup script so that the tools work when extracted by setup tools.

    siggi@chromium.org committed Jul 8, 2011
    Fix build configuration.
    Increase logging verbosity to include all spawned command lines.
    Review URL: http://codereview.appspot.com/4662082
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@380 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jul 7, 2011
  1. Automate the process of optimizing and benchmarking Chrome.

    siggi@chromium.org committed Jul 7, 2011
    Review URL: http://codereview.appspot.com/4631051
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@379 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jul 6, 2011
  1. Fix a noop unittest

    chrisha@chromium.org committed Jul 6, 2011
    As things stand, the order_relinker_unittest is effectively a noop, as we're telling the order generator not to order any sections. This addresses the issue by asking it to reorder code and data.
    Review URL: http://codereview.appspot.com/4673048
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@378 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  2. Add metadata to order files

    chrisha@chromium.org committed Jul 6, 2011
    This CL adds metadata to order files produced by reorder.exe. In turn, relink.exe uses this metadata to ensure that it is being applied to the appropriate input module.
    
    
    BUG=http://code.google.com/p/sawbuck/issues/detail?id=37
    Review URL: http://codereview.appspot.com/4672047
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@377 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jul 5, 2011
  1. Small change to test_data build system

    chrisha@chromium.org committed Jul 5, 2011
    The 'directory' target of 'test_data' was causing the build system to fail on a clean build. This CL removes this target, as the build system automatically creates it for us anyways.
    Review URL: http://codereview.appspot.com/4667062
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@376 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  2. Revamped linear order generator

    chrisha@chromium.org committed Jul 5, 2011
    Extended the reorderer base class to parse process information, allowing it to
    distinguish between multiple runs of an instrumented module in a single ETL
    file, as well as multiple runs across multiple ETL files. Extended
    LinearOrderGenerator to use this information. The generalized behaviour of
    LinearOrderGenerator is to group function calls by popularity, and linearize
    their order of access. This is equivalent to the previous behaviour for cases
    where there is only a single run of the instrumented module.
    Review URL: http://codereview.appspot.com/4641092
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@375 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jul 4, 2011
  1. Copy test_data for coverage build

    chrisha@chromium.org committed Jul 4, 2011
    The unittests now require test_data to be present or they will fail. This CL updates 'generate_coverage' to recursively copy the test_data directory from the build directory prior to invoking the unittests.
    Review URL: http://codereview.appspot.com/4654086
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@374 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  2. Make reorderer validate instrumenter signature

    chrisha@chromium.org committed Jul 4, 2011
    This CL makes the reorderer validate the input module versus the metadata in the instrumented module. The reorderer will refuse to run if its version is inconsistent with the instrumented module version, or if the input module signature does not match that of the original module that was run through the instrumenter.
    
    As a side effect of the metadata, this CL also makes the --input-dll command optional, as it can be inferred from the metadata. It can still be provided if the module has been moved since original instrumentation, and all validation will still work.
    
    Also added a handful of unittests.
    
    The relinker unit tests require the ability to work on test data that has been generated from a current version of the toolchain. To meet this requirement, this CL creates a test_data project, which uses the toolchain to populate $(OutDir)/test_data with auto-generated test data. The unittests can then depend on the appropriate target to ensure that the data they require has been generated.
    
    BUG=http://code.google.com/p/sawbuck/issues/detail?id=37
    Review URL: http://codereview.appspot.com/4639088
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@373 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  3. Call-trace control cleanup.

    chrisha@chromium.org committed Jul 4, 2011
    This CL cleans up call-trace control. This was in an effort to minimize the chances for dropped events by making kernel and call-trace logs use different buffer settings.
    Review URL: http://codereview.appspot.com/4661068
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@372 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  4. Fix continous & developer builds by picking most recent .eggs instead…

    siggi@chromium.org committed Jul 4, 2011
    … of barfing.
    
    Review URL: http://codereview.appspot.com/4675044
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@371 15e8cca8-e42c-11de-a347-f34a4f72eb7d
Commits on Jun 30, 2011
  1. Fix build configuration for benchmark zip file.

    siggi@chromium.org committed Jun 30, 2011
    Review URL: http://codereview.appspot.com/4661063
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@370 15e8cca8-e42c-11de-a347-f34a4f72eb7d
  2. Version information for Syzygy

    chrisha@chromium.org committed Jun 30, 2011
    Added version information to Syzygy, with integration into the build system. Placed the version header in a top level project, 'common', with associated unittests, etc.
    Review URL: http://codereview.appspot.com/4631080
    
    git-svn-id: http://sawbuck.googlecode.com/svn/trunk@369 15e8cca8-e42c-11de-a347-f34a4f72eb7d