1 ;*****************************************************************************
2 ;* x86-optimized functions for maskedclamp filter
4 ;* Copyright (c) 2019 Paul B Mahol
6 ;* This file is part of FFmpeg.
8 ;* FFmpeg is free software; you can redistribute it and/or
9 ;* modify it under the terms of the GNU Lesser General Public
10 ;* License as published by the Free Software Foundation; either
11 ;* version 2.1 of the License, or (at your option) any later version.
13 ;* FFmpeg is distributed in the hope that it will be useful,
14 ;* but WITHOUT ANY WARRANTY; without even the implied warranty of
15 ;* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 ;* Lesser General Public License for more details.
18 ;* You should have received a copy of the GNU Lesser General Public
19 ;* License along with FFmpeg; if not, write to the Free Software
20 ;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21 ;******************************************************************************
23 %include "libavutil/x86/x86util.asm"
27 ;------------------------------------------------------------------------------
28 ; void ff_maskedclamp(const uint8_t *src, uint8_t *dst,
29 ; const uint8_t *darksrc,
30 ; const uint8_t *brightsrc,
31 ; int w, int undershoot, int overshoot)
32 ;------------------------------------------------------------------------------
35 cglobal maskedclamp8, 5,5,5, src, dst, dark, bright, w, undershoot, overshoot
55 movu m2, [brightq + wq]
67 cglobal maskedclamp16, 5,5,5, src, dst, dark, bright, w, undershoot, overshoot
85 movu m2, [brightq + wq]