From patchwork Mon Jun 19 15:11:02 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: James Darnley X-Patchwork-Id: 4041 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.22.4 with SMTP id 4csp961628vsw; Mon, 19 Jun 2017 08:23:42 -0700 (PDT) X-Received: by 10.223.183.11 with SMTP id l11mr15821867wre.115.1497885822781; Mon, 19 Jun 2017 08:23:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1497885822; cv=none; d=google.com; s=arc-20160816; b=XowPo+x27Gnj6NAuBiLy9VlbaVBOh2hgbXVEirOlO/gwCSc37dsBSB4TulOo+eHkmz eYpJdoLBzU4sh9efm8gZeUAtm2KgVfWKr7NomcW0IbX6y4KY/xaNMC6wiUwrDAQRoEMi nSRXCftDt4LFDh8Ob3k/9hUmiLcVBiIPvGR2b2FrbZAezXOA22mjZNMQciyzzMVQWHAO MZDJNfXNASul3Ygr8l+KKs6RbOKLiMI7p0KiKwJSADAFBjlTwZvAfwh0/dWPjs8L7JMG Zu0LOGWyrk7rTQJtQJRoQC/6wUSNhEm1heYfh4ZxzdgqJ86HDY8wyqpu/Z9t4rB7h4O8 ZG2Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:references:in-reply-to:message-id:date :to:from:dkim-signature:delivered-to:arc-authentication-results; bh=laJY3+lkp+wgJY3EG7Xzakx3zJRlbV+Te0HLZN7gvCM=; b=hrYmMaGrGsYmfOVqMUzXNb1/Rr3KAcQi1ExKtjsoMDgZ7bKgyiEFhzeIwkHVadQeTQ 7zswlVV1uNIr0zdJDWfQdTZALq0CvvYlPt5FOb5mzNwuN3J9qgbWUSyZa2pcD4j9CL5Z V0Af4hW/TSTD0IEeq1koX0L4n2E69Q8BGoaKKG6LuIPkaNxFKlpehWJdJo90ZaKWl33W lpm+2zBgk39DCJl2Qa/tQkg2G+aQDe77aQ2QV4ejjokZY8dbC2sVq3aah9yo/zybKx8q pWjz0cssl8BUZDl9Icu6WgJ2y7BR3JwA7eMo0/JxVZ47n+R7CTdiWJ1qFy9zCFAXG21E j2hQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@ob-encoder-com.20150623.gappssmtp.com header.b=AUPBAuBa; 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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id o21si10182917wro.277.2017.06.19.08.23.42; Mon, 19 Jun 2017 08:23:42 -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=@ob-encoder-com.20150623.gappssmtp.com header.b=AUPBAuBa; 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 Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id E45B968A508; Mon, 19 Jun 2017 18:23:34 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-wm0-f65.google.com (mail-wm0-f65.google.com [74.125.82.65]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 2688068A4D5 for ; Mon, 19 Jun 2017 18:23:28 +0300 (EEST) Received: by mail-wm0-f65.google.com with SMTP id d64so17063952wmf.2 for ; Mon, 19 Jun 2017 08:23:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ob-encoder-com.20150623.gappssmtp.com; s=20150623; h=sender:from:to:subject:date:message-id:in-reply-to:references; bh=IjIo8M+Kw/T4SSAICljvGNtesb4AEWR+T0gZ7u/muts=; b=AUPBAuBam3IBxG7IVObMvjtwowdODG8BEL/cgVYKle9MePWJWytmHviwBuxWmVoXSk TdaQ3cy0j2qwJLUfmWeZEENiNg7m47FNnHH1/AkfuByeOCa4InKp2OUzBPNd98wghC7t 0esS+tNmVTlj53m5qwyOV4H7CvzELOKQoFLp/LAQ5ai96Rt2ER8xijxfGWlqFjZt7f9W P0QHwvp+JVlj9yWgNQdMGNE8WI8eOmQtk6Oa1v9y97vkjnj1guNrsLV/ZNgu+ICn8Rjt mmvbGS9zG/WUgJs37M1Stgo+rAlV1J9pv10L3xZH1Db6D0RZW/lYzsIyKQjjf4G9iIkn QmUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:subject:date:message-id :in-reply-to:references; bh=IjIo8M+Kw/T4SSAICljvGNtesb4AEWR+T0gZ7u/muts=; b=S35ZIfgGjjyx9h1r9He849GVHx/vfw1DWdHk4UMEg0wKSbpapLj8wdi4Dlm0oSp39n 3kQKFFcPj+SXsjJLll/3gkSfdkTlD7ZhjKNE0Xk6hhQQuTBeovb+Fusw6ndt+KfYaRiB K0doGBH4EwPXwPQ4CwVe/vV3YXwHUFYcqf8ZnMc1J0GpQIzjyDetTeUYgQK/mURJ3shZ NSccFyjg26JAQGaEhW5NgN/atYsM6V3BtBM+g867rxVU64v4b3PKYa6P2mrUEw3dqG+l k7m1xUeKPj0hJWBMHn5bWnY3+gQYasE+TdPMyAJcQ4anSY4HbhFS2kMnYneud5tahbEG iSFw== X-Gm-Message-State: AKS2vOxvDlv0Z8Jubl3XXINLKnbYiUrWblNHTItOzHosWZIpt8qPrHSJ 0NdO76YEmrelZpQAqkg= X-Received: by 10.28.8.19 with SMTP id 19mr15409055wmi.18.1497885464382; Mon, 19 Jun 2017 08:17:44 -0700 (PDT) Received: from Ifrit.systemlords.lan (d51a44418.access.telenet.be. [81.164.68.24]) by smtp.gmail.com with ESMTPSA id 6sm8059540wrg.61.2017.06.19.08.17.43 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 19 Jun 2017 08:17:44 -0700 (PDT) From: James Darnley To: FFmpeg development discussions and patches Date: Mon, 19 Jun 2017 17:11:02 +0200 Message-Id: <20170619151104.31273-10-jdarnley@obe.tv> X-Mailer: git-send-email 2.13.1 In-Reply-To: <20170619151104.31273-1-jdarnley@obe.tv> References: <20170619151104.31273-1-jdarnley@obe.tv> Subject: [FFmpeg-devel] [PATCH 09/11] avcodec/x86: allow future 8-bit simple idct to have "DC only hack" X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.20 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 MIME-Version: 1.0 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Created by Ronald S. Bultje --- libavcodec/x86/simple_idct10_template.asm | 38 +++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/libavcodec/x86/simple_idct10_template.asm b/libavcodec/x86/simple_idct10_template.asm index d8ea0bcc6b..51baf84c82 100644 --- a/libavcodec/x86/simple_idct10_template.asm +++ b/libavcodec/x86/simple_idct10_template.asm @@ -257,6 +257,44 @@ pmullw m12,[%8+96] IDCT_1D %1, %2, %8 +%elif %2 == 11 + por m1, m8, m13 + por m1, m12 + por m1, [blockq+ 16] ; { row[1] }[0-7] + por m1, [blockq+ 48] ; { row[3] }[0-7] + por m1, [blockq+ 80] ; { row[5] }[0-7] + por m1, [blockq+112] ; { row[7] }[0-7] + pxor m2, m2 + pcmpeqw m1, m2 + psllw m2, m10, 3 + pand m2, m1 + pcmpeqb m3, m3 + pxor m1, m3 + mova [rsp], m1 + mova [rsp+16], m2 + + IDCT_1D %1, %2 + + mova m5, [rsp] + mova m6, [rsp+16] + pand m8, m5 + por m8, m6 + pand m0, m5 + por m0, m6 + pand m1, m5 + por m1, m6 + pand m2, m5 + por m2, m6 + pand m4, m5 + por m4, m6 + pand m11, m5 + por m11, m6 + pand m9, m5 + por m9, m6 + pand m10, m5 + por m10, m6 + pand m3, m5 + por m3, m6 %else IDCT_1D %1, %2 %endif