|
@@ -293,10 +293,10 @@ static void SDLCALL SDL_Convert_S8_to_F32_SSE2(SDL_AudioCVT *cvt, SDL_AudioForma
|
|
|
|
|
|
src -= 15;
|
|
|
dst -= 15; /* adjust to read SSE blocks from the start. */
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do SSE blocks as long as we have 16 bytes available. */
|
|
|
const __m128i *mmsrc = (const __m128i *)src;
|
|
|
const __m128i zero = _mm_setzero_si128();
|
|
@@ -357,10 +357,10 @@ static void SDLCALL SDL_Convert_U8_to_F32_SSE2(SDL_AudioCVT *cvt, SDL_AudioForma
|
|
|
|
|
|
src -= 15;
|
|
|
dst -= 15; /* adjust to read SSE blocks from the start. */
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do SSE blocks as long as we have 16 bytes available. */
|
|
|
const __m128i *mmsrc = (const __m128i *)src;
|
|
|
const __m128i zero = _mm_setzero_si128();
|
|
@@ -423,10 +423,10 @@ static void SDLCALL SDL_Convert_S16_to_F32_SSE2(SDL_AudioCVT *cvt, SDL_AudioForm
|
|
|
|
|
|
src -= 7;
|
|
|
dst -= 7; /* adjust to read SSE blocks from the start. */
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do SSE blocks as long as we have 16 bytes available. */
|
|
|
const __m128 divby32768 = _mm_set1_ps(DIVBY32768);
|
|
|
while (i >= 8) { /* 8 * 16-bit */
|
|
@@ -476,10 +476,10 @@ static void SDLCALL SDL_Convert_U16_to_F32_SSE2(SDL_AudioCVT *cvt, SDL_AudioForm
|
|
|
|
|
|
src -= 7;
|
|
|
dst -= 7; /* adjust to read SSE blocks from the start. */
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do SSE blocks as long as we have 16 bytes available. */
|
|
|
const __m128 divby32768 = _mm_set1_ps(DIVBY32768);
|
|
|
const __m128 minus1 = _mm_set1_ps(-1.0f);
|
|
@@ -528,10 +528,10 @@ static void SDLCALL SDL_Convert_S32_to_F32_SSE2(SDL_AudioCVT *cvt, SDL_AudioForm
|
|
|
*dst = ((float)(*src >> 8)) * DIVBY8388607;
|
|
|
}
|
|
|
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do SSE blocks as long as we have 16 bytes available. */
|
|
|
const __m128 divby8388607 = _mm_set1_ps(DIVBY8388607);
|
|
|
const __m128i *mmsrc = (const __m128i *)src;
|
|
@@ -578,10 +578,10 @@ static void SDLCALL SDL_Convert_F32_to_S8_SSE2(SDL_AudioCVT *cvt, SDL_AudioForma
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do SSE blocks as long as we have 16 bytes available. */
|
|
|
const __m128 one = _mm_set1_ps(1.0f);
|
|
|
const __m128 negone = _mm_set1_ps(-1.0f);
|
|
@@ -641,10 +641,10 @@ static void SDLCALL SDL_Convert_F32_to_U8_SSE2(SDL_AudioCVT *cvt, SDL_AudioForma
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do SSE blocks as long as we have 16 bytes available. */
|
|
|
const __m128 one = _mm_set1_ps(1.0f);
|
|
|
const __m128 negone = _mm_set1_ps(-1.0f);
|
|
@@ -704,10 +704,10 @@ static void SDLCALL SDL_Convert_F32_to_S16_SSE2(SDL_AudioCVT *cvt, SDL_AudioForm
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do SSE blocks as long as we have 16 bytes available. */
|
|
|
const __m128 one = _mm_set1_ps(1.0f);
|
|
|
const __m128 negone = _mm_set1_ps(-1.0f);
|
|
@@ -765,10 +765,10 @@ static void SDLCALL SDL_Convert_F32_to_U16_SSE2(SDL_AudioCVT *cvt, SDL_AudioForm
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do SSE blocks as long as we have 16 bytes available. */
|
|
|
/* This calculates differently than the scalar path because SSE2 can't
|
|
|
pack int32 data down to unsigned int16. _mm_packs_epi32 does signed
|
|
@@ -834,8 +834,8 @@ static void SDLCALL SDL_Convert_F32_to_S32_SSE2(SDL_AudioCVT *cvt, SDL_AudioForm
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
- SDL_assert(!i || ((((size_t)src) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
+ SDL_assert(!i || !(((size_t)src) & 15));
|
|
|
|
|
|
{
|
|
|
/* Aligned! Do SSE blocks as long as we have 16 bytes available. */
|
|
@@ -889,10 +889,10 @@ static void SDLCALL SDL_Convert_S8_to_F32_NEON(SDL_AudioCVT *cvt, SDL_AudioForma
|
|
|
|
|
|
src -= 15;
|
|
|
dst -= 15; /* adjust to read NEON blocks from the start. */
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do NEON blocks as long as we have 16 bytes available. */
|
|
|
const int8_t *mmsrc = (const int8_t *)src;
|
|
|
const float32x4_t divby128 = vdupq_n_f32(DIVBY128);
|
|
@@ -945,10 +945,10 @@ static void SDLCALL SDL_Convert_U8_to_F32_NEON(SDL_AudioCVT *cvt, SDL_AudioForma
|
|
|
|
|
|
src -= 15;
|
|
|
dst -= 15; /* adjust to read NEON blocks from the start. */
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do NEON blocks as long as we have 16 bytes available. */
|
|
|
const uint8_t *mmsrc = (const uint8_t *)src;
|
|
|
const float32x4_t divby128 = vdupq_n_f32(DIVBY128);
|
|
@@ -1002,10 +1002,10 @@ static void SDLCALL SDL_Convert_S16_to_F32_NEON(SDL_AudioCVT *cvt, SDL_AudioForm
|
|
|
|
|
|
src -= 7;
|
|
|
dst -= 7; /* adjust to read NEON blocks from the start. */
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do NEON blocks as long as we have 16 bytes available. */
|
|
|
const float32x4_t divby32768 = vdupq_n_f32(DIVBY32768);
|
|
|
while (i >= 8) { /* 8 * 16-bit */
|
|
@@ -1051,10 +1051,10 @@ static void SDLCALL SDL_Convert_U16_to_F32_NEON(SDL_AudioCVT *cvt, SDL_AudioForm
|
|
|
|
|
|
src -= 7;
|
|
|
dst -= 7; /* adjust to read NEON blocks from the start. */
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do NEON blocks as long as we have 16 bytes available. */
|
|
|
const float32x4_t divby32768 = vdupq_n_f32(DIVBY32768);
|
|
|
const float32x4_t negone = vdupq_n_f32(-1.0f);
|
|
@@ -1099,10 +1099,10 @@ static void SDLCALL SDL_Convert_S32_to_F32_NEON(SDL_AudioCVT *cvt, SDL_AudioForm
|
|
|
*dst = ((float)(*src >> 8)) * DIVBY8388607;
|
|
|
}
|
|
|
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do NEON blocks as long as we have 16 bytes available. */
|
|
|
const float32x4_t divby8388607 = vdupq_n_f32(DIVBY8388607);
|
|
|
const int32_t *mmsrc = (const int32_t *)src;
|
|
@@ -1149,10 +1149,10 @@ static void SDLCALL SDL_Convert_F32_to_S8_NEON(SDL_AudioCVT *cvt, SDL_AudioForma
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do NEON blocks as long as we have 16 bytes available. */
|
|
|
const float32x4_t one = vdupq_n_f32(1.0f);
|
|
|
const float32x4_t negone = vdupq_n_f32(-1.0f);
|
|
@@ -1214,10 +1214,10 @@ static void SDLCALL SDL_Convert_F32_to_U8_NEON(SDL_AudioCVT *cvt, SDL_AudioForma
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do NEON blocks as long as we have 16 bytes available. */
|
|
|
const float32x4_t one = vdupq_n_f32(1.0f);
|
|
|
const float32x4_t negone = vdupq_n_f32(-1.0f);
|
|
@@ -1280,10 +1280,10 @@ static void SDLCALL SDL_Convert_F32_to_S16_NEON(SDL_AudioCVT *cvt, SDL_AudioForm
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do NEON blocks as long as we have 16 bytes available. */
|
|
|
const float32x4_t one = vdupq_n_f32(1.0f);
|
|
|
const float32x4_t negone = vdupq_n_f32(-1.0f);
|
|
@@ -1341,10 +1341,10 @@ static void SDLCALL SDL_Convert_F32_to_U16_NEON(SDL_AudioCVT *cvt, SDL_AudioForm
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
|
|
|
/* Make sure src is aligned too. */
|
|
|
- if ((((size_t)src) & 15) == 0) {
|
|
|
+ if (!(((size_t)src) & 15)) {
|
|
|
/* Aligned! Do NEON blocks as long as we have 16 bytes available. */
|
|
|
const float32x4_t one = vdupq_n_f32(1.0f);
|
|
|
const float32x4_t negone = vdupq_n_f32(-1.0f);
|
|
@@ -1402,8 +1402,8 @@ static void SDLCALL SDL_Convert_F32_to_S32_NEON(SDL_AudioCVT *cvt, SDL_AudioForm
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- SDL_assert(!i || ((((size_t)dst) & 15) == 0));
|
|
|
- SDL_assert(!i || ((((size_t)src) & 15) == 0));
|
|
|
+ SDL_assert(!i || !(((size_t)dst) & 15));
|
|
|
+ SDL_assert(!i || !(((size_t)src) & 15));
|
|
|
|
|
|
{
|
|
|
/* Aligned! Do NEON blocks as long as we have 16 bytes available. */
|