]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-129244: Remove workaround for MSVC compiler crash (#129263)
authorMichael Droettboom <mdboom@gmail.com>
Sat, 25 Jan 2025 12:56:13 +0000 (07:56 -0500)
committerGitHub <noreply@github.com>
Sat, 25 Jan 2025 12:56:13 +0000 (07:56 -0500)
* Remove compiler workaround

* Remote _Py_USING_PGO

PCbuild/pyproject.props
Python/ceval.c

index 17abfa85201a9023be463277eb5291c4b1ce07b8..dbdb6b743bea37cb9380d078668823db99d16842 100644 (file)
@@ -53,7 +53,6 @@
     <ClCompile>
       <AdditionalIncludeDirectories>$(PySourcePath)Include;$(PySourcePath)Include\internal;$(PySourcePath)Include\internal\mimalloc;$(GeneratedPyConfigDir);$(PySourcePath)PC;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
       <PreprocessorDefinitions>WIN32;$(_Py3NamePreprocessorDefinition);$(_PlatformPreprocessorDefinition)$(_DebugPreprocessorDefinition)$(_PyStatsPreprocessorDefinition)$(_PydPreprocessorDefinition)%(PreprocessorDefinitions)</PreprocessorDefinitions>
-      <PreprocessorDefinitions Condition="'$(SupportPGO)' and ($(Configuration) == 'PGInstrument' or $(Configuration) == 'PGUpdate')">_Py_USING_PGO=1;%(PreprocessorDefinitions)</PreprocessorDefinitions>
 
       <Optimization>MaxSpeed</Optimization>
       <IntrinsicFunctions>true</IntrinsicFunctions>
index 1bdae338845758d89b2cd53d509a38ac051d6de9..5469874e97828b00eb2a40c37b1b646c2967ac61 100644 (file)
@@ -766,23 +766,6 @@ _PyObjectArray_Free(PyObject **array, PyObject **scratch)
 #define PY_EVAL_C_STACK_UNITS 2
 
 
-/* _PyEval_EvalFrameDefault is too large to optimize for speed with PGO on MSVC
-   when the JIT is enabled or GIL is disabled. Disable that optimization around
-   this function only. If this is fixed upstream, we should gate this on the
-   version of MSVC.
- */
-#if (defined(_MSC_VER) && \
-     defined(_Py_USING_PGO) && \
-     (defined(_Py_JIT) || \
-      defined(Py_GIL_DISABLED)))
-#define DO_NOT_OPTIMIZE_INTERP_LOOP
-#endif
-
-#ifdef DO_NOT_OPTIMIZE_INTERP_LOOP
-#  pragma optimize("t", off)
-/* This setting is reversed below following _PyEval_EvalFrameDefault */
-#endif
-
 PyObject* _Py_HOT_FUNCTION
 _PyEval_EvalFrameDefault(PyThreadState *tstate, _PyInterpreterFrame *frame, int throwflag)
 {
@@ -1171,10 +1154,6 @@ goto_to_tier1:
 
 }
 
-#ifdef DO_NOT_OPTIMIZE_INTERP_LOOP
-#  pragma optimize("", on)
-#endif
-
 #if defined(__GNUC__)
 #  pragma GCC diagnostic pop
 #elif defined(_MSC_VER) /* MS_WINDOWS */