Skip to content

Commit

Permalink
Use VSET to initialize static const f4's
Browse files Browse the repository at this point in the history
This addresses a Windows ARM64 compilation failure due to assignment of array initializer list assignment to float32x4_t.
  • Loading branch information
danfal authored Mar 14, 2023
1 parent afb604c commit 623db5e
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions minimp3.h
Original file line number Diff line number Diff line change
Expand Up @@ -1566,7 +1566,7 @@ static void mp3d_synth(float *xl, mp3d_sample_t *dstl, int nch, float *lins)

#else /* MINIMP3_FLOAT_OUTPUT */

static const f4 g_scale = { 1.0f/32768.0f, 1.0f/32768.0f, 1.0f/32768.0f, 1.0f/32768.0f };
static const f4 g_scale = VSET(1.0f/32768.0f);
a = VMUL(a, g_scale);
b = VMUL(b, g_scale);
#if HAVE_SSE
Expand Down Expand Up @@ -1813,7 +1813,7 @@ void mp3dec_f32_to_s16(const float *in, int16_t *out, int num_samples)
int aligned_count = num_samples & ~7;
for(; i < aligned_count; i += 8)
{
static const f4 g_scale = { 32768.0f, 32768.0f, 32768.0f, 32768.0f };
static const f4 g_scale = VSET(32768.0f);
f4 a = VMUL(VLD(&in[i ]), g_scale);
f4 b = VMUL(VLD(&in[i+4]), g_scale);
#if HAVE_SSE
Expand Down

0 comments on commit 623db5e

Please sign in to comment.