about summary refs log tree commit diff
path: root/src/afl-cc.c
diff options
context:
space:
mode:
authorDominik Maier <domenukk@gmail.com>2021-02-15 14:07:10 +0100
committerDominik Maier <domenukk@gmail.com>2021-02-15 14:07:10 +0100
commitc5017945f7f3e352d5b29889c6cc7d31d7206fd9 (patch)
tree08a6473db09532cb109143e16d1fc9b9a0cf6ed8 /src/afl-cc.c
parent5c4c49d9caa967f4dc939ea1ce3d92bc5d1276bc (diff)
parente3a5c31307f323452dc4b5288e0d19a02b596a33 (diff)
downloadafl++-c5017945f7f3e352d5b29889c6cc7d31d7206fd9.tar.gz
merged
Diffstat (limited to 'src/afl-cc.c')
-rw-r--r--src/afl-cc.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/afl-cc.c b/src/afl-cc.c
index 0ae401e7..959c9a6f 100644
--- a/src/afl-cc.c
+++ b/src/afl-cc.c
@@ -554,6 +554,11 @@ static void edit_params(u32 argc, char **argv, char **envp) {
 
     }
 
+#if LLVM_MAJOR >= 13
+    // fuck you llvm 13
+    cc_params[cc_par_cnt++] = "-fno-experimental-new-pass-manager";
+#endif
+
     if (lto_mode && !have_c) {
 
       u8 *ld_path = strdup(AFL_REAL_LD);
@@ -1582,6 +1587,7 @@ int main(int argc, char **argv, char **envp) {
           "libtokencap.so)\n"
           "  AFL_PATH: path to instrumenting pass and runtime  "
           "(afl-compiler-rt.*o)\n"
+          "  AFL_IGNORE_UNKNOWN_ENVS: don't warn on unknown env vars\n"
           "  AFL_INST_RATIO: percentage of branches to instrument\n"
           "  AFL_QUIET: suppress verbose output\n"
           "  AFL_HARDEN: adds code hardening to catch memory bugs\n"
@@ -1869,6 +1875,8 @@ int main(int argc, char **argv, char **envp) {
 
   edit_params(argc, argv, envp);
 
+  if (lto_mode) { setenv("_AFL_LTO_COMPILE", "1", 1); }
+
   if (debug) {
 
     DEBUGF("cd '%s';", getthecwd());