1/*
2 * check XMM registers for clobbers on Win64
3 * Copyright (c) 2012 Ronald S. Bultje <rsbultje@gmail.com>
4 *
5 * This file is part of FFmpeg.
6 *
7 * FFmpeg is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
11 *
12 * FFmpeg is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15 * Lesser General Public License for more details.
16 *
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with FFmpeg; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20 */
21
22#include "libavcodec/avcodec.h"
23#include "libavutil/x86/w64xmmtest.h"
24
25wrap(avcodec_open2(AVCodecContext *avctx,
26                   const AVCodec *codec,
27                   AVDictionary **options))
28{
29    testxmmclobbers(avcodec_open2, avctx, codec, options);
30}
31
32wrap(avcodec_decode_subtitle2(AVCodecContext *avctx,
33                              AVSubtitle *sub,
34                              int *got_sub_ptr,
35                              AVPacket *avpkt))
36{
37    testxmmclobbers(avcodec_decode_subtitle2, avctx, sub,
38                    got_sub_ptr, avpkt);
39}
40
41wrap(avcodec_encode_subtitle(AVCodecContext *avctx,
42                             uint8_t *buf, int buf_size,
43                             const AVSubtitle *sub))
44{
45    testxmmclobbers(avcodec_encode_subtitle, avctx, buf, buf_size, sub);
46}
47
48wrap(avcodec_send_packet(AVCodecContext *avctx, const AVPacket *avpkt))
49{
50    testxmmclobbers(avcodec_send_packet, avctx, avpkt);
51}
52
53wrap(avcodec_receive_packet(AVCodecContext *avctx, AVPacket *avpkt))
54{
55    testxmmclobbers(avcodec_receive_packet, avctx, avpkt);
56}
57
58wrap(avcodec_send_frame(AVCodecContext *avctx, const AVFrame *frame))
59{
60    testxmmclobbers(avcodec_send_frame, avctx, frame);
61}
62
63wrap(avcodec_receive_frame(AVCodecContext *avctx, AVFrame *frame))
64{
65    testxmmclobbers(avcodec_receive_frame, avctx, frame);
66}
67