190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber;
2f71323e297a928af368937089d3ed71239786f86Andreas Huber;  Copyright (c) 2010 The WebM project authors. All Rights Reserved.
390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber;
4f71323e297a928af368937089d3ed71239786f86Andreas Huber;  Use of this source code is governed by a BSD-style license
5f71323e297a928af368937089d3ed71239786f86Andreas Huber;  that can be found in the LICENSE file in the root of the source
6f71323e297a928af368937089d3ed71239786f86Andreas Huber;  tree. An additional intellectual property rights grant can be found
7f71323e297a928af368937089d3ed71239786f86Andreas Huber;  in the file PATENTS.  All contributing project authors may
8f71323e297a928af368937089d3ed71239786f86Andreas Huber;  be found in the AUTHORS file in the root of the source tree.
990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber;
1090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber
1190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber
12538f6170b788de7408b06efc6613dc98579aa6a6Andreas Huber%include "vpx_ports/x86_abi_support.asm"
1390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber
1490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Hubersection .text
1590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    global sym(vpx_reset_mmx_state)
1690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Hubersym(vpx_reset_mmx_state):
1790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    emms
1890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    ret
1990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber
2090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber
2190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber%ifidn __OUTPUT_FORMAT__,x64
2290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huberglobal sym(vpx_winx64_fldcw)
2390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Hubersym(vpx_winx64_fldcw):
2490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    sub   rsp, 8
2590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    mov   [rsp], rcx ; win x64 specific
2690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    fldcw [rsp]
2790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    add   rsp, 8
2890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    ret
2990d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber
3090d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber
3190d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huberglobal sym(vpx_winx64_fstcw)
3290d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Hubersym(vpx_winx64_fstcw):
3390d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    sub   rsp, 8
3490d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    fstcw [rsp]
3590d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    mov   rax, [rsp]
3690d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    add   rsp, 8
3790d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber    ret
3890d3ed91ae9228e1c8bab561b6138d4cb8c1e4fdAndreas Huber%endif
39