|
Make reorderer validate instrumenter signature
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
Committed: http://code.google.com/p/sawbuck/source/browse/#svn/trunk373
Total comments: 5
Total comments: 2
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+405 lines, -46 lines) |
Patch |
|
M |
syzygy/common/common.gyp
|
View
|
2
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
A |
syzygy/common/defs.h
|
View
|
|
1 chunk |
+29 lines, -0 lines |
0 comments
|
Download
|
|
A |
syzygy/common/defs.cc
|
View
|
|
1 chunk |
+21 lines, -0 lines |
0 comments
|
Download
|
|
M |
syzygy/common/syzygy_version.h
|
View
|
|
1 chunk |
+6 lines, -0 lines |
0 comments
|
Download
|
|
M |
syzygy/common/syzygy_version.cc
|
View
|
|
1 chunk |
+5 lines, -0 lines |
0 comments
|
Download
|
|
M |
syzygy/common/syzygy_version_unittest.cc
|
View
|
|
1 chunk |
+11 lines, -0 lines |
0 comments
|
Download
|
|
M |
syzygy/instrument/instrument.gyp
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
syzygy/instrument/instrumenter.cc
|
View
|
|
3 chunks |
+19 lines, -3 lines |
0 comments
|
Download
|
|
M |
syzygy/pe/pe_file.h
|
View
|
|
1 chunk |
+6 lines, -1 line |
0 comments
|
Download
|
|
M |
syzygy/pe/pe_file_unittest.cc
|
View
|
|
2 chunks |
+82 lines, -0 lines |
0 comments
|
Download
|
|
M |
syzygy/relink/order_relinker_unittest.cc
|
View
|
1
|
4 chunks |
+26 lines, -10 lines |
0 comments
|
Download
|
|
M |
syzygy/relink/relink.gyp
|
View
|
1
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
syzygy/reorder/reorder.gyp
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
syzygy/reorder/reorder_main.cc
|
View
|
|
2 chunks |
+13 lines, -12 lines |
0 comments
|
Download
|
|
M |
syzygy/reorder/reorderer.h
|
View
|
1
|
3 chunks |
+9 lines, -7 lines |
0 comments
|
Download
|
|
M |
syzygy/reorder/reorderer.cc
|
View
|
1
|
4 chunks |
+83 lines, -13 lines |
0 comments
|
Download
|
|
M |
syzygy/syzygy.gyp
|
View
|
1
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
A |
syzygy/test_data/test_data.gyp
|
View
|
1
|
1 chunk |
+89 lines, -0 lines |
0 comments
|
Download
|
Total messages: 8
|