Sfoglia il codice sorgente

Remove MarkerForExternalDebugStep

This was previously used in the hybrid debugging scenario (VS would
set a breakpoint on this function, which was hard to inline). Since
this is no longer supported, we can remove this function.
Derek Morris 8 anni fa
parent
commit
6bcfab51d5
2 ha cambiato i file con 0 aggiunte e 17 eliminazioni
  1. 0 11
      lib/Runtime/Base/ThreadContext.cpp
  2. 0 6
      lib/Runtime/Base/ThreadContext.h

+ 0 - 11
lib/Runtime/Base/ThreadContext.cpp

@@ -54,17 +54,6 @@ void DefaultInitializeAdditionalProperties(ThreadContext *threadContext)
  */
 void (*InitializeAdditionalProperties)(ThreadContext *threadContext) = DefaultInitializeAdditionalProperties;
 
-// To make sure the marker function doesn't get inlined, optimized away, or merged with other functions we disable optimization.
-// If this method ends up causing a perf problem in the future, we should replace it with asm versions which should be lighter.
-#pragma optimize("g", off)
-_NOINLINE extern "C" void* MarkerForExternalDebugStep()
-{
-    // We need to return something here to prevent this function from being merged with other empty functions by the linker.
-    static int __dummy;
-    return &__dummy;
-}
-#pragma optimize("", on)
-
 CriticalSection ThreadContext::s_csThreadContext;
 size_t ThreadContext::processNativeCodeSize = 0;
 ThreadContext * ThreadContext::globalListFirst = nullptr;

+ 0 - 6
lib/Runtime/Base/ThreadContext.h

@@ -82,12 +82,6 @@ protected:
     bool isDisabled;
 };
 
-// This function is called before we step out of script (currently only for WinRT callout).
-// Debugger would put a breakpoint on this function if they want to detect the point at which we step
-// over the boundary.
-// It is intentionally left blank and the next operation should be the callout.
-extern "C" void* MarkerForExternalDebugStep();
-
 #define PROBE_STACK(scriptContext, size) ((scriptContext)->GetThreadContext()->ProbeStack(size, scriptContext))
 #define PROBE_STACK_NO_DISPOSE(scriptContext, size) ((scriptContext)->GetThreadContext()->ProbeStackNoDispose(size, scriptContext))
 #define PROBE_STACK_PARTIAL_INITIALIZED_INTERPRETER_FRAME(scriptContext, size) ((scriptContext)->GetThreadContext()->ProbeStack(size, scriptContext, _ReturnAddress()))