about summary refs log tree commit diff
path: root/gcc_plugin/afl-gcc-pass.so.cc
diff options
context:
space:
mode:
authorvan Hauser <vh@thc.org>2019-07-20 09:06:47 +0200
committervan Hauser <vh@thc.org>2019-07-20 09:06:47 +0200
commit322b5a736b2c84957c985cfffcb6bfc9470c0045 (patch)
treea636812d3050e828aae2ca5f12b4a6ba19ea800d /gcc_plugin/afl-gcc-pass.so.cc
parent907c054142ce7c72a0050ac3963d82a59c5e4f0a (diff)
downloadafl++-322b5a736b2c84957c985cfffcb6bfc9470c0045.tar.gz
updated docs and crash issues with gcc_plugin
Diffstat (limited to 'gcc_plugin/afl-gcc-pass.so.cc')
-rw-r--r--gcc_plugin/afl-gcc-pass.so.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/gcc_plugin/afl-gcc-pass.so.cc b/gcc_plugin/afl-gcc-pass.so.cc
index 8d1888ef..b1ca8325 100644
--- a/gcc_plugin/afl-gcc-pass.so.cc
+++ b/gcc_plugin/afl-gcc-pass.so.cc
@@ -1,7 +1,9 @@
 //
-// There are two TODOs in this file:
+// There are some TODOs in this file:
 //   - dont instrument blocks that are uninterested
 //   - implement whitelist feature
+//   - implement notZero
+//   - fix crash
 //
 
 /*
@@ -102,7 +104,7 @@ static unsigned int ext_call_instrument(function *fun) {
 
 		if (!fcnt_blocks++) continue; /* skip block 0 */
 		
-		// TODO: if the predecessor does not have to destinations
+		// TODO: if the predecessor does not have ast least two destinations
 		// then skip this block :TODO
 
 		/* Bail on this block if we trip the specified ratio */
@@ -223,6 +225,9 @@ static unsigned int inline_instrument(function *fun) {
 		g = gimple_build_assign(tmp3, PLUS_EXPR, tmp2, one);
 		gimple_seq_add_stmt(&seq, g); // tmp3 = tmp2 + 1
 
+		// TODO: neverZero: here we have to check if tmp3 == 0
+		//                  and add 1 if so
+
 //		tree tmp4 = create_tmp_var(map_type, "tmp4");
 //		g = gimple_build_assign(tmp4, PLUS_EXPR, map_ptr_g, area_off);
 //		gimple_seq_add_stmt(&seq, g); // tmp4 = __afl_area_ptr + area_off