From e17bed95af9791966010ec8a56dea01b4a6938c8 Mon Sep 17 00:00:00 2001 From: Jan Kotas Date: Fri, 5 Aug 2022 09:04:49 -0700 Subject: [PATCH 1/2] Simplify initialization of CILJit singleton --- src/coreclr/jit/ee_il_dll.cpp | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/src/coreclr/jit/ee_il_dll.cpp b/src/coreclr/jit/ee_il_dll.cpp index 9bb0525b23593..f6a73a1c94703 100644 --- a/src/coreclr/jit/ee_il_dll.cpp +++ b/src/coreclr/jit/ee_il_dll.cpp @@ -34,7 +34,6 @@ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX FILE* jitstdout = nullptr; ICorJitHost* g_jitHost = nullptr; -static CILJit* ILJitter = nullptr; // The one and only JITTER I return bool g_jitInitialized = false; /*****************************************************************************/ @@ -152,6 +151,8 @@ void jitShutdown(bool processIsTerminating) /*****************************************************************************/ +static CILJit g_CILJit; + DLLEXPORT ICorJitCompiler* getJit() { if (!g_jitInitialized) @@ -159,12 +160,7 @@ DLLEXPORT ICorJitCompiler* getJit() return nullptr; } - if (ILJitter == nullptr) - { - alignas(alignof(CILJit)) static char CILJitBuff[sizeof(CILJit)]; - ILJitter = new (CILJitBuff, jitstd::placement_t()) CILJit(); - } - return (ILJitter); + return &g_CILJit; } /*****************************************************************************/ From 216cf1bb58bf094258d2e11b007be785a629021d Mon Sep 17 00:00:00 2001 From: Jan Kotas Date: Fri, 5 Aug 2022 11:03:31 -0700 Subject: [PATCH 2/2] Apply format patch --- src/coreclr/jit/ee_il_dll.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/coreclr/jit/ee_il_dll.cpp b/src/coreclr/jit/ee_il_dll.cpp index f6a73a1c94703..7b5b296151090 100644 --- a/src/coreclr/jit/ee_il_dll.cpp +++ b/src/coreclr/jit/ee_il_dll.cpp @@ -33,8 +33,8 @@ XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX FILE* jitstdout = nullptr; -ICorJitHost* g_jitHost = nullptr; -bool g_jitInitialized = false; +ICorJitHost* g_jitHost = nullptr; +bool g_jitInitialized = false; /*****************************************************************************/