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 6081647B96 for ; Fri, 3 Nov 2023 11:14:42 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 3892D68CD16; Fri, 3 Nov 2023 13:14:41 +0200 (EET) Received: from EUR04-DB3-obe.outbound.protection.outlook.com (mail-db3eur04olkn2012.outbound.protection.outlook.com [40.92.74.12]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2558C68CB91 for ; Fri, 3 Nov 2023 13:14:35 +0200 (EET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=CdugMTSktaccNZJ15lpP9R70dQR9KO072gQNlm/3v7/k+WcHJ1K5G7PbnXDIHcXqIUcnSVpQ3yknoPkx6nXVtaQiUmxv4Jnmd8WLb6IFVSWmU/KjsVukZcODdJIOEeJAz0n6uXGyvztq03oE0i2kD/LK/zWwcKJNAUpCZR+LwHk/vBQNwWVAglUmQu+EZEJT9tYLEenRnmI0k5DtC5zCggPpYA5F9KtQ9UdEBnRxD5MeDl3CCP5KD43NgGeDhEYrn1bZbXinFQZzxVrpxiF8mTYYUSI8TDlJsvP8ljaRYr2tFj4sKNlrcJmaePlnYl/sEpHd5xuiAlQ2t0Sed4/GVg== 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=xOlQbie4F3R/0FV1p9DMwfsRzTsGzxdPtnFXvaAcim4=; b=Oc6OYGQwU+fCXVntZPJ5/+qx5JNgz94rbOI+eOn3MDgyQFrjPcyv4rN0K9btQaq6OkKNeAEKaINdBnyIJ4+k+acZzX9q3UUFA8n03rLGE7K8BYjP4Wdejosi4CP4hd1RkWFbpjQpTDGbsqAyNc5kw0oLKthUkDKPEhG+wP2Swk5PMiVbp6YpkrNcl9xkYebXWW8ZlIp1zO3nJdMJ7Qyxzw7X5Zjr8bxp57JZcSX4KuRMdS8Kya4c+ZqLVYGqS8Ymwsv97UKuVr2U/07vv+riBTg01WaymFBfg6pu9jMLVdfd3JvmhES+xPLrFYxl1SoTrgNhJ/i9xdIVCCLXsIjmnQ== 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=xOlQbie4F3R/0FV1p9DMwfsRzTsGzxdPtnFXvaAcim4=; b=ZgkrENeAFzHB21WyPTDxN7hHgwVFks/K2dS3TSBbQsKjkOG1os1K1GsAkv95Thp2vb5Tqlu4uuPiJRXSqurJYGhNVNtEhX1uMOBoFJiG0FzIFX/haPQ8/euAo7Cuwyl/gycbZ/JxRqYPV2JnLlcvAPNzPyprNEXWpIPJ9ztL93T2dmg/6+i1pHvHlygeAUeiQWgU5XKGUZXqIggUb7ll+us76qWdehtL6bpmMQLNcmDqMewxzCnJu3zwXoj0vECgizR+55AaWfJaZmaXa5EAZ63RGcka6Ue302HRNWX9QRuoRORNKYJ+0q9T0JAGKuZI9ydVrkfoadEmgS9u6dixbA== Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) by AS8P250MB0235.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:37a::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6954.21; Fri, 3 Nov 2023 11:14:33 +0000 Received: from AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::f59c:9cff:a42d:bde]) by AS8P250MB0744.EURP250.PROD.OUTLOOK.COM ([fe80::f59c:9cff:a42d:bde%3]) with mapi id 15.20.6954.020; Fri, 3 Nov 2023 11:14:33 +0000 Message-ID: Date: Fri, 3 Nov 2023 12:15:53 +0100 User-Agent: Mozilla Thunderbird Content-Language: en-US To: ffmpeg-devel@ffmpeg.org References: From: Andreas Rheinhardt In-Reply-To: X-TMN: [FDifWDwmmEiWQNNJKKUHeu0BBiT8hb7KKckppisUOSY=] X-ClientProxiedBy: FR4P281CA0071.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:ce::6) To AS8P250MB0744.EURP250.PROD.OUTLOOK.COM (2603:10a6:20b:541::14) X-Microsoft-Original-Message-ID: <9ff7b325-7b93-4954-a754-3e1586b454e9@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: AS8P250MB0744:EE_|AS8P250MB0235:EE_ X-MS-Office365-Filtering-Correlation-Id: 2972899d-1df2-4226-b452-08dbdc5e0e89 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: OUX7YXTUaD5iOierNCpOeJu0eFKxpqsvZ/oxkIt9CnkytG4i9fbqNDs765XLP0G/gxEs/f3XEdGbuekCPnFwUMjbLazCEOMOflE3wozWwFnSi5XOf96kcVeXdyp0DPEx9tOZ2zHKiIFFY6iZtHxCBW4xMP/gODsU/gxe6AcaFfF/2qQoouTYcNsssZoD1IclkAeXnBpHIgktvEFDWdRuwLgPOmuCpmAMKeoXfml+9vvTnONtmRPgOTCkQ6o4QQtnPV6IUAfsc+XxfbHA/zl2wigtIVijFvSXpqQo+vU1mS+PZZpZJUkpQVo74YqgZoWsf/M/sMCE3ut25k26XfEnlYONYUQOYFnjrZvxfkL50F7jvvjXCEPH+T4c+v9zxKC14j8e+a+9TSdZDBWOhYQWWT/S2NXd4VGj6AgIvllx5dRlU0hyBrf+0nMqjRAKIN+JTpcm+Gcx77hK8nVblw/nsqIg4tWdviyZSF3C9ECXvcaJgDjqYdEBDt8tLoDL/3lX2xirH51S/Y+w25TME2uQFfghZm7pPWBl3/bp368bWgIifRbS386b+GY7X621W/8gfAMSPOm13P+3sblwDxSXCH0VJVk+9kLwWj94DH6NGdY= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?WlFXNXhndEsxU1c1RFpYUVRubXVGL0tnWDBKeUNzL1BWd1NraENRYmlpdnZC?= =?utf-8?B?d0N2OXN0QjFyS25HSnRzeThBaVpHTHlod3J2RGMwcjNKS1J5eC93UnU4b00y?= =?utf-8?B?NGdmcDUxNURaQmNLdmgxcjV2K3JXQ0lzb3VXU3d5SDNtQnVPNWFsM1dBTHp0?= =?utf-8?B?OU1xSFV1R3VPbndzaXc4aGJqbW92Y0t3NEZybVpNY0toZUh0RFBEZExxc2Q5?= =?utf-8?B?d3lvTjNtam1oVkNkN0VnMG5DY2VLTndEU3M2dFVtTWsyaTBkUEwvV216QUFL?= =?utf-8?B?REF2YWpZVmFiMEg1Q1JDdkFOeGxQaC91U2R0cmN5T1dYMGNFTGpFYWdsUS9G?= =?utf-8?B?c3VVVm1RS2JRN3JzdExjMmtBZldNSy9OMHVHNVpIZVJBbXFIRWE4d3ZMNEZ0?= =?utf-8?B?SG1DNUJLWjZlZHhISW1PdXJqNTZuRWZUeWI2dCtzWVE2QVMvbmNlSnVwVFpi?= =?utf-8?B?TVBnejJlTVlBaXpsTU8veFRFL0laYU5jbnFWb24xNTFuR0YrWGpteEwxMDV3?= =?utf-8?B?Z1oyS3NaTlZmdHRabjU3L2ZZdDFEZjJNZHNMYTBFV2hrazU0K29NUzdIMGVT?= =?utf-8?B?S3hFQ2NOay94WU9FRFduRkxzMkM0V0Z4TGo2SEx2NUV6cFNnNVRkMGR0d2Vj?= =?utf-8?B?QU9QNmF6dGhwNmpyVWJBWEpqdERxNDNMbEhBdjRKSkY3QkhVNWtrWTdXcnRy?= =?utf-8?B?WHU5dGlsMDU0SkFadEdtUUZ6c2tWYXRyb1lTU01uWjUwQlo0S21yaEVvRlRx?= =?utf-8?B?di9oU3AvOHR0L1FhelNQYjhrelp0L3RoZHNiUXJSNUtJbENBY1BiQkdnMmgx?= =?utf-8?B?VnBqUjlJcnlUbFR2TmtDYUl6MCtFenZ4VTdPbmlaRlVaS0pkdHRNL2ZWa1ZQ?= =?utf-8?B?WVkvdmxLZFhXNzR0QkxnSEdjUlJaVGZHQnlxMUc4QnYzMmdBa1k2TVFzT1VY?= =?utf-8?B?N0tyNEwrQlBRay8zdFZ1VFlLRzlzTEl5TmhaQUZpdlFIell6UWM3eTRoUjJV?= =?utf-8?B?U1d0RVpjKzl5TlZnQUMxcVpFclByL0JmdTYzU29CN000RzJDRGpxcXVRNVpa?= =?utf-8?B?YVMxbjRWRktJM2Nzell3YXE4T1VtOEVmQVllWVE1eGs4cFBJcDFIUFQ3bGhy?= =?utf-8?B?Yi9GdVE0Mk5IbXg5bHFtdkppTTR4QlJwY20xb0M3ZXhReXgvVHBITnIzZzZi?= =?utf-8?B?L2NMeUcvUlcwRVBzOWsyd0tsMi81OEhsc29IMndCNGRQT1JpSzNKRWVPcEdq?= =?utf-8?B?MHB6dzgxVjNjTmRtbVV3UnNIV2szN0VGVFBkT3JxSlEyc0FCNEphM3Z2a3Vk?= =?utf-8?B?dVcwUHN1QlV3QmxCNFljTCtqTlFRdTdQZUs4MDE2ZzVKUGJQMS9GUWN4SDdx?= =?utf-8?B?b3pDcmtTMk8zMktDd0xORlZyVkZ4ZzBtOVlIQ3lLaFlSRjlnRTJ4RFpROHho?= =?utf-8?B?akdoV3RmSnU4RXRCQ1VPMHpuajRESWRrZzg5MXh1cjZicDNBRVdCUlVhU0tD?= =?utf-8?B?RTZHMnBmZUFjOXdWQkRPeHRUaW9JZ2x1eFJtUDI4VnFLQTJrS0tLZDlleGFp?= =?utf-8?B?OG42QXdyTXhINjJYK0xsbE4wcDFaeVVLV0UzK2xMWVlZYTNRTGEzMzNBZm9T?= =?utf-8?B?RFUwMm1iZ3ArZjM4STNKaUt5YmdNOHdDbmdnbGZOVFNCR25JYm1TOFhDMldi?= =?utf-8?Q?nr7x3fgWrBjnq4hFFBK+?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2972899d-1df2-4226-b452-08dbdc5e0e89 X-MS-Exchange-CrossTenant-AuthSource: AS8P250MB0744.EURP250.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Nov 2023 11:14:33.5020 (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: AS8P250MB0235 Subject: Re: [FFmpeg-devel] [PATCH 1/4] avutil/x86/pixelutils: Empty MMX state in ff_pixelutils_sad_8x8_mmxext 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: > We currently mostly do not empty the MMX state in our MMX > DSP functions; instead we only do so before code that might > be using x87 code. This is a violation of the System V i386 ABI > (and maybe of other ABIs, too): > "The CPU shall be in x87 mode upon entry to a function. Therefore, > every function that uses the MMX registers is required to issue an > emms or femms instruction after using MMX registers, before returning > or calling another function." (See 2.2.1 in [1]) > This patch does not intend to change all these functions to abide > by the ABI; it only does so for ff_pixelutils_sad_8x8_mmxext, as this > function can by called by external users, because it is exported > via the pixelutils API. Without this, the following fragment will > assert (on x86/x64): > uint8_t src1[8 * 8], src2[8 * 8]; > av_pixelutils_sad_fn fn = av_pixelutils_get_sad_fn(3, 3, 0, NULL); > fn(src1, 8, src2, 8); > av_assert0_fpu(); > > [1]: https://raw.githubusercontent.com/wiki/hjl-tools/x86-psABI/intel386-psABI-1.1.pdf > > Signed-off-by: Andreas Rheinhardt > --- > libavutil/x86/pixelutils.asm | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/libavutil/x86/pixelutils.asm b/libavutil/x86/pixelutils.asm > index fbe9b45971..0bcccb51f5 100644 > --- a/libavutil/x86/pixelutils.asm > +++ b/libavutil/x86/pixelutils.asm > @@ -43,6 +43,7 @@ cglobal pixelutils_sad_8x8, 4,4,0, src1, stride1, src2, stride2 > lea src2q, [src2q + 2*stride2q] > %endrep > movd eax, m2 > + emms > RET > > ;------------------------------------------------------------------------------- Will apply this patchset 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".