From patchwork Sun Jan 6 22:50:35 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 154847 Delivered-To: patch@linaro.org Received: by 2002:a2e:299d:0:0:0:0:0 with SMTP id p29-v6csp2900826ljp; Sun, 6 Jan 2019 14:55:29 -0800 (PST) X-Google-Smtp-Source: ALg8bN6sWnosVRJZ3vD2ZRqzqaXVxC71DYgSuKlEg0FwuBfCfP9kINLF9P2oFtTAfW5lvn9X0Qy9 X-Received: by 2002:adf:f504:: with SMTP id q4mr52229918wro.321.1546815329022; Sun, 06 Jan 2019 14:55:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1546815329; cv=none; d=google.com; s=arc-20160816; b=Ki2ACal2AKp1DxehbpsoLtug4/pC+f4qAqdaZLVII8HOdKndN3QNW//p/32M5CYj3V j0RAcSkDb5VNS2jaJSeB2itSarTEZcBk/E+p9lgYXv3FTPUNGYBTDsRwB2vp+sEss3hL GC5apU/QiydyxDTAlciznm6K6z3SCa/aUQDnxkDOSElOtR8rM/E8YR8vzz9/EDIJDHYU Gg7TnaermbIgD2alWGz0JLRrY1ZzF6nJJJiUj3TXgHIer8z2E4EH2ZPFF2HeBuJv5CVE gO2zTe65GfIjwzyzrFHEWVgWDsklQKAr9Ix4dIgHv8TMRTq1dGCRdLufAS4c5VJQyieu le6g== 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=zeX2njZzfJiuYPK/KW9TxWTfQCvfPm4ZUDAFaRUb7gqqBtg+jeS/YalxUJrdZY/CJH 2IA8Cgjoc8J8FaDpiZcYJHA+CUbNZvQR3ruxF2P2crdbeozOMhOBtoHVmctBvGUYQ8Gc 5AYeoyRrXNMPmyJL5lUducbM92Kg+ZzYdqzSgKNmA3uv+oATqPJa9CLFiPXjlL3Te9mv XIUvk62K+PqS33Gze17pUtQ5a2bnf6HrTUJxyuf7ns4DWMoDVojx1dM+KYUetynpquD+ KXg6eRU2qYGuzuL4nUT9nDQJZ6UhYybNScUkT9elhzjaEpTaUUhQHSZbMKIQXEfDyDeR b/1g== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="Lfh/sl+/"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 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. [209.51.188.17]) by mx.google.com with ESMTPS id a10si36943055wrh.180.2019.01.06.14.55.28 for (version=TLS1 cipher=AES128-SHA bits=128/128); Sun, 06 Jan 2019 14:55:29 -0800 (PST) Received-SPF: pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; Authentication-Results: mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b="Lfh/sl+/"; spf=pass (google.com: domain of qemu-devel-bounces+patch=linaro.org@nongnu.org designates 209.51.188.17 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 ([127.0.0.1]:51199 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ggHKK-0007eo-4t for patch@linaro.org; Sun, 06 Jan 2019 17:55:28 -0500 Received: from eggs.gnu.org ([209.51.188.92]:53612) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ggHFv-0003v0-2y for qemu-devel@nongnu.org; Sun, 06 Jan 2019 17:50:55 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ggHFt-0004lY-MB for qemu-devel@nongnu.org; Sun, 06 Jan 2019 17:50:54 -0500 Received: from mail-pl1-x641.google.com ([2607:f8b0:4864:20::641]:41691) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ggHFt-0004ja-EK for qemu-devel@nongnu.org; Sun, 06 Jan 2019 17:50:53 -0500 Received: by mail-pl1-x641.google.com with SMTP id u6so19934294plm.8 for ; Sun, 06 Jan 2019 14:50:53 -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=Lfh/sl+/68m//Y2YF1vDNRLPg+ceFxNSlF9404jjh0mTezBeeNR7Sh5ONIHrVeXYqf Ft0yNymMn585Df6cedqBrQaBaJphw70wDDP7BtHk0/IIXHIGcw5v9uvUuXtbnqxffOig RlGZgQIyW09eIT5mhQP3eRiC0TjMf+u3g/RrY= 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=Cn8e7QxBmTHUO26arXGeNzv8npgLYAWWFZrwLSofiCkmVZV9DKu/fN7hh8QXuYFvGK ndy+I/RN+eqMh2hzbNbOib/LCGRbRJHJuTxv8Fa89LDd9WbzujG0EgmQWcWsppRXLtum l3pYDqe6n38tWi9DKqSiQIxb0574e0lS1kzXSw5ttpChznedhQuPcLhVBivjkJB+7InR e9aRajzbFEdXfX17dxAVhXDJx8AWBcK9Jpk2QgmZ4IM7wHSK5FKtIvk9CHMat1AKp0Y5 uzWUWsKXqv3H2oj4wmm+AGV9aruj/LablAR7Fo/Z1V2rkkkvDAbtCMK1MPb1FjceDuE+ p2ZQ== X-Gm-Message-State: AJcUukeHo3JjvaR4ZX7wpTcAzvaAbzfn4E4q2Uvz28oYKGchLp+KCpkT W/SJRYTLIkkkmRiqFoHZjzO5udxCPIy6xA== X-Received: by 2002:a17:902:1008:: with SMTP id b8mr57215902pla.252.1546815052118; Sun, 06 Jan 2019 14:50:52 -0800 (PST) Received: from cloudburst.lan (2001-44b8-2176-c800-8cc6-2630-7d99-5ef1.static.ipv6.internode.on.net. [2001:44b8:2176:c800:8cc6:2630:7d99:5ef1]) by smtp.gmail.com with ESMTPSA id n78sm45905768pfk.19.2019.01.06.14.50.49 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Sun, 06 Jan 2019 14:50:51 -0800 (PST) From: Richard Henderson To: qemu-devel@nongnu.org Date: Mon, 7 Jan 2019 08:50:35 +1000 Message-Id: <20190106225035.5671-4-richard.henderson@linaro.org> X-Mailer: git-send-email 2.17.2 In-Reply-To: <20190106225035.5671-1-richard.henderson@linaro.org> References: <20190106225035.5671-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::641 Subject: [Qemu-devel] [PATCH 3/3] 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: peter.maydell@linaro.org, qemu-arm@nongnu.org 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 Reviewed-by: Peter Maydell 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;