From patchwork Sun Apr 26 19:44:19 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: =?utf-8?q?FR=C3=89D=C3=89RIC_RECOULES?= X-Patchwork-Id: 19281 Delivered-To: andriy.gelman@gmail.com Received: by 2002:a25:3c87:0:0:0:0:0 with SMTP id j129csp2228210yba; Sun, 26 Apr 2020 12:45:31 -0700 (PDT) X-Google-Smtp-Source: APiQypIZYFJuSepZKzSRMXx9kK1xL9iZxfTxSMaoQFZucZY85FhjjBwylMttQ6/roHD6tlHRElWT X-Received: by 2002:a7b:c7d6:: with SMTP id z22mr23675508wmk.73.1587930330884; Sun, 26 Apr 2020 12:45:30 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587930330; cv=none; d=google.com; s=arc-20160816; b=julTwKZRsBceM+VZwiJYf/W7wHFc81Xk+epGPT8Uci4PqIRQ/hMoGWgtduGMe7S3Ea G5g0n7SPlj409tJXxj0eGFTFb0A49Gxwwy25Oy6OGPwdbzf3uG9feKMQVP3mC3LfoZCN jiv/TZDO4jR83/m7Zy9URyXaspgM6sSXcaaEt68YNE1PsB20fpxqTSiSn+yiKZ30OC/N 4WlUgzeyzG0DGhv0/6AMF9HRaVrv2K/6dt254Rg6ZBzWMeSYOckgBGJFdT+9NosmcBd6 e8TjggMPNfMQd0sfCQ3hDzhtyil3WG8Slbb/6jgh7eR5TU7cwcKy3U7iWvveEJim2zTQ ZGTQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:cc:reply-to :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:mime-version:references:in-reply-to :message-id:date:to:from:delivered-to; bh=H0C6uhLaazY/wwRgyTUGGSimElPhr3zBkaKvDTpJLy0=; b=LT5SUS7CGcwj7zq5DtiojlM24hM8LCb5RTvI0Kkrmo4eZ8L+wMMMk/9ZKM2N2GeU2V +PIfVtFuCIrwe4kMTcpSrV0XAcUY38ktYWFapfC41JWhFKmmxxKgCVp8NArKIFB86F/8 WPLvQyo+/tpgck3eg6SsaSH+1aY5HMvUaBfsNZB7Z+ATOVXZWMpYUYtoK8UsZsXM+2k1 a9HWactguWRU6SN/BohpgQEWT47FgJ5y/TGCnHsPH26RpDt7V4HGunWt20xV/D+LqLTM 6N9UgeMdLhShceyKhMxNPNu5+LOkocq6kSG21HbnTtozWOhYDt1AnxqD7FiTLASgp7WD U+Hw== ARC-Authentication-Results: i=1; mx.google.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 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org. [79.124.17.100]) by mx.google.com with ESMTP id l13si12579731wrn.230.2020.04.26.12.45.30; Sun, 26 Apr 2020 12:45:30 -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; 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 4A71F68C6AE; Sun, 26 Apr 2020 22:45:17 +0300 (EEST) X-Original-To: ffmpeg-devel@ffmpeg.org Delivered-To: ffmpeg-devel@ffmpeg.org Received: from smtp.smtpout.orange.fr (smtp03.smtpout.orange.fr [80.12.242.125]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 0859768C6A8 for ; Sun, 26 Apr 2020 22:45:10 +0300 (EEST) Received: from is232189.intra.cea.fr ([46.193.2.18]) by mwinf5d50 with ME id XXkk220050PJwDa03XlAHg; Sun, 26 Apr 2020 21:45:10 +0200 X-ME-Helo: is232189.intra.cea.fr X-ME-Auth: ZnJlZGVyaWMucmVjb3VsZXNAb3JhbmdlLmZy X-ME-Date: Sun, 26 Apr 2020 21:45:10 +0200 X-ME-IP: 46.193.2.18 From: frederic.recoules@univ-grenoble-alpes.fr To: ffmpeg-devel@ffmpeg.org Date: Sun, 26 Apr 2020 21:44:19 +0200 Message-Id: <20200422174918.7290-9-frederic.recoules@univ-grenoble-alpes.fr> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200422174918.7290-1-frederic.recoules@univ-grenoble-alpes.fr> References: <20200422174918.7290-1-frederic.recoules@univ-grenoble-alpes.fr> MIME-Version: 1.0 Subject: [FFmpeg-devel] [PATCH 09/14] [inline assembly] add memory to mpegvideoenc 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 Cc: =?utf-8?q?Fr=C3=A9d=C3=A9ric_Recoules?= Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" X-TUID: fkuligYOZVk8 Content-Length: 4851 From: Frédéric Recoules --- libavcodec/x86/mpegvideoenc_qns_template.c | 4 ++-- libavcodec/x86/mpegvideoencdsp_init.c | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/libavcodec/x86/mpegvideoenc_qns_template.c b/libavcodec/x86/mpegvideoenc_qns_template.c index 96325fd8f8..f1728de01e 100644 --- a/libavcodec/x86/mpegvideoenc_qns_template.c +++ b/libavcodec/x86/mpegvideoenc_qns_template.c @@ -70,7 +70,7 @@ static int DEF(try_8x8basis)(int16_t rem[64], int16_t weight[64], int16_t basis[ : "+r" (i) : "r"(basis), "r"(rem), "r"(weight), "g"(scale) COMMA_SET_RND_IN - MMX_CLOBBERS_ONLY("mm0", "mm1", "mm5", "mm7" + : "memory" MMX_CLOBBERS(, "mm0", "mm1", "mm5", "mm7" SET_RND_CLOBBER(, "mm6")) ); return i; @@ -102,7 +102,7 @@ static void DEF(add_8x8basis)(int16_t rem[64], int16_t basis[64], int scale) : "+r" (i) : "r"(basis), "r"(rem), "g"(scale) COMMA_SET_RND_IN - MMX_CLOBBERS_ONLY("mm0", "mm1", "mm5" + : "memory" MMX_CLOBBERS(, "mm0", "mm1", "mm5" SET_RND_CLOBBER(, "mm6")) ); }else{ diff --git a/libavcodec/x86/mpegvideoencdsp_init.c b/libavcodec/x86/mpegvideoencdsp_init.c index 8430ec62ea..4914f3a96b 100644 --- a/libavcodec/x86/mpegvideoencdsp_init.c +++ b/libavcodec/x86/mpegvideoencdsp_init.c @@ -146,7 +146,7 @@ static void draw_edges_mmx(uint8_t *buf, int wrap, int width, int height, : "+r" (ptr) : "r" ((x86_reg) wrap), "r" ((x86_reg) width), "r" (ptr + wrap * height) - MMX_CLOBBERS_ONLY("mm0", "mm1") ); + : "memory" MMX_CLOBBERS(, "mm0", "mm1") ); } else if (w == 16) { __asm__ volatile ( "1: \n\t" @@ -167,7 +167,7 @@ static void draw_edges_mmx(uint8_t *buf, int wrap, int width, int height, "jb 1b \n\t" : "+r"(ptr) : "r"((x86_reg)wrap), "r"((x86_reg)width), "r"(ptr + wrap * height) - MMX_CLOBBERS_ONLY("mm0", "mm1") ); + : "memory" MMX_CLOBBERS(, "mm0", "mm1") ); } else { av_assert1(w == 4); __asm__ volatile ( @@ -187,7 +187,7 @@ static void draw_edges_mmx(uint8_t *buf, int wrap, int width, int height, : "+r" (ptr) : "r" ((x86_reg) wrap), "r" ((x86_reg) width), "r" (ptr + wrap * height) - MMX_CLOBBERS_ONLY("mm0", "mm1") ); + : "memory" MMX_CLOBBERS(, "mm0", "mm1") ); } /* top and bottom (and hopefully also the corners) */ @@ -208,7 +208,7 @@ static void draw_edges_mmx(uint8_t *buf, int wrap, int width, int height, : "r" ((x86_reg) buf - (x86_reg) ptr - w), "r" ((x86_reg) - wrap), "r" ((x86_reg) - wrap * 3), "r" (ptr + width + 2 * w) - MMX_CLOBBERS_ONLY("mm0") ); + : "memory" MMX_CLOBBERS(, "mm0") ); } } @@ -229,7 +229,7 @@ static void draw_edges_mmx(uint8_t *buf, int wrap, int width, int height, : "r" ((x86_reg) last_line - (x86_reg) ptr - w), "r" ((x86_reg) wrap), "r" ((x86_reg) wrap * 3), "r" (ptr + width + 2 * w) - MMX_CLOBBERS_ONLY("mm0") ); + : "memory" MMX_CLOBBERS(, "mm0") ); } } }