about summary refs log tree commit diff
path: root/llvm_mode
diff options
context:
space:
mode:
Diffstat (limited to 'llvm_mode')
-rw-r--r--llvm_mode/README.lto.md11
1 files changed, 9 insertions, 2 deletions
diff --git a/llvm_mode/README.lto.md b/llvm_mode/README.lto.md
index fa5b8665..88b1517d 100644
--- a/llvm_mode/README.lto.md
+++ b/llvm_mode/README.lto.md
@@ -6,8 +6,6 @@ This version requires a current llvm 11 compiled from the github master.
 
 1. Use afl-clang-lto/afl-clang-lto++ because it is faster and gives better
    coverage than anything else that is out there in the AFL world
-  1a. Set AFL_LLVM_INSTRUMENT=CFG if you want the InsTrimLTO version
-      (recommended)
 
 2. You can use it together with llvm_mode: laf-intel and whitelisting
    features and can be combined with cmplog/Redqueen
@@ -20,6 +18,8 @@ This version requires a current llvm 11 compiled from the github master.
    note that if that target uses _init functions or early constructors then
    also set `AFL_LLVM_MAP_DYNAMIC=1` as your target will crash otherwise
 
+6. If you get the error `error: Invalid record` at link time you must decide
+   between LTO or cmplog/laf-intel
 
 ## Introduction and problem description
 
@@ -134,6 +134,13 @@ and on some target you have to to AR=/RANLIB= even for make as the configure scr
 Other targets ignore environment variables and need the parameters set via
 `./configure --cc=... --cxx= --ranlib= ...` etc. (I am looking at you ffmpeg!).
 
+### error: Invalid record
+
+This error only occurs if cmplog or laf-intel were activated.
+If you see the error `error: Invalid record` at link time then an
+instrumentation went wrong. You now must choose, either use afl-clang-fast
+and keep cmplog/laf-intel, or drop cmplog/laf-intel and keep using afl-clang-lto.
+
 ### compiling programs still fail
 
 afl-clang-lto is still work in progress.