File tree Expand file tree Collapse file tree 1 file changed +6
-4
lines changed
Expand file tree Collapse file tree 1 file changed +6
-4
lines changed Original file line number Diff line number Diff line change @@ -948,11 +948,13 @@ _PyObjectArray_Free(PyObject **array, PyObject **scratch)
948948#include "generated_cases.c.h"
949949#endif
950950
951- #if (defined(__GNUC__ ) && !defined(__clang__ )) && defined(__x86_64__ )
951+ #if (defined(__GNUC__ ) && !defined(__clang__ )) && defined(__x86_64__ ) && ( __GNUC__ >= 10 )
952952/*
953- * gh-129987: The SLP autovectorizer can cause poor code generation for opcode
954- * dispatch, negating any benefit we get from vectorization elsewhere in the
955- * interpreter loop.
953+ * gh-129987: The SLP autovectorizer in GCC can cause poor code generation for
954+ * opcode dispatch in GCC 12 onwards, negating any benefit we get from
955+ * vectorization elsewhere in the interpreter loop. Disabling autovectorization
956+ * doesn't affect performance in versions 10 and 11, but it regresses
957+ * performance in earlier versions of GCC.
956958 */
957959#define DONT_SLP_VECTORIZE __attribute__((optimize ("no-tree-slp-vectorize")))
958960#else
You can’t perform that action at this time.
0 commit comments