Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
VideoLAN
x264
Commits
19e1a2bb
Commit
19e1a2bb
authored
Feb 25, 2013
by
Loren Merritt
Committed by
Fiona Glaser
Apr 23, 2013
Browse files
x86inc: create xm# and ym#, analagous to m#
For when we want to mix simd sizes within one function.
parent
3a8dfb2b
Changes
1
Hide whitespace changes
Inline
Side-by-side
common/x86/x86inc.asm
View file @
19e1a2bb
...
...
@@ -785,7 +785,11 @@ SECTION .note.GNU-stack noalloc noexec nowrite progbits
%endif
%endmacro
; merge mmx and sse*
; Merge mmx and sse*
; m# is a simd regsiter of the currently selected size
; xm# is the corresponding xmmreg (if selcted xmm or ymm size), or mmreg (if selected mmx)
; ym# is the corresponding ymmreg (if selcted xmm or ymm size), or mmreg (if selected mmx)
; (All 3 remain in sync through SWAP.)
%macro CAT_XDEFINE 3
%xdefine %1%2 %3
...
...
@@ -862,6 +866,26 @@ SECTION .note.GNU-stack noalloc noexec nowrite progbits
INIT_XMM
%macro DECLARE_MMCAST 1
%define mmmm%1 mm%1
%define mmxmm%1 mm%1
%define mmymm%1 mm%1
%define xmmmm%1 mm%1
%define xmmxmm%1 xmm%1
%define xmmymm%1 xmm%1
%define ymmmm%1 mm%1
%define ymmxmm%1 ymm%1
%define ymmymm%1 ymm%1
%define xm%1 xmm %+ m%1
%define ym%1 ymm %+ m%1
%endmacro
%assign i 0
%rep 16
DECLARE_MMCAST
i
%assign i i+1
%endrep
; I often want to use macros that permute their arguments. e.g. there's no
; efficient way to implement butterfly or transpose or dct without swapping some
; arguments.
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment