From patchwork Wed Apr 24 11:24:12 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Lynne X-Patchwork-Id: 12889 Return-Path: X-Original-To: patchwork@ffaux-bg.ffmpeg.org Delivered-To: patchwork@ffaux-bg.ffmpeg.org Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by ffaux.localdomain (Postfix) with ESMTP id B2517449600 for ; Wed, 24 Apr 2019 14:24:19 +0300 (EEST) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 9235C6882D6; Wed, 24 Apr 2019 14:24:19 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from w4.tutanota.de (w4.tutanota.de [81.3.6.165]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 922126809C0 for ; Wed, 24 Apr 2019 14:24:13 +0300 (EEST) Received: from w2.tutanota.de (unknown [192.168.1.163]) by w4.tutanota.de (Postfix) with ESMTP id 77D2B1060146 for ; Wed, 24 Apr 2019 11:24:12 +0000 (UTC) Date: Wed, 24 Apr 2019 13:24:12 +0200 (CEST) From: Lynne To: Ffmpeg Devel Message-ID: MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH] x86/opusdsp: replace loads with shuffles 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 Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Has a slight speedup. Can't be carried over to aarch64, since it has no shufps-like instruction. From 6b09809a05c0d0bd916f7f6de5b205965bf4b69a Mon Sep 17 00:00:00 2001 From: Lynne Date: Wed, 24 Apr 2019 12:19:48 +0100 Subject: [PATCH] x86/opusdsp: replace loads with shuffles Has a slight speedup. Can't be carried over to aarch64, since it has no shufps-like instruction. --- libavcodec/x86/opusdsp.asm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/libavcodec/x86/opusdsp.asm b/libavcodec/x86/opusdsp.asm index 6c99821b89..f5d206a8b1 100644 --- a/libavcodec/x86/opusdsp.asm +++ b/libavcodec/x86/opusdsp.asm @@ -24,9 +24,6 @@ SECTION_RODATA ; 0.85..^1 0.85..^2 0.85..^3 0.85..^4 tab_st: dd 0x3f599a00, 0x3f38f671, 0x3f1d382a, 0x3f05a32f -tab_x0: dd 0x0, 0x3f599a00, 0x3f599a00, 0x3f599a00 -tab_x1: dd 0x0, 0x0, 0x3f38f671, 0x3f38f671 -tab_x2: dd 0x0, 0x0, 0x0, 0x3f1d382a SECTION .text @@ -45,9 +42,9 @@ cglobal opus_deemphasis, 4, 4, 8, out, in, coeff, len %endif movaps m4, [tab_st] - movaps m5, [tab_x0] - movaps m6, [tab_x1] - movaps m7, [tab_x2] + VBROADCASTSS m5, m4 + shufps m6, m4, m4, q1111 + shufps m7, m4, m4, q2222 .loop: movaps m1, [inq] ; x0, x1, x2, x3 -- 2.20.1