1 ;*****************************************************************************
2 ;* cpu-a.asm: h264 encoder library
3 ;*****************************************************************************
4 ;* Copyright (C) 2003-2008 x264 project
6 ;* Authors: Laurent Aimar <fenrir@via.ecp.fr>
7 ;* Loren Merritt <lorenm@u.washington.edu>
8 ;* Fiona Glaser <fiona@x264.com>
10 ;* This program is free software; you can redistribute it and/or modify
11 ;* it under the terms of the GNU General Public License as published by
12 ;* the Free Software Foundation; either version 2 of the License, or
13 ;* (at your option) any later version.
15 ;* This program is distributed in the hope that it will be useful,
16 ;* but WITHOUT ANY WARRANTY; without even the implied warranty of
17 ;* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 ;* GNU General Public License for more details.
20 ;* You should have received a copy of the GNU General Public License
21 ;* along with this program; if not, write to the Free Software
22 ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111, USA.
23 ;*****************************************************************************
31 ;-----------------------------------------------------------------------------
32 ; int cpu_cpuid( int op, int *eax, int *ebx, int *ecx, int *edx )
33 ;-----------------------------------------------------------------------------
34 cglobal cpu_cpuid, 5,7
51 ;-----------------------------------------------------------------------------
52 ; int cpu_cpuid_test( void )
53 ; return 0 if unsupported
54 ;-----------------------------------------------------------------------------
55 cglobal cpu_cpuid_test
77 ;-----------------------------------------------------------------------------
78 ; int cpu_cpuid( int op, int *eax, int *ebx, int *ecx, int *edx )
79 ;-----------------------------------------------------------------------------
80 cglobal cpu_cpuid, 0,6
93 ;-----------------------------------------------------------------------------
94 ; void stack_align( void (*func)(void*), void *arg );
95 ;-----------------------------------------------------------------------------
112 ;-----------------------------------------------------------------------------
113 ; void cpu_emms( void )
114 ;-----------------------------------------------------------------------------
119 ;-----------------------------------------------------------------------------
120 ; void cpu_sfence( void )
121 ;-----------------------------------------------------------------------------
126 ;-----------------------------------------------------------------------------
127 ; void cpu_mask_misalign_sse( void )
128 ;-----------------------------------------------------------------------------
129 cglobal cpu_mask_misalign_sse
132 or dword [rsp], 1<<17