Skip to content

Instantly share code, notes, and snippets.

@justinruggles
Created August 5, 2012 16:36
Show Gist options
  • Save justinruggles/3265816 to your computer and use it in GitHub Desktop.
Save justinruggles/3265816 to your computer and use it in GitHub Desktop.
%if 1
; shuffle dwords:
pshufd m3, m3, q3120 ; m3 = 0, 1, 2, 3, 12, 13, 14, 15
pshufd m0, m0, q1302 ; m0 = 4, 5, 6, 7, 16, 17, 18, 19
pshufd m2, m2, q3120 ; m2 = 8, 9, 10, 11, 20, 21, 22, 23
movq [dstq ], m3
movq [dstq+ 8], m0
movq [dstq+16], m2
movhps [dstq+24], m3
movhps [dstq+32], m0
movhps [dstq+40], m2
%else
shufps m1, m2, m3, q3120 ; m1 = 8, 9, 10, 11, 12, 13, 14, 15
shufps m3, m0, q0220 ; m3 = 0, 1, 2, 3, 4, 5, 6, 7
shufps m0, m2, q3113 ; m0 = 16, 17, 18, 19, 20, 21, 22, 23
mova [dstq+0*mmsize], m3
mova [dstq+1*mmsize], m1
mova [dstq+2*mmsize], m0
%endif
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment