Remove useless hack that avoids calling LLVMLinkInInterpreter()
authorMehdi Amini <mehdi.amini@apple.com>
Mon, 7 Dec 2015 22:27:19 +0000 (22:27 +0000)
committerMehdi Amini <mehdi.amini@apple.com>
Mon, 7 Dec 2015 22:27:19 +0000 (22:27 +0000)
This is supposed to force-link the Interpreter, by inserting a dead
call to LLVMLinkInInterpreter().
Since it is actually an empty function, there is no reason for the
call to be dead.

From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 254956

llvm/include/llvm/ExecutionEngine/Interpreter.h

index f49d0c4..a147078 100644 (file)
 #define LLVM_EXECUTIONENGINE_INTERPRETER_H
 
 #include "llvm/ExecutionEngine/ExecutionEngine.h"
-#include <cstdlib>
 
 extern "C" void LLVMLinkInInterpreter();
 
 namespace {
   struct ForceInterpreterLinking {
-    ForceInterpreterLinking() {
-      // We must reference the interpreter in such a way that compilers will not
-      // delete it all as dead code, even with whole program optimization,
-      // yet is effectively a NO-OP. As the compiler isn't smart enough
-      // to know that getenv() never returns -1, this will do the job.
-      if (std::getenv("bar") != (char*) -1)
-        return;
-
-      LLVMLinkInInterpreter();
-    }
+    ForceInterpreterLinking() { LLVMLinkInInterpreter(); }
   } ForceInterpreterLinking;
 }