cmake: don't auto vectorize with AltiVec on PPC

Allowing GCC/Clang to auto-vectorize with AltiVec support breaks support
for non-AltiVec compatible processors.  Adding this option allows the
existing AltiVec specific code to function as it always did, but
prevents the compiler from inserting AltiVec instructions into arbitrary
codepaths that SDL can't gate off via the existing CPUInfo code.
This commit is contained in:
techflashYT
2025-07-05 01:31:25 -07:00
committed by Sam Lantinga
parent 1502c2fd8b
commit b3dd0995df

View File

@@ -914,6 +914,7 @@ if(SDL_ASSEMBLY)
set(HAVE_ALTIVEC TRUE)
set(SDL_ALTIVEC_BLITTERS 1)
sdl_compile_options(PRIVATE "-maltivec")
sdl_compile_options(PRIVATE "-fno-tree-vectorize")
set_property(SOURCE "${SDL3_SOURCE_DIR}/src/video/SDL_blit_N.c" APPEND PROPERTY COMPILE_DEFINITIONS "SDL_ENABLE_ALTIVEC")
set_property(SOURCE "${SDL3_SOURCE_DIR}/src/video/SDL_blit_N.c" PROPERTY SKIP_PRECOMPILE_HEADERS 1)
endif()