From 38fe1c60666d9e8cb3d7b825e5a926111b2160d5 Mon Sep 17 00:00:00 2001 From: van Hauser Date: Fri, 22 May 2020 20:59:32 +0200 Subject: more help for LTO issues --- llvm_mode/README.lto.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'llvm_mode') 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. -- cgit 1.4.1