From patchwork Thu Aug 9 03:40:30 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 143653 Delivered-To: patch@linaro.org Received: by 2002:a2e:9754:0:0:0:0:0 with SMTP id f20-v6csp1579623ljj; Wed, 8 Aug 2018 20:50:29 -0700 (PDT) X-Google-Smtp-Source: AA+uWPzXVVaGCWTPwNYUG0bAU4d5Ita09EY5JpUyMyS3sVwl2aXUts3uSKMmCDmO+mWRa845kBDF X-Received: by 2002:ac8:3477:: with SMTP id v52-v6mr384694qtb.316.1533786629148; Wed, 08 Aug 2018 20:50:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1533786629; cv=none; d=google.com; s=arc-20160816; b=fmA2hXf2TdHNdk2Zk44uu6zYaQTnSECT164VgH57Pi7r7sB6XniBcHvfWxKi6xe9PA XV+CXvDqGXF1u9VrFYZ/txH4zQ2PMa0tt87eFonOwt/IU3SVhyIQgL92+f3GuM8AkjDA mKmtPduwypDcYio+vSGUNSjvyx63Ac9agipFDyUCAgG7zUP0fJnE2GmsdFwiIHRkq24G EQIWksu+q3XkyUtr2733N0BLIaCHipkPq3CJ/tn2QXDQ3UM2gnkz7TKUqvzZNv9p8vE3 d1fNvtyZA8CeldxpbmtV1O009tsamVFNd7Yv91VOzIkcAlE1fmFUfkm+lZfswhVWNK1C tvJg== 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:arc-authentication-results; bh=u5hBbJUuDc7/ufplT19/aY8WnnQKtZVUsYURNw4zFxs=; b=dWOPH+HRcPkpGL9yGEulV/ztwTCeI78ReuPs87Vr9LIk6IsWMFDtQ3eVgEMMW6nIi3 x2fKDrtpeXriKs1ajxZ25jvUwE2IKWuGe+aTCKagSNU60P6ruPw8wGFDx1XAVhmYxquu YiSJ1djjKNe6ZA1hdsO4M6ztWJdVexIVpksbFAVxwZmdUm/v2c+sPu/bEhsX+zJCuqp3 9ZG766WTGG7jy5ub+1BpAZ+ALdCQzSKRvFoA0d61APbKP/P/FjG3pzZwm7twU0mugTLI UMOxNuFzkEtoIu8u8899Q7gYIFfkWr7Wteemx7sOhideE/9YA83ubcIk0ZTrypApy4ol 8j5w== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@linaro.org header.s=google header.b=HZ41eiFH; 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 b187-v6si586668qke.34.2018.08.08.20.50.28 for (version=TLS1 cipher=AES128-SHA bits=128/128); Wed, 08 Aug 2018 20:50:29 -0700 (PDT) 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=HZ41eiFH; 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]:46444 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fnby0-0006Bc-M8 for patch@linaro.org; Wed, 08 Aug 2018 23:50:28 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:37779) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fnbof-0006lI-Q8 for qemu-devel@nongnu.org; Wed, 08 Aug 2018 23:40:50 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fnbof-0003DF-18 for qemu-devel@nongnu.org; Wed, 08 Aug 2018 23:40:49 -0400 Received: from mail-pl0-x243.google.com ([2607:f8b0:400e:c01::243]:33728) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fnboe-0003Cs-RA for qemu-devel@nongnu.org; Wed, 08 Aug 2018 23:40:48 -0400 Received: by mail-pl0-x243.google.com with SMTP id b90-v6so1948846plb.0 for ; Wed, 08 Aug 2018 20:40:48 -0700 (PDT) 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=u5hBbJUuDc7/ufplT19/aY8WnnQKtZVUsYURNw4zFxs=; b=HZ41eiFHYxEF4kdJT/PNfqOLOZ+2D6vkRGrNIHy/xQbKoDOpGwNu3UP+HXg9/c7FCp OWT+s05Oj6I9MOXucQRW9LS8bIKVhN2h4V/0QJJxGpmtuEcSwMA3IDgSF6egzYvuTRKr Zpbf9jooCqamRNUxv1AaItcUpLAdXMbKUsIZI= 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=u5hBbJUuDc7/ufplT19/aY8WnnQKtZVUsYURNw4zFxs=; b=IpksEkxRbHOv0jN8FE5szM4I3Viihnfo98ivUhT2CKZbH9RpPZHw9S4zsOZrRKWEuV YbbSBWNE1jxr2KENeV1xdzE4m7jEcK1WOme6uuwE+ZFXQvVHctnKwKnKBa9GtV2CQMGy rEvEiRLr5+ocpLnxTIjNct2nw09yiSx2tLQ1YgoJ7TQ9Hk6v5Gk02Y6XB7FcyuhXUseh tLAxHjXQ5UkepB9SWE39f4p8IFsAP9Nd/1d4bSkr4YvMbKG2/p+4/7incAqtM89lOafb YcQAv1Is6N2WALXtITemUoqy5QEgAfEZZWiyMoALSg8tqYGQ1FAZu8DhFSrnc28FP6D9 zkrQ== X-Gm-Message-State: AOUpUlHY3hPVrfF+1AFviMHRKcPpntaayIs5HUWfd2SudkQorEjscwTg DygheTQn1cJd1gOGFlGFesoZRXwhIDY= X-Received: by 2002:a17:902:d906:: with SMTP id c6-v6mr398873plz.65.1533786047545; Wed, 08 Aug 2018 20:40:47 -0700 (PDT) Received: from cloudburst.twiddle.net (97-113-8-179.tukw.qwest.net. [97.113.8.179]) by smtp.gmail.com with ESMTPSA id q78-v6sm9674103pfi.185.2018.08.08.20.40.46 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 08 Aug 2018 20:40:46 -0700 (PDT) From: Richard Henderson To: qemu-devel@nongnu.org Date: Wed, 8 Aug 2018 20:40:30 -0700 Message-Id: <20180809034033.10579-9-richard.henderson@linaro.org> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180809034033.10579-1-richard.henderson@linaro.org> References: <20180809034033.10579-1-richard.henderson@linaro.org> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:400e:c01::243 Subject: [Qemu-devel] [PATCH 08/11] target/arm: Fix offset scaling for LD_zprr and ST_zprr 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: laurent.desnogues@gmail.com, peter.maydell@linaro.org, alex.bennee@linaro.org, qemu-stable@nongnu.org Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: "Qemu-devel" The scaling should be solely on the memory operation size; the number of registers being loaded does not come in to the initial computation. Cc: qemu-stable@nongnu.org (3.0.1) Reported-by: Laurent Desnogues Signed-off-by: Richard Henderson --- target/arm/translate-sve.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) -- 2.17.1 Tested-by: Laurent Desnogues Reviewed-by: Laurent Desnogues diff --git a/target/arm/translate-sve.c b/target/arm/translate-sve.c index f635822a61..d27bc8c946 100644 --- a/target/arm/translate-sve.c +++ b/target/arm/translate-sve.c @@ -4665,8 +4665,7 @@ static bool trans_LD_zprr(DisasContext *s, arg_rprr_load *a, uint32_t insn) } if (sve_access_check(s)) { TCGv_i64 addr = new_tmp_a64(s); - tcg_gen_muli_i64(addr, cpu_reg(s, a->rm), - (a->nreg + 1) << dtype_msz(a->dtype)); + tcg_gen_shli_i64(addr, cpu_reg(s, a->rm), dtype_msz(a->dtype)); tcg_gen_add_i64(addr, addr, cpu_reg_sp(s, a->rn)); do_ld_zpa(s, a->rd, a->pg, addr, a->dtype, a->nreg); } @@ -4899,7 +4898,7 @@ static bool trans_ST_zprr(DisasContext *s, arg_rprr_store *a, uint32_t insn) } if (sve_access_check(s)) { TCGv_i64 addr = new_tmp_a64(s); - tcg_gen_muli_i64(addr, cpu_reg(s, a->rm), (a->nreg + 1) << a->msz); + tcg_gen_shli_i64(addr, cpu_reg(s, a->rm), a->msz); tcg_gen_add_i64(addr, addr, cpu_reg_sp(s, a->rn)); do_st_zpa(s, a->rd, a->pg, addr, a->msz, a->esz, a->nreg); }