From patchwork Tue Dec 18 06:38:47 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 154094 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp3352910ljp; Mon, 17 Dec 2018 22:52:25 -0800 (PST) X-Google-Smtp-Source: AFSGD/XXe6Hhe2xrfHXE7bqzRGq8WA+gf037BhPEds7LOrplfQ15CpnoAoqPKEegEG74zbxdceYL X-Received: by 2002:ac8:4141:: with SMTP id e1mr6688741qtm.96.1545115945090; Mon, 17 Dec 2018 22:52:25 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1545115945; cv=none; d=google.com; s=arc-20160816; b=dCW73EDAb66aWClKQVMGIVSzInfxxTUpqKBSazpbVilr0jXPwm3KeqDKZiRx8mYGOr GwODt6VRhGZ7ZKpUfq14QQXA+GlH6RDuOSkJDS+6tsXAuSA/BYuU2WZ80OxTiUR6wuxr fLGp4clY7SZa9KtW4GnfDndhjfOt5ktSHp6GltGY8fNyO/HpXVyvpmUgHhd9mkPisovO jDGUW++52hijn8Z0/hwT387MSULMlahtQGlWLvc2W1xe/Qth7/vqmbN+0h1urQCVBhu0 wVRitmhqFXfIefpKxYrdKaWN1jj3T67N15XuOtl+Fxn1JntlflPOZQsYunzNAnnjkGs/ OjuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:cc: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; bh=kSo0oKSo1CsoY2QHLe3rTxnPQOT4r7h09gkl4JXYPGw=; b=McCOwFXvPXehEfUX8Gsd5HVznPaSe6APr0jDfeboUViq5otpfWoWNuyvy/5OR7693b lfGah8M77HvvleVuxHvym7YUzXI3PM5Pm4LHNn6jH7FEXHrDXufy+42yvA6Az+YoDy2R EaiupvnnuruIfajTzjuVx6B4s3bJMU3UKkN93Ed6Y26Y31kOeUe7VyhMaj1R9s7FIBqN N27ydxgJ0sMX/GJMTLE2ErwSmFlOdKkzyt6MerFMmQZQSStPoXjp6SrBTFvYXravwRx4 7PaBe76RKRgVFjhWb8msyi3ktPFav+r4yBOmFn3bCqpwwzM+7isxVW6owFnEawnz017o yDyg== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=VZVdRbIR; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from lists.gnu.org (lists.gnu.org. [2001:4830:134:3::11]) by mx.google.com with ESMTPS id c11si463240qvd.92.2018.12.17.22.52.24 for (version=TLS1 cipher=AES128-SHA bits=128/128); Mon, 17 Dec 2018 22:52:25 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) client-ip=2001:4830:134:3::11; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=VZVdRbIR; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 2001:4830:134:3::11 as permitted sender) smtp.mailfrom="qemu-devel-bounces+patch=linaro.org@nongnu.org"; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: from localhost ([::1]:52086 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gZ9Eu-0003Mq-FT for patch@linaro.org; Tue, 18 Dec 2018 01:52:24 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:52976) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gZ92v-0001fa-Ts for qemu-devel@nongnu.org; Tue, 18 Dec 2018 01:40:12 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gZ92q-0002qK-T9 for qemu-devel@nongnu.org; Tue, 18 Dec 2018 01:40:01 -0500 Received: from mail-pf1-x444.google.com ([2607:f8b0:4864:20::444]:42367) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gZ92q-0001yb-EX for qemu-devel@nongnu.org; Tue, 18 Dec 2018 01:39:56 -0500 Received: by mail-pf1-x444.google.com with SMTP id 64so7641172pfr.9 for ; Mon, 17 Dec 2018 22:39:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=kSo0oKSo1CsoY2QHLe3rTxnPQOT4r7h09gkl4JXYPGw=; b=VZVdRbIRFTzOUuKTyR7WE35uAwkuB2LxMLTPNmJvjBYEB8XOgKzgse77gw0q4SrXJi GG2QaSnVpE6RJ7A4xqBHdmeeVfK6wCPg4B1YR0fyOkUVvXAsoRSt1ZITnu9787R06FOz Dfoj3FtpaM/ut/1H7wLbRvG3AUT57Ds9wdrfA= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=kSo0oKSo1CsoY2QHLe3rTxnPQOT4r7h09gkl4JXYPGw=; b=BcwDAcGXfUloKDXCMf+7aMj9UGbQ2IMYx/Orv5Tgezlpt2ZMaE047cQ9Vou28l0xqW ngWrV7+hxJPsc6TYbJ/T2n6XMgIwButMIhvY4OkmZLfKvVVWLjb0YHVR6ofZMnZRw+co AQgqkFXLyJU4NAtXN4pMRBq5marg+QcVlHLCYJSYyU5X4lPC8GGe8Q0VlVWzf9bDbZX0 HLU1dlQ0/7QCXi+lXAL2gK1jFtdtGmlxSoTJTko27S0RKTeTIOxyCofmU5QYD3bpvOXa R60cyYVan77t0nU3ydtoCIlyx25vxNoHMS40cjz/2fmzKSRrkU9nc5MQWBVPmi8rL9sD HoLA== X-Gm-Message-State: AA+aEWaD24xePDucb0DTwPUW/O9Wscm/uycF6KnJaUvuLdIXFFVk4vDc fM/0A/9v+Pp8drvj6B9Dvp6u0e8hf9A= X-Received: by 2002:a62:d148:: with SMTP id t8mr16003007pfl.52.1545115166231; Mon, 17 Dec 2018 22:39:26 -0800 (PST) Received: from cloudburst.twiddle.net (97-126-115-157.tukw.qwest.net. [97.126.115.157]) by smtp.gmail.com with ESMTPSA id c7sm27072509pfh.18.2018.12.17.22.39.25 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Mon, 17 Dec 2018 22:39:25 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Date: Mon, 17 Dec 2018 22:38:47 -0800 Message-Id: <20181218063911.2112-11-richard.henderson@linaro.org> X-Mailer: git-send-email 2.17.2 In-Reply-To: <20181218063911.2112-1-richard.henderson@linaro.org> References: <20181218063911.2112-1-richard.henderson@linaro.org> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::444 Subject: [Qemu-devel] [PATCH 10/34] target/arm: Use vector minmax expanders for aarch32 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: qemu-ppc@nongnu.org, mark.cave-ayland@ilande.co.uk, david@gibson.dropbear.id.au Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" Signed-off-by: Richard Henderson --- target/arm/translate.c | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) -- 2.17.2 diff --git a/target/arm/translate.c b/target/arm/translate.c index 33b1860148..f3f172f384 100644 --- a/target/arm/translate.c +++ b/target/arm/translate.c @@ -6368,6 +6368,25 @@ static int disas_neon_data_insn(DisasContext *s, uint32_t insn) tcg_gen_gvec_cmp(u ? TCG_COND_GEU : TCG_COND_GE, size, rd_ofs, rn_ofs, rm_ofs, vec_size, vec_size); return 0; + + case NEON_3R_VMAX: + if (u) { + tcg_gen_gvec_umax(size, rd_ofs, rn_ofs, rm_ofs, + vec_size, vec_size); + } else { + tcg_gen_gvec_smax(size, rd_ofs, rn_ofs, rm_ofs, + vec_size, vec_size); + } + return 0; + case NEON_3R_VMIN: + if (u) { + tcg_gen_gvec_umin(size, rd_ofs, rn_ofs, rm_ofs, + vec_size, vec_size); + } else { + tcg_gen_gvec_smin(size, rd_ofs, rn_ofs, rm_ofs, + vec_size, vec_size); + } + return 0; } if (size == 3) { @@ -6533,12 +6552,6 @@ static int disas_neon_data_insn(DisasContext *s, uint32_t insn) case NEON_3R_VQRSHL: GEN_NEON_INTEGER_OP_ENV(qrshl); break; - case NEON_3R_VMAX: - GEN_NEON_INTEGER_OP(max); - break; - case NEON_3R_VMIN: - GEN_NEON_INTEGER_OP(min); - break; case NEON_3R_VABD: GEN_NEON_INTEGER_OP(abd); break;