From patchwork Thu Mar 16 22:10:07 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Martin_Storsj=C3=B6?= X-Patchwork-Id: 2967 Delivered-To: ffmpegpatchwork@gmail.com Received: by 10.103.50.79 with SMTP id y76csp3226vsy; Thu, 16 Mar 2017 15:16:14 -0700 (PDT) X-Received: by 10.28.174.203 with SMTP id x194mr41624wme.85.1489702574047; Thu, 16 Mar 2017 15:16:14 -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 m196si481959wmg.8.2017.03.16.15.16.13; Thu, 16 Mar 2017 15:16:14 -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=@martin-st.20150623.gappssmtp.com; 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 401486882D9; Fri, 17 Mar 2017 00:15:51 +0200 (EET) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from mail-lf0-f48.google.com (mail-lf0-f48.google.com [209.85.215.48]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 7800B68833D for ; Fri, 17 Mar 2017 00:15:45 +0200 (EET) Received: by mail-lf0-f48.google.com with SMTP id z15so26279936lfd.1 for ; Thu, 16 Mar 2017 15:16:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=martin-st.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:in-reply-to:references; bh=9GHFxkgL6oQq6k6FsAPzmQdkSNJs6oyM2JlGpedNfnc=; b=y9RE1tfaexhycJGnGrdX5s8l+/pkcabP598o7fLWDgHxs/QyySF0cB/UbubbXXVgrp Nfw1dFEmQeGStsKAeniaxOJh9PY1pAhGqqruw9eQFYrKpmGq4GEbGogfT//XsVuQfjs2 FJ08TRjPc5vzap5/aOqC+FZ2irzvJzJzMQLM8hzTH5DEn2EzuJ5DeYy3HQqQ1j6CE5CA grcPQk53diNlsnrEm0q9i6tm2dSWiKq7OYwJxCAMjtXZcGvMddto4VQoLx+7TwXyXOZw j/4EM1HHso2NBqQdlHJ30guTj/xf3SuoyknRNT/UablwwpAsg6ae98ctvDHJmoBbbInJ QMLA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=9GHFxkgL6oQq6k6FsAPzmQdkSNJs6oyM2JlGpedNfnc=; b=jLrm8D6pG9NVm6duqlbFdrYRDfoRTMSVjdTnmbaWVzldZgaTIwYnAeg+N3M9B9MMkI +gZe9Gjk7+SrpWmti8OOEd0P/MMv+pckyX14vFHAUw/iWJC7f4NOdr4tK8/Q0qsXsx9i zO6KkyquLJiV6xvUqd1w+FupthvBq7xx1WHlmqdLU3U4Sqc2fuLlc3dVVY+xCjgIntsW CH7T2tDr85/4GV/mBfxQvU80q8XID8QnqCWmatuvyhropbertNNedliA5P0CsnunPOIf SVGxa2isbtsRvUgW9OFGionxd5tmet9bETqtVDd0cvD4a3CZD+fT4lEIld8l5+1DOTKW tBVA== X-Gm-Message-State: AFeK/H0bfa0vV2W/Kk5mFwNj3DCCFZnu5MJBcu5H8LarsYz8EYoC0McHsQX00YGMmEI/ew== X-Received: by 10.25.24.193 with SMTP id 62mr3382050lfy.12.1489702222835; Thu, 16 Mar 2017 15:10:22 -0700 (PDT) Received: from localhost.localdomain ([2001:470:28:852:10ad:e858:1f3b:5c2c]) by smtp.gmail.com with ESMTPSA id g3sm1124718lfe.34.2017.03.16.15.10.22 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 16 Mar 2017 15:10:22 -0700 (PDT) From: =?UTF-8?q?Martin=20Storsj=C3=B6?= To: ffmpeg-devel@ffmpeg.org Date: Fri, 17 Mar 2017 00:10:07 +0200 Message-Id: <1489702219-12643-2-git-send-email-martin@martin.st> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1489702219-12643-1-git-send-email-martin@martin.st> References: <1489702219-12643-1-git-send-email-martin@martin.st> Subject: [FFmpeg-devel] [PATCH 02/14] arm/aarch64: vp9itxfm: Skip loading the min_eob pointer when it won't be used 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" In the half/quarter cases where we don't use the min_eob array, defer loading the pointer until we know it will be needed. This is cherrypicked from libav commit 3a0d5e206d24d41d87a25ba16a79b2ea04c39d4c. --- libavcodec/aarch64/vp9itxfm_neon.S | 3 ++- libavcodec/arm/vp9itxfm_neon.S | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/libavcodec/aarch64/vp9itxfm_neon.S b/libavcodec/aarch64/vp9itxfm_neon.S index 2c3c002..3e5da08 100644 --- a/libavcodec/aarch64/vp9itxfm_neon.S +++ b/libavcodec/aarch64/vp9itxfm_neon.S @@ -1483,7 +1483,6 @@ function ff_vp9_idct_idct_32x32_add_neon, export=1 b.eq idct32x32_dc_add_neon movrel x10, idct_coeffs - movrel x12, min_eob_idct_idct_32, 2 mov x15, x30 @@ -1508,6 +1507,8 @@ function ff_vp9_idct_idct_32x32_add_neon, export=1 cmp w3, #135 b.le idct32x32_half_add_neon + movrel x12, min_eob_idct_idct_32, 2 + .irp i, 0, 8, 16, 24 add x0, sp, #(\i*64) .if \i > 0 diff --git a/libavcodec/arm/vp9itxfm_neon.S b/libavcodec/arm/vp9itxfm_neon.S index adc9896..6d4d765 100644 --- a/libavcodec/arm/vp9itxfm_neon.S +++ b/libavcodec/arm/vp9itxfm_neon.S @@ -889,8 +889,6 @@ function ff_vp9_\txfm1\()_\txfm2\()_16x16_add_neon, export=1 push {r4-r8,lr} .ifnc \txfm1\()_\txfm2,idct_idct vpush {q4-q7} -.else - movrel r8, min_eob_idct_idct_16 + 2 .endif @ Align the stack, allocate a temp buffer @@ -914,6 +912,8 @@ A and r7, sp, #15 ble idct16x16_quarter_add_neon cmp r3, #38 ble idct16x16_half_add_neon + + movrel r8, min_eob_idct_idct_16 + 2 .endif .irp i, 0, 4, 8, 12