|
|
@ -145,6 +145,7 @@ |
|
|
|
Latest revision history: |
|
|
|
Latest revision history: |
|
|
|
2.03 (2015-04-12) additional corruption checking |
|
|
|
2.03 (2015-04-12) additional corruption checking |
|
|
|
stbi_set_flip_vertically_on_load |
|
|
|
stbi_set_flip_vertically_on_load |
|
|
|
|
|
|
|
fix NEON support; fix mingw support |
|
|
|
2.02 (2015-01-19) fix incorrect assert, fix warning |
|
|
|
2.02 (2015-01-19) fix incorrect assert, fix warning |
|
|
|
2.01 (2015-01-17) fix various warnings |
|
|
|
2.01 (2015-01-17) fix various warnings |
|
|
|
2.00b (2014-12-25) fix STBI_MALLOC in progressive JPEG |
|
|
|
2.00b (2014-12-25) fix STBI_MALLOC in progressive JPEG |
|
|
@ -633,10 +634,10 @@ typedef unsigned char validate_uint32[sizeof(stbi__uint32)==4 ? 1 : -1]; |
|
|
|
|
|
|
|
|
|
|
|
// x86/x64 detection
|
|
|
|
// x86/x64 detection
|
|
|
|
#if defined(__x86_64__) || defined(_M_X64) || defined(__i386) || defined(_M_IX86) |
|
|
|
#if defined(__x86_64__) || defined(_M_X64) || defined(__i386) || defined(_M_IX86) |
|
|
|
#define STBI_X86_TARGET |
|
|
|
#define STBI__X86_TARGET |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
#if defined(__GNUC__) && defined(STBI_X86_TARGET) && !defined(__SSE2__) && !defined(STBI_NO_SIMD) |
|
|
|
#if defined(__GNUC__) && defined(STBI__X86_TARGET) && !defined(__SSE2__) && !defined(STBI_NO_SIMD) |
|
|
|
// gcc doesn't support sse2 intrinsics unless you compile with -msse2,
|
|
|
|
// gcc doesn't support sse2 intrinsics unless you compile with -msse2,
|
|
|
|
// (but compiling with -msse2 allows the compiler to use SSE2 everywhere;
|
|
|
|
// (but compiling with -msse2 allows the compiler to use SSE2 everywhere;
|
|
|
|
// this is just broken and gcc are jerks for not fixing it properly
|
|
|
|
// this is just broken and gcc are jerks for not fixing it properly
|
|
|
@ -644,7 +645,7 @@ typedef unsigned char validate_uint32[sizeof(stbi__uint32)==4 ? 1 : -1]; |
|
|
|
#define STBI_NO_SIMD |
|
|
|
#define STBI_NO_SIMD |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
#if defined(__MINGW32__) && defined(STBI_X86_TARGET) && !defined(STBI_MINGW_ENABLE_SSE2) && !defined(STBI_NO_SIMD) |
|
|
|
#if defined(__MINGW32__) && defined(STBI__X86_TARGET) && !defined(STBI_MINGW_ENABLE_SSE2) && !defined(STBI_NO_SIMD) |
|
|
|
// 32-bit MinGW wants ESP to be 16-byte aligned, but this is not in the
|
|
|
|
// 32-bit MinGW wants ESP to be 16-byte aligned, but this is not in the
|
|
|
|
// Windows ABI and VC++ as well as Windows DLLs don't maintain that invariant.
|
|
|
|
// Windows ABI and VC++ as well as Windows DLLs don't maintain that invariant.
|
|
|
|
// As a result, enabling SSE2 on 32-bit MinGW is dangerous when not
|
|
|
|
// As a result, enabling SSE2 on 32-bit MinGW is dangerous when not
|
|
|
@ -657,7 +658,7 @@ typedef unsigned char validate_uint32[sizeof(stbi__uint32)==4 ? 1 : -1]; |
|
|
|
#define STBI_NO_SIMD |
|
|
|
#define STBI_NO_SIMD |
|
|
|
#endif |
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
|
|
#if !defined(STBI_NO_SIMD) && defined(STBI_X86_TARGET) |
|
|
|
#if !defined(STBI_NO_SIMD) && defined(STBI__X86_TARGET) |
|
|
|
#define STBI_SSE2 |
|
|
|
#define STBI_SSE2 |
|
|
|
#include <emmintrin.h> |
|
|
|
#include <emmintrin.h> |
|
|
|
|
|
|
|
|
|
|
@ -6288,6 +6289,7 @@ STBIDEF int stbi_info_from_callbacks(stbi_io_callbacks const *c, void *user, int |
|
|
|
revision history: |
|
|
|
revision history: |
|
|
|
2.03 (2015-04-12) extra corruption checking (mmozeiko) |
|
|
|
2.03 (2015-04-12) extra corruption checking (mmozeiko) |
|
|
|
stbi_set_flip_vertically_on_load (nguillemot) |
|
|
|
stbi_set_flip_vertically_on_load (nguillemot) |
|
|
|
|
|
|
|
fix NEON support; fix mingw support |
|
|
|
2.02 (2015-01-19) fix incorrect assert, fix warning |
|
|
|
2.02 (2015-01-19) fix incorrect assert, fix warning |
|
|
|
2.01 (2015-01-17) fix various warnings; suppress SIMD on gcc 32-bit without -msse2 |
|
|
|
2.01 (2015-01-17) fix various warnings; suppress SIMD on gcc 32-bit without -msse2 |
|
|
|
2.00b (2014-12-25) fix STBI_MALLOC in progressive JPEG |
|
|
|
2.00b (2014-12-25) fix STBI_MALLOC in progressive JPEG |
|
|
|