x86inc: modify ALIGN to not generate long nops on i586
authorLoren Merritt <lorenm@u.washington.edu>
Tue, 3 Jul 2012 17:51:43 +0000 (17:51 +0000)
committerDiego Biurrun <diego@biurrun.de>
Thu, 5 Jul 2012 15:37:11 +0000 (17:37 +0200)
Signed-off-by: Diego Biurrun <diego@biurrun.de>
libavutil/x86/x86inc.asm

index c167057..42ba97a 100644 (file)
@@ -571,6 +571,7 @@ SECTION .note.GNU-stack noalloc noexec nowrite progbits
 ; All subsequent functions (up to the next INIT_CPUFLAGS) is built for the specified cpu.
 ; You shouldn't need to invoke this macro directly, it's a subroutine for INIT_MMX &co.
 %macro INIT_CPUFLAGS 0-2
+    CPU amdnop
     %if %0 >= 1
         %xdefine cpuname %1
         %assign cpuflags cpuflags_%1
@@ -592,6 +593,9 @@ SECTION .note.GNU-stack noalloc noexec nowrite progbits
         %elifidn %1, sse3
             %define movu lddqu
         %endif
+        %if notcpuflag(mmx2)
+            CPU basicnop
+        %endif
     %else
         %xdefine SUFFIX
         %undef cpuname