From patchwork Wed Apr 17 18:28:21 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Wu Jianhua X-Patchwork-Id: 48112 Delivered-To: ffmpegpatchwork2@gmail.com Received: by 2002:a05:6a20:ce4e:b0:1a9:af23:56c1 with SMTP id id14csp1205438pzb; Wed, 17 Apr 2024 11:29:02 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCWPWv+ioYb4no+uRywpaTyKw3wNSQY05191v+WsnGKaV0zTx2siirPyV/UIFJORin4m8ny8hUH5L1LERCXmvknc3N76h6acb3TRtg== X-Google-Smtp-Source: AGHT+IHYMWTUSrRPRVAc2YfS0g2PKOolDGtYeELGnM/nIfXvQNmT8qE5HJrmv3VqbtoMwkHBiLzz X-Received: by 2002:a17:906:3844:b0:a52:572e:729f with SMTP id w4-20020a170906384400b00a52572e729fmr190209ejc.60.1713378542500; Wed, 17 Apr 2024 11:29:02 -0700 (PDT) Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id dr8-20020a170907720800b00a5198d85cbfsi7355362ejc.403.2024.04.17.11.29.02; Wed, 17 Apr 2024 11:29:02 -0700 (PDT) Received-SPF: pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) client-ip=79.124.17.100; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@outlook.com header.s=selector1 header.b="I/Pcfd+W"; arc=fail (body hash mismatch); spf=pass (google.com: domain of ffmpeg-devel-bounces@ffmpeg.org designates 79.124.17.100 as permitted sender) smtp.mailfrom=ffmpeg-devel-bounces@ffmpeg.org; dmarc=fail (p=NONE sp=QUARANTINE dis=NONE) header.from=outlook.com Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 32F5968D360; Wed, 17 Apr 2024 21:28:59 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from JPN01-OS0-obe.outbound.protection.outlook.com (mail-os0jpn01olkn2107.outbound.protection.outlook.com [40.92.98.107]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 1994768D220 for ; Wed, 17 Apr 2024 21:28:52 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ZQmCZ2bKIrV7no4+4/vGx0PlHUHnu9i5daXNjA4e3WnV5gzau3U9NwTWdRSY75t2Zt8LuNY3O8Z8h8J1FODASiWlkjQwbswf0pVxeU+aEUgJ/lHgjDxbxydY3o2HvBZkWulNkkuvx0qDwxKgTG7iZi+laCdQKRjl/XxY7YPkcOIYB9t7ik6pq0f+A3yI3TfaCpdTOAwmOZ0u3vaVvaIMYi+FwcgymvWSCrXh5IYoZn70786HXcMQAUnSbxXLMbcFYnuBxYUBNFFQ579UvqOuZZWu+EnhARiglYkCBTaVwRwshu9GOZVmgYOKYlSiqfyzg+YSQFQQnDISOIfapai0zA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=gTaGgIyZQpN15m+1FITipwGU4WuNijGmYikobBtAq5M=; b=MFitj+DMvqWYD5BbixSfZ81zLirMfc4pPlw/X59NaYz6iqcvGLG8SmonjAcKk80oIbobGfu/g+gBKAnnSID70P0wIYMskvpFQs7GLyg17UfInsDCXaRoskGq2ZKlxJGXrU+wMFOHZK+wpZ7zfS48iNZT8a3FlLNjidV6QHzFrb6p89HMmCAOsKe35jqUcnxsEWWrZMjJ1FVx0OxPsC2RepZK0yB5xO1q/b0HSEdeghQ8obB11Uh8LRC4UB2ilUm/u8zYvSZ40g9rTkPRcnpise7hiaUNl8jgICzOj57s2Q4QY6PyqJYoXegcU1q1CHPB4cemdhtfVdWryZZ4CBbLQw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gTaGgIyZQpN15m+1FITipwGU4WuNijGmYikobBtAq5M=; b=I/Pcfd+WWbIdnzKmT3xxqn/uf/3DL5HyQUTanCDfDsMt+8aYHvdJzKzi8ZHYg1xzY0QbLR6+nX4hL3a6jMLPzJ14uT2/5k9bsmfP9aZXoh15zHAGQiDCbPfBXeH6LJH/vkJFdFVYS8OOAvlctrKcGdMa9w3tg6w2mrYq8dBiPo8KlS7gnpw0oXIQ/rX4hNI0Ey+atBRek/3PtGAISyORJpZctCtSEct+lrc2DnytXUJp0xowdgpLyvFkwgiKzu6TDIC/V8BnbAdZ372FzBNEO0jwJmAUYf7HMedeVhBZqOoRkDI6OJp/EBbxdxDThIxiRJ1QHJ+1VvfJqIW+FWiCiQ== Received: from OSZP286MB2173.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:186::5) by OS3P286MB1613.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:178::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7472.37; Wed, 17 Apr 2024 18:28:48 +0000 Received: from OSZP286MB2173.JPNP286.PROD.OUTLOOK.COM ([fe80::c2ed:24ae:fd4c:fee7]) by OSZP286MB2173.JPNP286.PROD.OUTLOOK.COM ([fe80::c2ed:24ae:fd4c:fee7%5]) with mapi id 15.20.7472.037; Wed, 17 Apr 2024 18:28:48 +0000 From: toqsxw@outlook.com To: ffmpeg-devel@ffmpeg.org Date: Thu, 18 Apr 2024 02:28:21 +0800 Message-ID: X-Mailer: git-send-email 2.44.0.windows.1 X-TMN: [rn6aKSootQET/WHsg4NXiYPVjU8wsR7q] X-ClientProxiedBy: SG2PR02CA0126.apcprd02.prod.outlook.com (2603:1096:4:188::11) To OSZP286MB2173.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:186::5) X-Microsoft-Original-Message-ID: <20240417182823.986-1-toqsxw@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: OSZP286MB2173:EE_|OS3P286MB1613:EE_ X-MS-Office365-Filtering-Correlation-Id: 21f0d278-7e72-48ff-1fbd-08dc5f0c38f7 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: mrUK+5ZxXCyEZkQmuP8CPMkT0l8cw6jHvc7ruiyX/tgMpwKX3A67Dqc4BwiJQVG5h5eZBiGv+6MBLly8YDABolwkafsr5zrwDbtf9j/4QiMIM7fPcJZi8MptAT4nO/Z1tK7iH4cV+5VW2IxBTfn6DUckgmweWxeq+8LHYNwJhIxYy8KLFqRVgcCps2hKgGBHYrQPCJU0CFuqPnr46CeZSbCvYhYpGQaohIuYZs44u5UjcmmwNdDWQB0R6K5Ojdl0Va/kOAeGcDRy+ov0XRNsJENOB6Wqz9vgjUSlHoWttdB5t7o9jm/V06B+OWZXYpTaNi5+ins//kdjim/4TJErag911TFtSZSuWZc3KmR+ccqupseCFjz/yRyAK4NEn6KDvC+g0X1P2gUIDqo93kI5ZGbz//X+Yl0JOQRpkeFglJcB/j1g9O0oqlqv0AoicpcDwLfzPySpSFYwNSk1v4q21SJit+4NR+sk3TajfRr0QglUHKoSXNet2OebwsYZQXGZJyXwMWZcEOAH/xH4/D6NK1TgtQco97P7e8Fpz3zyEuPAou8C2iA4qzy0dTldqgdFcrfNZ3ZRhrBDoH65FydfvVuYjiE3+LegocMZGMGa45sQAixqS44b210+oLJMlYt3 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: 06bvjoXxW0xTuozKuC+zOgRK/Cptgajj38v1+al3yLj8Ro0tTOfV0KT/A99skmCqgBBv7Ww67vhMDcXRb0uwVJsAkE3wA/TNfJXsnkD3qoni/C3FLTl2Zck7NoX71m59rmUHa7ZNiUOyPwrqWhHZvXE9QcVNP/KVce4JknejJbAJodudS3t+fgmAL5nAK+SVwLbBFKfDxAxCPITK5sjFDuw57Qi2bL2afl6upGQ5bKOd842bEIIcUxzwD7Qq9X4y0iGWqkh6qeYZ229vF+pgp7B4DWf0pfmTnvSpqtItUrCeZMbbPd1l6CTMYdaCO3wT954n8ldGivZrgWhqPHuuM2C0uXBa/lzZBHNH/vHdKDZGOkvqPczpCGYVoQv4EpXCRlgLXrur9swRfHGBVGzKFGqtGaU99842IT8gXQ+fnVB15OGA7GqyEWQtssvsuR01zDBd3FgGjqhZdwyv6yd7MeiBq4AIcyvbtbzL9ujZxVBDz9xsfaqCtbL6EDYnMKwG0ogHvU7S+o5yGQsgFWlfBXR45/eAIhjKsvL88uNE+JYKIRhO3dwjCboJ+46PjFlt8NDR1AGKuYya0IDemRI6NFr6ssbENJFBMfK+yQTu5GwLXT2gc+2j9veI+5Yi6xD9eZZF/WkFSX2UsHX8ba1jvJRxsxkqM1PWnM1Sve38YZipb/eDJSggqgQeXEwCL8gnFb4ZCcZiCoeeyU0bjerxGRKBzV1nWj+Hii/T3OHRbydhYUL2A31FVqS2ntswzugBo5gtWM9Z0eAgXRSipxSNUwbFjq1C2GP+1m9OIk71NC/Gmyh8yg/Fe4W3BOJFabjvt9QrHvB2K97n9Niak8bhzOOosH+d5fErZn45OMYSOyfjUI79xEx//vAchS/WoPOLnuW1o8GidVv8DvYa5OPAsqu+peQsfTnPW8Nosjue8tK2PZBr5r5b4sY6h6JYR1pZ0m57DObLXR3/twMS1seVd7erMwXSgfbmIhJsvNI6AWw7M9yBZ7gDPTqWo/CL9ZfFmVVkLBOCYHHMlzpQ497m7MupZ8oB8+1NxC7x1Dc6krmiJWUM1eonNlc9/JHIX475dAjcvFA+22TqlXfZwSVsb8CDwOkIlD6j0RFGC7U7CpekPU6O5IaJ/E8edaEFcx4VUrVapTIp0qHAvBYh5v9o/MwqrmNzaNDJfxmSokrgl2jZzaZeyWB+sxjtc5aWKkGAhvjGrwRQQLmVeOH9jGaubfur3Pkz2gDc93N7JKoaeC0= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 21f0d278-7e72-48ff-1fbd-08dc5f0c38f7 X-MS-Exchange-CrossTenant-AuthSource: OSZP286MB2173.JPNP286.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Apr 2024 18:28:48.1694 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: OS3P286MB1613 Subject: [FFmpeg-devel] [PATCH v3 1/3] avcodec/x86/vvc/vvcdsp_init: add put prototypes X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Cc: Wu Jianhua Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: BV+yc+TxPmZJ From: Wu Jianhua When we used the --disable-ssse3 --disable-optimizations options, the compiler would not skip the MC_LINKS like the compilation that enabled the optimization, so it would fail to find the function prototypes. Hence, this commit uses the same way to add prototypes for the functions as HEVC DSP. Signed-off-by: Wu Jianhua --- libavcodec/x86/vvc/vvcdsp_init.c | 35 +++++++++++++++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/libavcodec/x86/vvc/vvcdsp_init.c b/libavcodec/x86/vvc/vvcdsp_init.c index 23a3172c45..d9203f4d5f 100644 --- a/libavcodec/x86/vvc/vvcdsp_init.c +++ b/libavcodec/x86/vvc/vvcdsp_init.c @@ -30,9 +30,42 @@ #include "libavcodec/vvc/dsp.h" #include "libavcodec/x86/h26x/h2656dsp.h" +#define PUT_PROTOTYPE(name, depth, opt) \ +void ff_vvc_put_ ## name ## _ ## depth ## _##opt(int16_t *dst, const uint8_t *src, ptrdiff_t srcstride, int height, const int8_t *hf, const int8_t *vf, int width); + +#define PUT_PROTOTYPES(name, bitd, opt) \ + PUT_PROTOTYPE(name##2, bitd, opt) \ + PUT_PROTOTYPE(name##4, bitd, opt) \ + PUT_PROTOTYPE(name##8, bitd, opt) \ + PUT_PROTOTYPE(name##12, bitd, opt) \ + PUT_PROTOTYPE(name##16, bitd, opt) \ + PUT_PROTOTYPE(name##24, bitd, opt) \ + PUT_PROTOTYPE(name##32, bitd, opt) \ + PUT_PROTOTYPE(name##48, bitd, opt) \ + PUT_PROTOTYPE(name##64, bitd, opt) \ + PUT_PROTOTYPE(name##128, bitd, opt) + +#define PUT_BPC_PROTOTYPES(name, opt) \ + PUT_PROTOTYPES(name, 8, opt) \ + PUT_PROTOTYPES(name, 10, opt) \ + PUT_PROTOTYPES(name, 12, opt) + +#define PUT_TAP_PROTOTYPES(n, opt) \ + PUT_BPC_PROTOTYPES(n##tap_h, opt) \ + PUT_BPC_PROTOTYPES(n##tap_v, opt) \ + PUT_BPC_PROTOTYPES(n##tap_hv, opt) + +PUT_BPC_PROTOTYPES(pixels, sse4) +PUT_BPC_PROTOTYPES(pixels, avx2) + +PUT_TAP_PROTOTYPES(4, sse4) +PUT_TAP_PROTOTYPES(8, sse4) +PUT_TAP_PROTOTYPES(4, avx2) +PUT_TAP_PROTOTYPES(8, avx2) + #if ARCH_X86_64 #define FW_PUT(name, depth, opt) \ -static void ff_vvc_put_ ## name ## _ ## depth ## _##opt(int16_t *dst, const uint8_t *src, ptrdiff_t srcstride, \ +void ff_vvc_put_ ## name ## _ ## depth ## _##opt(int16_t *dst, const uint8_t *src, ptrdiff_t srcstride, \ int height, const int8_t *hf, const int8_t *vf, int width) \ { \ ff_h2656_put_## name ## _ ## depth ## _##opt(dst, 2 * MAX_PB_SIZE, src, srcstride, height, hf, vf, width); \