diff options
author | Fabian Meumertzheim <meumertzheim@code-intelligence.com> | 2021-02-12 14:18:37 +0100 |
---|---|---|
committer | Fabian Meumertzheim <fabian@meumertzhe.im> | 2021-02-22 14:14:52 +0100 |
commit | 97942a9f4924ca4c9cad2a2756e44ad29fb44fca (patch) | |
tree | b9db61c9e5c0cadf6a6f1a6436c82f22526b5877 /maven_install.json | |
parent | ecb84f9f44de1b0d7a94b2d924f05f8b5676fc7b (diff) | |
download | jazzer-api-97942a9f4924ca4c9cad2a2756e44ad29fb44fca.tar.gz |
Instrument edges instead of basic blocks
We are currently deriving edge coverage instrumentation from basic block
instrumentation via the AFL XOR-technique. This has several downsides:
* Different edges can be assigned the same position in the coverage map,
which leads to underreported coverage.
* The coverage map needs to be large enough for collisions to be
unlikely (on the order of num_edges^2). In addition to being wasteful,
it is also hard to determine the correct size given that we don't know
the number of edges.
In addition to the design limitations, the current implementation
additionally does not take into account that most Java method
invocations can throw exceptions and thus need to be instrumented.
These issues are resolved by switching to true LLVM-style edge coverage
instrumentation. The new coverage instrumentation is based on a lightly
patched version of the JaCoCo internals.
Note:
//agent/src/test/java/com/code_intelligence/jazzer/instrumentor:coverage_instrumentation_test
is not passing for this commit. It will be fixed with the next commit.
Diffstat (limited to 'maven_install.json')
-rw-r--r-- | maven_install.json | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/maven_install.json b/maven_install.json index 42d6462c..aad562cd 100644 --- a/maven_install.json +++ b/maven_install.json @@ -1,7 +1,7 @@ { "dependency_tree": { "__AUTOGENERATED_FILE_DO_NOT_MODIFY_THIS_FILE_MANUALLY": "THERE_IS_NO_DATA_ONLY_ZUUL", - "__INPUT_ARTIFACTS_HASH": -1561364904, + "__INPUT_ARTIFACTS_HASH": -13066241, "__RESOLVED_ARTIFACTS_HASH": 2026903625, "conflict_resolution": {}, "dependencies": [ |