mirror of
https://github.com/intel/llvm.git
synced 2026-01-24 17:01:00 +08:00
[lli] Don't create an ExecutorProcessControl in non-remote MCJIT config.
When lli is run with -jit-kind=mcjit and without remote JITing there is no need to create an ExecutorProcessControl object. This is nice cleanup, but as a bonus should silence the leak reports that we're seeing in https://green.lab.llvm.org/green/job/clang-stage2-cmake-RgSan/9105/. (Though as a side note I believe those reports are spurious. They are being tracked by rdar://104825696).
This commit is contained in:
@@ -663,10 +663,6 @@ int main(int argc, char **argv, char * const *envp) {
|
||||
#endif
|
||||
}
|
||||
|
||||
std::unique_ptr<orc::ExecutorProcessControl> EPC =
|
||||
RemoteMCJIT ? ExitOnErr(launchRemote())
|
||||
: ExitOnErr(orc::SelfExecutorProcessControl::Create());
|
||||
|
||||
if (!RemoteMCJIT) {
|
||||
// If the program doesn't explicitly call exit, we will need the Exit
|
||||
// function later on to make an explicit call, so get the function now.
|
||||
@@ -712,6 +708,7 @@ int main(int argc, char **argv, char * const *envp) {
|
||||
abort();
|
||||
} else {
|
||||
// else == "if (RemoteMCJIT)"
|
||||
std::unique_ptr<orc::ExecutorProcessControl> EPC = ExitOnErr(launchRemote());
|
||||
|
||||
// Remote target MCJIT doesn't (yet) support static constructors. No reason
|
||||
// it couldn't. This is a limitation of the LLI implementation, not the
|
||||
|
||||
Reference in New Issue
Block a user