dsputil: x86: add SHUFFLE_MASK_W macro

Simplifies pshufb masks that operate on words.
pull/28/head
Jason Garrett-Glaser 13 years ago committed by Justin Ruggles
parent b2704a65d5
commit 85a3c19ed1
  1. 2
      libavcodec/x86/dsputil_yasm.asm
  2. 12
      libavutil/x86/x86util.asm

@ -28,7 +28,7 @@ pb_zzzzzzzz77777777: times 8 db -1
pb_7: times 8 db 7
pb_zzzz3333zzzzbbbb: db -1,-1,-1,-1,3,3,3,3,-1,-1,-1,-1,11,11,11,11
pb_zz11zz55zz99zzdd: db -1,-1,1,1,-1,-1,5,5,-1,-1,9,9,-1,-1,13,13
pb_revwords: db 14, 15, 12, 13, 10, 11, 8, 9, 6, 7, 4, 5, 2, 3, 0, 1
pb_revwords: SHUFFLE_MASK_W 7, 6, 5, 4, 3, 2, 1, 0
pd_16384: times 4 dd 16384
pb_bswap32: db 3, 2, 1, 0, 7, 6, 5, 4, 11, 10, 9, 8, 15, 14, 13, 12

@ -625,3 +625,15 @@
shufps %1, %1, 0
%endif
%endmacro
%macro SHUFFLE_MASK_W 8
%rep 8
%if %1>=0x80
db %1, %1
%else
db %1*2
db %1*2+1
%endif
%rotate 1
%endrep
%endmacro

Loading…
Cancel
Save