mirror of
https://github.com/RPCS3/llvm.git
synced 2025-03-05 17:18:55 +00:00
Remove useless hack that avoids calling LLVMLinkInInterpreter()
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> git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254956 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
1440f53307
commit
3ff1b160f8
@ -16,22 +16,12 @@
|
||||
#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;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user