This fixes two things. First, the logic to disable SSE2 on GCC unless "-msse2" was not specific enough, and ended up disabling SIMD support on NEON targets entirely. Shuffle the detection logic around to make that bit x86-specific. Second, 32-bit MinGW assumes 16-byte aligned stacks, but this is not in the Windows ABI and hence DLLs and callbacks don't necessarily provide it. This caused a crash. This can be fixed by providing the right command-line option, which we have no control over. As a compromise, disable the SSE2 path on MinGW unless a specific #define explained in the comments is set. That way, we default to safe (never-crashing) behavior unless the user explicitly signals they know what they're doing.master
parent
bdef693b7c
commit
4b0c6f6634
1 changed files with 20 additions and 2 deletions
Loading…
Reference in New Issue