From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 71218473B0 for ; Wed, 6 Sep 2023 09:51:05 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id A5A0268C79E; Wed, 6 Sep 2023 12:51:04 +0300 (EEST) Received: from EUR05-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05olkn2039.outbound.protection.outlook.com [40.92.90.39]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id D903A68C230 for ; Wed, 6 Sep 2023 12:50:58 +0300 (EEST) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=AsPpGZSy1mYT8h/nYHEwP00uRsJRe6LgIOBHnr8jwPmAsvfI/ygONZPCkLJMyYbwnQGcDVovHCiKfqVJBLnVPG1c2ylanF5iYbix2esoPsb/HSJdnboR7xuH4C839XZKycUTyBKANLzU6kuGICNMteUstjdSuLvfRCwrW8G+0jCBldDs1s8jXLGfSU9RaBpVzNFYpHSjNlD1sTpZ27Q7F1W5ev67A/xezkqz3AMzifKIieUOUxkpbEUnBMy/3KDWkg+gomha5+8jpMXhxY+VY9V65WlTFIneaeiF07RRecX9pRt8n+DcIRM6mpezkQ562zE4Mol+N25H762IaRGCmA== 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=YODCoxPU3r0tFTOh4iMcDVNEbWq03lF+KPRp+y5f5nU=; b=HtjkXHnvOm64Sq/EFkaXsVj1POTRaJspGQ3f9d9YNKvp6IlQJD9aL6h9c7LAwp6Jyirs+l0R4Dx0ScPeTL6I5pmH4BwwR9kYniwUOxNdYmZqHR8wZ8c6qjKzcU1q3q8Cj6IQVxn0Ge90uo39KHXuBY0igpNFneTrkX9JiG3i8zqn7S7NklYhaMwKxQo8FuNKhdXEGDJZuoEjjdiORuiYlTPadUxZFo3uIg0cBwkA/qv9u6qj/m4SMy8mG9tdZGFoAjXX43V9iKf4lFM9n/ViwDn8STh/MhjuKX39mWEa//OzBSuzmBsocqVwHw26XRWi/ZmExzIfE/fvE0tFTCKoWQ== 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=YODCoxPU3r0tFTOh4iMcDVNEbWq03lF+KPRp+y5f5nU=; b=JRuFSg0g3bg2YTfc3IUAihtBHJ3dyKSiAdNPY+PPHi9WXEzhOqPyHc/BxOnPLn5bwW453ZS2krirLqTESUGDO/J4HHJu95jZY+aOD0AP/blgpPurPzQtH7DQFA6vElOMoDLcWWCVpZJwEs2clYnZAgci0SQy3TPGNoK1WlsrywAqczHJdj/F5qUD4eqxXGMD+3eCk+rVKMmR1P3NLfxiYe6yyQ+li/M3jomFTdw2gbO6dFCw4qzIwvpxL5z/qqTvTLkpSfzYOArls0NjLS+WQOUMkEZWnmZV5UkFTqu6evllPiIRaLvDUzhaFqOCaXoRi4FY930UKTCi00efskW50g== Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) by PR3P250MB0195.EURP250.PROD.OUTLOOK.COM (2603:10a6:102:17a::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6745.34; Wed, 6 Sep 2023 09:35:52 +0000 Received: from DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::e8dd:7fe1:2348:cd62]) by DU0P250MB0747.EURP250.PROD.OUTLOOK.COM ([fe80::e8dd:7fe1:2348:cd62%7]) with mapi id 15.20.6745.030; Wed, 6 Sep 2023 09:35:52 +0000 Message-ID: Date: Wed, 6 Sep 2023 11:37:10 +0200 Content-Language: en-US To: ffmpeg-devel@ffmpeg.org References: From: Andreas Rheinhardt In-Reply-To: X-TMN: [8zW7evy3ykwCtwoXd1+5twGSvjlzoqI3] X-ClientProxiedBy: FR0P281CA0132.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:97::14) To DU0P250MB0747.EURP250.PROD.OUTLOOK.COM (2603:10a6:10:3cb::16) X-Microsoft-Original-Message-ID: MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DU0P250MB0747:EE_|PR3P250MB0195:EE_ X-MS-Office365-Filtering-Correlation-Id: 55b47d2c-8cf8-4b69-01e2-08dbaebca919 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: WBILenMWMrm0GZi8YWeXcWZMORDu57WFvegcsMFFHih+Z1fjXYszKKFgF/SxFVB5F4DXm0+JftyJI11mGqUq7Df7YGaE1riwk6hkrQoQTSKsNpr3UgHKU3mIyJ3Av3wk4WKY+JOTRGdd4bczsnKweHNC1GB2Va5z3j9gqZ3dv1RfU+YFtIL+M3VH7/g25ImhKZwGJPiWb6E8fXsuWR316tU6V7eXMF2AxTOpTj1CMG9i3asMUZZgXXBq8S/YQqIApJT7x7AOVb/t5ZEcVR1Ud3HkZ2hrJuHM+BECxjfZmq2uPEAdcvyQ/lMRVQJQf1H8rJkkiL+QhsV8Ucxrr5y5ZBtOZlj6TIFU5A09RrmK92dUTAzqhS9Y6N/AOW3c90L24S9dJM2Tj6jDl9xPpNUlLPSeIL+YOQJ3rx3oyHbysdHvtSZZy/A6oywVcUonDKSlrKf4WxI0jADXpqpVPedFgMdJ8nUPnPxEs1k9LWSAOyCIMkcWIHSThUUCRn+OrEN/Af92WgyRJMeBVYRWBrd+wLHhsfrIOQob7+h66tEIbgTJEyjGq97DKFZBdvaVYq+F X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?NWRtMGpBQllvT28vcXlRY1FLQThnUVJOTGRqZWltMkE0VXRtWkh1THdJNzNi?= =?utf-8?B?MFhVbXpWaUhLemhqQmUxR2xxY0owNFdEMlpHNXdpSUN2MW9FV1dmcVhsTThs?= =?utf-8?B?MDZRRG9HSjFaMVVta2gzZHNKcW13cmw1N2s5TGdJWjhlM2xINWJ5UGhUOUl3?= =?utf-8?B?bmxsSVJKcEd0OU9QZ3MreGd4bTFMYnVVeEdKUVRvOGx4N0ZMRHNVZjU3V1ZQ?= =?utf-8?B?QWRHbzZOc2FpaWM0WUwvUnhxbVZLV28vZlN2SFM3UCtLUDE3L1Q2V05XTlJJ?= =?utf-8?B?SUVtaFVhN1VpakN4cnlvMEVTMEJ1MGtzZ2krRmduMEJBbVJ2Zy91cVhsYnZl?= =?utf-8?B?TWZObUNKNXI2cjZPUXVHUlFIaEIyR3psSzI4Yjg4NDFGZityTXZhR25tNWFq?= =?utf-8?B?QWkyWCthbUl2ek1tbVB6SWJZN3hTSlhydUdhamFsc1hURzV6bEtmdUFXd0Q1?= =?utf-8?B?NlptMm5xTmZaNHNpZGlYeU9xS05LNWh1MFFJenBwMUFTcnBaa2NCT3NQRTRt?= =?utf-8?B?Q080VUtSVlRORlNQRWs5ekN3dXd2ZFBHMEpHV3dKN2I3SUFuTUNtdjR6QVR0?= =?utf-8?B?aFpMcFhuU0xCZ1oyckJzdHd0R2NXR3BvdGZ1MGF4UFJqcDhBREpQcHM0VEpH?= =?utf-8?B?aGNzYUt3R0xNdGwzSUVBRWVWWnp4aUhYQmdxL1FHaFBsdW1KcmhQUTVCa3Bv?= =?utf-8?B?WFdTK0tFcDFPcy95Nm8zT2FITkFuVFNVcjVlQVA4QmJLUFVCL3RPWVg4VW1V?= =?utf-8?B?Vm5GYm1iVU4yNmE0Q1VBaFBQS1I2YnU2cnZvMUY4MHRtbVRNVW02U3FHTjJ2?= =?utf-8?B?eS9SSnpaWjYyMWtkTUo1R2c2cDlraGZnS1kxOC96TkJvUEtZOG85T3lQV2FF?= =?utf-8?B?VHZnOGhqTXA0ZVo1RE9WWkpqNUtNTHYxT1BrTDlvT09CMkNiSWxYc1BWTDFp?= =?utf-8?B?T2dERE9VOVN3VXdhczhtc2JVL0NsUWVGMFJxSHdDR0FVY3Bub2VUZEwva2wz?= =?utf-8?B?bERwdjgxdys4QW0xSGVWMFlrdERmd0l0V3lyOHpZREpmM1gvTGR2aEptQWMy?= =?utf-8?B?bTM3Zll5c3hwYTlWMElsckd1aklyMnBOWDBmRGV0djk3SmpQSno2MGxTcmtL?= =?utf-8?B?UFlWTFFRQXJBSytJVis5WXBEb2JUcHZvbWRBUjV0VWhjNHFSQmhXOGFLMjl5?= =?utf-8?B?VUdrTTlGVTZJaFlqWmFCSHVjeHVQTUlqcU9RNVhuYnozZkFPdHB3ZTlQbE1k?= =?utf-8?B?NkFTQnVMV3ozVERjVHVNQ2g5UjdtbkFsMG9XOUl5MXRqOTVpWU5oQ29BbHBj?= =?utf-8?B?MENVMldHeGsvQmhzRytKMEEwQ0pNU1I1dWcrMzYzdjMrcWpPWmQrblVvd0xO?= =?utf-8?B?b2tiOE5haFZ3Vm9IdEM1YW0vcXBGQXF5OHBWUDlBNSszSkcrdVNER2w2Wlhl?= =?utf-8?B?d3ZpeGI2TnBkckpzOE1VODdlT1JhRklONEV0d1JBa3AvcHBNaTBZTFIybTE5?= =?utf-8?B?dDByNzlRWG9iWXRCY2pRaVkvQnVUaWVWdS9vZ2xzRlVLdnI0OXY1VEFDR3pk?= =?utf-8?B?S3JKWHNFbFNaZFpZU08vSWV1V0FNa3FQL2lJRDhLQ2dScG41MWpHcFdpTldG?= =?utf-8?B?Q2lvK1RDT2k3Mm9tZnpibFJMQ0NIWWFPOWE0TmkyaDBzMHZTdEZoV2xMQlc2?= =?utf-8?Q?+1Q3TzMUTNnxBYoieleQ?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 55b47d2c-8cf8-4b69-01e2-08dbaebca919 X-MS-Exchange-CrossTenant-AuthSource: DU0P250MB0747.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 06 Sep 2023 09:35:51.9347 (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: PR3P250MB0195 Subject: Re: [FFmpeg-devel] [PATCH 2/2] avcodec/x86/hpeldsp_vp3: Merge into hpeldsp 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 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: Andreas Rheinhardt: > Once upon a time, 413abbe16465a7b49472ac110e42939e853e24a1 > added versions of some put_no_rnd_pixels functions for use > in VP3 and Theora (with an explicit check so that they are > only used for VP3 and Theora). When this was moved to hpeldsp > (from dsputil) in 3ced55d51c2e65b37e50d500dff88bcd80e01b9c, > the check was replaced by a check for the bitexact flag > (and a CONFIG_VP3_DECODER compile-time check), so that > these functions were now used for other codecs as well. > > Later commit 1dfc3cf89d0eb026af28be46294b85d79499ffb5 > split off the "VP3-specific bits into a separate file", > yet these bits were not really VP3-specific bits at all > any more. (The error was repeated in commit > 0a39c9ac0bfd7345fe676b4e2707d9cec3cbb553.) This commit > has not been reverted, because this would make future > changes from Libav (from where it originated) harder, > yet Libav is no more, so this commit effectively reverts > 1dfc3cf89d0eb026af28be46294b85d79499ffb5. > > Signed-off-by: Andreas Rheinhardt > --- > libavcodec/x86/Makefile | 2 - > libavcodec/x86/hpeldsp.asm | 77 ++++++++++++++++++++++++ > libavcodec/x86/hpeldsp.h | 4 -- > libavcodec/x86/hpeldsp_init.c | 14 +++-- > libavcodec/x86/hpeldsp_vp3.asm | 99 ------------------------------- > libavcodec/x86/hpeldsp_vp3_init.c | 43 -------------- > 6 files changed, 86 insertions(+), 153 deletions(-) > delete mode 100644 libavcodec/x86/hpeldsp_vp3.asm > delete mode 100644 libavcodec/x86/hpeldsp_vp3_init.c > > diff --git a/libavcodec/x86/Makefile b/libavcodec/x86/Makefile > index 118daca333..b4cc5e0d08 100644 > --- a/libavcodec/x86/Makefile > +++ b/libavcodec/x86/Makefile > @@ -75,7 +75,6 @@ OBJS-$(CONFIG_UTVIDEO_DECODER) += x86/utvideodsp_init.o > OBJS-$(CONFIG_V210_DECODER) += x86/v210-init.o > OBJS-$(CONFIG_V210_ENCODER) += x86/v210enc_init.o > OBJS-$(CONFIG_VORBIS_DECODER) += x86/vorbisdsp_init.o > -OBJS-$(CONFIG_VP3_DECODER) += x86/hpeldsp_vp3_init.o > OBJS-$(CONFIG_VP6_DECODER) += x86/vp6dsp_init.o > OBJS-$(CONFIG_VP9_DECODER) += x86/vp9dsp_init.o \ > x86/vp9dsp_init_10bpp.o \ > @@ -192,7 +191,6 @@ X86ASM-OBJS-$(CONFIG_UTVIDEO_DECODER) += x86/utvideodsp.o > X86ASM-OBJS-$(CONFIG_V210_ENCODER) += x86/v210enc.o > X86ASM-OBJS-$(CONFIG_V210_DECODER) += x86/v210.o > X86ASM-OBJS-$(CONFIG_VORBIS_DECODER) += x86/vorbisdsp.o > -X86ASM-OBJS-$(CONFIG_VP3_DECODER) += x86/hpeldsp_vp3.o > X86ASM-OBJS-$(CONFIG_VP6_DECODER) += x86/vp6dsp.o > X86ASM-OBJS-$(CONFIG_VP9_DECODER) += x86/vp9intrapred.o \ > x86/vp9intrapred_16bpp.o \ > diff --git a/libavcodec/x86/hpeldsp.asm b/libavcodec/x86/hpeldsp.asm > index 7a2b7135d8..3bc278618c 100644 > --- a/libavcodec/x86/hpeldsp.asm > +++ b/libavcodec/x86/hpeldsp.asm > @@ -165,6 +165,47 @@ cglobal put_no_rnd_pixels8_x2, 4,5 > RET > > > +; void ff_put_no_rnd_pixels8_x2_exact(uint8_t *block, const uint8_t *pixels, ptrdiff_t line_size, int h) > +INIT_MMX mmxext > +cglobal put_no_rnd_pixels8_x2_exact, 4,5 > + lea r4, [r2*3] > + pcmpeqb m6, m6 > +.loop: > + mova m0, [r1] > + mova m2, [r1+r2] > + mova m1, [r1+1] > + mova m3, [r1+r2+1] > + pxor m0, m6 > + pxor m2, m6 > + pxor m1, m6 > + pxor m3, m6 > + PAVGB m0, m1 > + PAVGB m2, m3 > + pxor m0, m6 > + pxor m2, m6 > + mova [r0], m0 > + mova [r0+r2], m2 > + mova m0, [r1+r2*2] > + mova m1, [r1+r2*2+1] > + mova m2, [r1+r4] > + mova m3, [r1+r4+1] > + pxor m0, m6 > + pxor m1, m6 > + pxor m2, m6 > + pxor m3, m6 > + PAVGB m0, m1 > + PAVGB m2, m3 > + pxor m0, m6 > + pxor m2, m6 > + mova [r0+r2*2], m0 > + mova [r0+r4], m2 > + lea r1, [r1+r2*4] > + lea r0, [r0+r2*4] > + sub r3d, 4 > + jg .loop > + RET > + > + > ; void ff_put_pixels8_y2(uint8_t *block, const uint8_t *pixels, ptrdiff_t line_size, int h) > %macro PUT_PIXELS8_Y2 0 > %if cpuflag(sse2) > @@ -235,6 +276,42 @@ cglobal put_no_rnd_pixels8_y2, 4,5 > RET > > > +; void ff_put_no_rnd_pixels8_y2_exact(uint8_t *block, const uint8_t *pixels, ptrdiff_t line_size, int h) > +INIT_MMX mmxext > +cglobal put_no_rnd_pixels8_y2_exact, 4,5 > + lea r4, [r2*3] > + mova m0, [r1] > + pcmpeqb m6, m6 > + add r1, r2 > + pxor m0, m6 > +.loop: > + mova m1, [r1] > + mova m2, [r1+r2] > + pxor m1, m6 > + pxor m2, m6 > + PAVGB m0, m1 > + PAVGB m1, m2 > + pxor m0, m6 > + pxor m1, m6 > + mova [r0], m0 > + mova [r0+r2], m1 > + mova m1, [r1+r2*2] > + mova m0, [r1+r4] > + pxor m1, m6 > + pxor m0, m6 > + PAVGB m2, m1 > + PAVGB m1, m0 > + pxor m2, m6 > + pxor m1, m6 > + mova [r0+r2*2], m2 > + mova [r0+r4], m1 > + lea r1, [r1+r2*4] > + lea r0, [r0+r2*4] > + sub r3d, 4 > + jg .loop > + RET > + > + > ; void ff_avg_pixels8_x2(uint8_t *block, const uint8_t *pixels, ptrdiff_t line_size, int h) > %macro AVG_PIXELS8_X2 0 > %if cpuflag(sse2) > diff --git a/libavcodec/x86/hpeldsp.h b/libavcodec/x86/hpeldsp.h > index fd740da72e..ac7e625fda 100644 > --- a/libavcodec/x86/hpeldsp.h > +++ b/libavcodec/x86/hpeldsp.h > @@ -22,8 +22,6 @@ > #include > #include > > -#include "libavcodec/hpeldsp.h" > - > void ff_avg_pixels8_x2_mmx(uint8_t *block, const uint8_t *pixels, > ptrdiff_t line_size, int h); > > @@ -50,6 +48,4 @@ void ff_put_pixels16_xy2_sse2(uint8_t *block, const uint8_t *pixels, > void ff_put_pixels16_xy2_ssse3(uint8_t *block, const uint8_t *pixels, > ptrdiff_t line_size, int h); > > -void ff_hpeldsp_vp3_init_x86(HpelDSPContext *c, int cpu_flags, int flags); > - > #endif /* AVCODEC_X86_HPELDSP_H */ > diff --git a/libavcodec/x86/hpeldsp_init.c b/libavcodec/x86/hpeldsp_init.c > index 09c48c341e..f08c66f5c8 100644 > --- a/libavcodec/x86/hpeldsp_init.c > +++ b/libavcodec/x86/hpeldsp_init.c > @@ -22,8 +22,6 @@ > * MMX optimization by Nick Kurshev > */ > > -#include "config_components.h" > - > #include "libavutil/attributes.h" > #include "libavutil/cpu.h" > #include "libavutil/x86/cpu.h" > @@ -47,10 +45,16 @@ void ff_avg_pixels16_y2_sse2(uint8_t *block, const uint8_t *pixels, > ptrdiff_t line_size, int h); > void ff_put_no_rnd_pixels8_x2_mmxext(uint8_t *block, const uint8_t *pixels, > ptrdiff_t line_size, int h); > +void ff_put_no_rnd_pixels8_x2_exact_mmxext(uint8_t *block, > + const uint8_t *pixels, > + ptrdiff_t line_size, int h); > void ff_put_pixels8_y2_mmxext(uint8_t *block, const uint8_t *pixels, > ptrdiff_t line_size, int h); > void ff_put_no_rnd_pixels8_y2_mmxext(uint8_t *block, const uint8_t *pixels, > ptrdiff_t line_size, int h); > +void ff_put_no_rnd_pixels8_y2_exact_mmxext(uint8_t *block, > + const uint8_t *pixels, > + ptrdiff_t line_size, int h); > void ff_avg_pixels8_x2_mmxext(uint8_t *block, const uint8_t *pixels, > ptrdiff_t line_size, int h); > void ff_avg_pixels8_y2_mmxext(uint8_t *block, const uint8_t *pixels, > @@ -183,6 +187,9 @@ static void hpeldsp_init_mmxext(HpelDSPContext *c, int flags) > c->avg_pixels_tab[1][2] = ff_avg_pixels8_y2_mmxext; > c->avg_pixels_tab[1][3] = ff_avg_pixels8_xy2_mmxext; > > + c->put_no_rnd_pixels_tab[1][1] = ff_put_no_rnd_pixels8_x2_exact_mmxext; > + c->put_no_rnd_pixels_tab[1][2] = ff_put_no_rnd_pixels8_y2_exact_mmxext; > + > if (!(flags & AV_CODEC_FLAG_BITEXACT)) { > c->put_no_rnd_pixels_tab[0][1] = put_no_rnd_pixels16_x2_mmxext; > c->put_no_rnd_pixels_tab[0][2] = put_no_rnd_pixels16_y2_mmxext; > @@ -235,7 +242,4 @@ av_cold void ff_hpeldsp_init_x86(HpelDSPContext *c, int flags) > > if (EXTERNAL_SSSE3(cpu_flags)) > hpeldsp_init_ssse3(c, flags); > - > - if (CONFIG_VP3_DECODER) > - ff_hpeldsp_vp3_init_x86(c, cpu_flags, flags); > } > diff --git a/libavcodec/x86/hpeldsp_vp3.asm b/libavcodec/x86/hpeldsp_vp3.asm > deleted file mode 100644 > index e580133e45..0000000000 > --- a/libavcodec/x86/hpeldsp_vp3.asm > +++ /dev/null > @@ -1,99 +0,0 @@ > -;****************************************************************************** > -;* SIMD-optimized halfpel functions for VP3 > -;* > -;* This file is part of FFmpeg. > -;* > -;* FFmpeg is free software; you can redistribute it and/or > -;* modify it under the terms of the GNU Lesser General Public > -;* License as published by the Free Software Foundation; either > -;* version 2.1 of the License, or (at your option) any later version. > -;* > -;* FFmpeg is distributed in the hope that it will be useful, > -;* but WITHOUT ANY WARRANTY; without even the implied warranty of > -;* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > -;* Lesser General Public License for more details. > -;* > -;* You should have received a copy of the GNU Lesser General Public > -;* License along with FFmpeg; if not, write to the Free Software > -;* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA > -;****************************************************************************** > - > -%include "libavutil/x86/x86util.asm" > - > -SECTION .text > - > -; void ff_put_no_rnd_pixels8_x2_exact(uint8_t *block, const uint8_t *pixels, ptrdiff_t line_size, int h) > -INIT_MMX mmxext > -cglobal put_no_rnd_pixels8_x2_exact, 4,5 > - lea r4, [r2*3] > - pcmpeqb m6, m6 > -.loop: > - mova m0, [r1] > - mova m2, [r1+r2] > - mova m1, [r1+1] > - mova m3, [r1+r2+1] > - pxor m0, m6 > - pxor m2, m6 > - pxor m1, m6 > - pxor m3, m6 > - PAVGB m0, m1 > - PAVGB m2, m3 > - pxor m0, m6 > - pxor m2, m6 > - mova [r0], m0 > - mova [r0+r2], m2 > - mova m0, [r1+r2*2] > - mova m1, [r1+r2*2+1] > - mova m2, [r1+r4] > - mova m3, [r1+r4+1] > - pxor m0, m6 > - pxor m1, m6 > - pxor m2, m6 > - pxor m3, m6 > - PAVGB m0, m1 > - PAVGB m2, m3 > - pxor m0, m6 > - pxor m2, m6 > - mova [r0+r2*2], m0 > - mova [r0+r4], m2 > - lea r1, [r1+r2*4] > - lea r0, [r0+r2*4] > - sub r3d, 4 > - jg .loop > - RET > - > - > -; void ff_put_no_rnd_pixels8_y2_exact(uint8_t *block, const uint8_t *pixels, ptrdiff_t line_size, int h) > -INIT_MMX mmxext > -cglobal put_no_rnd_pixels8_y2_exact, 4,5 > - lea r4, [r2*3] > - mova m0, [r1] > - pcmpeqb m6, m6 > - add r1, r2 > - pxor m0, m6 > -.loop: > - mova m1, [r1] > - mova m2, [r1+r2] > - pxor m1, m6 > - pxor m2, m6 > - PAVGB m0, m1 > - PAVGB m1, m2 > - pxor m0, m6 > - pxor m1, m6 > - mova [r0], m0 > - mova [r0+r2], m1 > - mova m1, [r1+r2*2] > - mova m0, [r1+r4] > - pxor m1, m6 > - pxor m0, m6 > - PAVGB m2, m1 > - PAVGB m1, m0 > - pxor m2, m6 > - pxor m1, m6 > - mova [r0+r2*2], m2 > - mova [r0+r4], m1 > - lea r1, [r1+r2*4] > - lea r0, [r0+r2*4] > - sub r3d, 4 > - jg .loop > - RET > diff --git a/libavcodec/x86/hpeldsp_vp3_init.c b/libavcodec/x86/hpeldsp_vp3_init.c > deleted file mode 100644 > index 1dbd1ba6f9..0000000000 > --- a/libavcodec/x86/hpeldsp_vp3_init.c > +++ /dev/null > @@ -1,43 +0,0 @@ > -/* > - * This file is part of FFmpeg. > - * > - * FFmpeg is free software; you can redistribute it and/or > - * modify it under the terms of the GNU Lesser General Public > - * License as published by the Free Software Foundation; either > - * version 2.1 of the License, or (at your option) any later version. > - * > - * FFmpeg is distributed in the hope that it will be useful, > - * but WITHOUT ANY WARRANTY; without even the implied warranty of > - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > - * Lesser General Public License for more details. > - * > - * You should have received a copy of the GNU Lesser General Public > - * License along with FFmpeg; if not, write to the Free Software > - * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA > - */ > - > -#include "libavutil/attributes.h" > -#include "libavutil/cpu.h" > -#include "libavutil/x86/cpu.h" > - > -#include "libavcodec/avcodec.h" > -#include "libavcodec/hpeldsp.h" > - > -#include "hpeldsp.h" > - > -void ff_put_no_rnd_pixels8_x2_exact_mmxext(uint8_t *block, > - const uint8_t *pixels, > - ptrdiff_t line_size, int h); > -void ff_put_no_rnd_pixels8_y2_exact_mmxext(uint8_t *block, > - const uint8_t *pixels, > - ptrdiff_t line_size, int h); > - > -av_cold void ff_hpeldsp_vp3_init_x86(HpelDSPContext *c, int cpu_flags, int flags) > -{ > - if (EXTERNAL_MMXEXT(cpu_flags)) { > - if (flags & AV_CODEC_FLAG_BITEXACT) { > - c->put_no_rnd_pixels_tab[1][1] = ff_put_no_rnd_pixels8_x2_exact_mmxext; > - c->put_no_rnd_pixels_tab[1][2] = ff_put_no_rnd_pixels8_y2_exact_mmxext; > - } > - } > -} Will apply this tomorrow unless there are objections. - Andreas _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe".