aboutsummaryrefslogtreecommitdiffstats
path: root/Alc
diff options
context:
space:
mode:
Diffstat (limited to 'Alc')
-rw-r--r--Alc/effects/reverb.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/Alc/effects/reverb.c b/Alc/effects/reverb.c
index 2a6aea35..a32b1de4 100644
--- a/Alc/effects/reverb.c
+++ b/Alc/effects/reverb.c
@@ -948,9 +948,11 @@ static ALvoid ALreverbState_update(ALreverbState *State, const ALCcontext *Conte
props->Reverb.ReflectionsGain*gain, props->Reverb.LateReverbGain*gain,
State);
- /* Calculate the max update size from the smallest relevant delay. */
+ /* Calculate the max update size from the smallest relevant delay, ensuring
+ * the update size is a multiple of 4 for SIMD.
+ */
State->MaxUpdate[1] = mini(MAX_UPDATE_SAMPLES,
- mini(State->Early.Offset[0][1], State->Late.Offset[0][1])
+ mini(State->Early.Offset[0][1], State->Late.Offset[0][1])&~3
);
/* Determine if delay-line cross-fading is required. TODO: Add some fuzz