diff --git a/libavcodec/x86/sbrdsp.asm b/libavcodec/x86/sbrdsp.asm
index 51680f048bb82897660d6e152632ff09d306d2c3..62bbe512ec61bae40300d0b4fc9dddfe1683a774 100644
--- a/libavcodec/x86/sbrdsp.asm
+++ b/libavcodec/x86/sbrdsp.asm
@@ -382,7 +382,8 @@ apply_noise_main:
 %else
     DEFINE_ARGS Y, s_m, q_filt, noise, kx, count
 %endif
-    dec    noised
+    movsxdifnidn    noiseq, noised
+    dec    noiseq
     shl    countd, 2
 %ifdef PIC
     lea NOISE_TABLE, [sbr_noise_table]