Message ID | 20250505202751.3510517-6-richard.henderson@linaro.org |
---|---|
State | New |
Headers | show
Delivered-To: patch@linaro.org Received: by 2002:a5d:430f:0:b0:38f:210b:807b with SMTP id h15csp2235628wrq; Mon, 5 May 2025 13:30:38 -0700 (PDT) X-Forwarded-Encrypted: i=2; AJvYcCUhklPew0DfLSSUWpl+PU7+Bz1BY7lws1VmSpno+NGzMy7s8HmKyVj+vq6sEw53lKnYrASs5Q==@linaro.org X-Google-Smtp-Source: AGHT+IFLFLNkc3BMKep+/1/LM9oQFKz9oehv9zI/egfcxFMebvbCKX6k+rclaB6lE0dy5Pxv3qeK X-Received: by 2002:a05:620a:1a83:b0:7c7:a629:8ae5 with SMTP id af79cd13be357-7cae3b05606mr1333311585a.56.1746477037956; Mon, 05 May 2025 13:30:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1746477037; cv=none; d=google.com; s=arc-20240605; b=FEu/3V29caAGj0dPDN8r1fkdeEGGRoa304/bV5uB9x2IsVOSZDC7zJqKPfto5fCOqa YNGkQAsydiWe94E0Gz9aOLDwhk+SPuy48q+uLcQjr/VMrlYMO35hkrTX5zaIR1PIkUhd L9mzui735rJ9Dqa/uCwmj/AE5hlB6JpxtDqvuUsFs534STwfxlzMDZ7RUsdleJqPfQ6B M5q2cmzkKlKzdS5+25C9LIC8HwMVPKb5QPMG3LmGRaxBXiwDH6JHyH9zA9pqweUWv5wI 9rfgwpuhuTBMKlKKfSLd1zlA+1KD3Pih7RJua0eCdGYGHZ7UYorYCiv6ntZNayyUE1eN PQzA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=sender:errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:content-transfer-encoding :mime-version:references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=Ng45Q3ozB7fDbFJmX/4XPxigFXCk4HF6+j4a4hv4d8g=; fh=PnYt+qEB9tAfMKoqBm2xjKOFpYyFFGPudh5cVIoieJM=; b=fzM1SG9uRM/Qnaixh7OI8aqUC6hn/LsA0O5JAnEdRMdBOZZbpNviLNzX6dGmZa/tEU GpcGMFo1GHBFoAex0OrfnNRVb+wENpzxPMYWiWQ63g5YAM2I3yhRkr+gtko/A0Mumk8q 4wm7+IQXbZ8Wzx0Xjz5tpU09tqEWO10xHG4Fq58tZnfrxz0n7DqeQYZNZ12LLKsoQL92 5c9ze85bMipLln5pKVZCjbfrp9cIDWfOjHuG6F21e49bhtOtKA1bcIvJf97Wnz6K+quQ Kb3cWOuFlTldFpPrmihiF5uockeAwYHafe5xp3KC2wOW6DFwfuaXBrfZWcHdFWOA4C8j DR7Q==; dara=google.com ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=QiX3bMFm; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Return-Path: <qemu-devel-bounces+patch=linaro.org@nongnu.org> Received: from lists.gnu.org (lists.gnu.org. [209.51.188.17]) by mx.google.com with ESMTPS id af79cd13be357-7cad23ba3f8si919217885a.49.2025.05.05.13.30.37 for <patch@linaro.org> (version=TLS1_2 cipher=ECDHE-ECDSA-CHACHA20-POLY1305 bits=256/256); Mon, 05 May 2025 13:30:37 -0700 (PDT) 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=pass header.i=@linaro.org header.s=google header.b=QiX3bMFm; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org; dara=neutral header.i=@linaro.org Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from <qemu-devel-bounces@nongnu.org>) id 1uC2Q7-0006nA-OV; Mon, 05 May 2025 16:28:11 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from <richard.henderson@linaro.org>) id 1uC2Py-0006is-4R for qemu-devel@nongnu.org; Mon, 05 May 2025 16:28:02 -0400 Received: from mail-pf1-x434.google.com ([2607:f8b0:4864:20::434]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from <richard.henderson@linaro.org>) id 1uC2Pw-0000Nd-Au for qemu-devel@nongnu.org; Mon, 05 May 2025 16:28:01 -0400 Received: by mail-pf1-x434.google.com with SMTP id d2e1a72fcca58-74019695377so4018217b3a.3 for <qemu-devel@nongnu.org>; Mon, 05 May 2025 13:27:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; t=1746476877; x=1747081677; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=Ng45Q3ozB7fDbFJmX/4XPxigFXCk4HF6+j4a4hv4d8g=; b=QiX3bMFm0blhibYNXA8+jJ+l+06bnXqr27pTYDicrJRGyEDavHra8jWZVBZSho0UYa HLGAygaotCHMQHpUKoGuBL7oyeHEIhKXSgCbcEUhOy74mPGsTKLPft/Po0am20hPUE+Z dfxpp+kaujSYGgoNfOfx7i/jyDzrtQpDMKlfZa7xYQtLELFGFXtK9sUBNG8yz+qSIEmQ PC6NJaR/WsAmRKCkZpZ9fISkMiNG7B8MaE/N2+1WfmYPu7iVU30TevPWbYIf0gfYXD6V 7CKzQOpOwyKaI860wM89ciokJXcQW0KAdGJ5UTbNfuVmRQt3Kb8BBLKL81VyHYrp5zLC vzJw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746476877; x=1747081677; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Ng45Q3ozB7fDbFJmX/4XPxigFXCk4HF6+j4a4hv4d8g=; b=MKR6lvNi14sC8zP9MH31rC4GG1TiByTw8wJEQykxy4QfCIWfREmr3M1MVLx95Ep67i 8gpl6UTSnO6p6xAfkfBiHjf5NWAMT/naPRoEhPWRzIa+oR+ztxvmRZbTBqUjKASwKejT /wAU5lcUJDj0sIBT/0xlKWA7u33jcfBkPaJs2SMbFduIMhLcab4GpkKZZzHl7lXa+oq/ +gGu0Qp4oa5qfN+Af4XVVTMe797NJ0A3CEx88IN2OJcx3/JSNkOGD4GwAyE6kXGUjjA2 f7XJPCpCXRsq5WANDxR2/LOrqEEREvgVcDwcJZIYAd7XduIQMlOfAgtCG157xrV5bc/x oqGg== X-Gm-Message-State: AOJu0Yz65qQm8VGSAeROJ5PYULsoN4jGYqIRsW+Iizoo0Du5XijlbwFP 0ahocIvI7RmxiGagmyA1Zjr7LHH068QwpmoYUd5R0F2xhgCZH2tWkyKnTvAf7O6OgQUqDPfQbYa / X-Gm-Gg: ASbGncugAkyLY1go9BUtInzmYQIC0vfxo0XCGsgmapp84P7Rr2r9sTuHOiMqz8SUUcT hnoAFtKHPC+6pNdNm5LlhcWtzaDL77vsQEzT253nnHY67mpANr3RHNPZCpA+qCEuAj7HsICwVB2 LoIZpP4myCVjuUnCa+dwmGB+SNEFD/+2iHAvw5KrDMAcIm/HYEIxSX1IPZ+GQHhFK/HwVmIlVQU RWVVolCt5fCv/bRTsvxrisqjbMZ3nzJToCr0fvXQkQqhmycwGdKDdDy14i7g34AfSdGtRiiujCv dyFBZgEVZZnOcLBxH1HX5amS46emVt9AHnRQw0xlZ41B/316cGumMBbQkg+cIpEZ2bTMz4AuWXb ihg9PC9NFWQ== X-Received: by 2002:a05:6a00:4293:b0:73f:ebb:6cb2 with SMTP id d2e1a72fcca58-7406f08d144mr13196662b3a.3.1746476877434; Mon, 05 May 2025 13:27:57 -0700 (PDT) Received: from stoup.. (71-212-47-143.tukw.qwest.net. [71.212.47.143]) by smtp.gmail.com with ESMTPSA id d2e1a72fcca58-74059021067sm7516485b3a.107.2025.05.05.13.27.56 for <qemu-devel@nongnu.org> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 05 May 2025 13:27:57 -0700 (PDT) From: Richard Henderson <richard.henderson@linaro.org> To: qemu-devel@nongnu.org Subject: [PATCH 05/20] tcg/optimize: Build and use z_bits and o_bits in fold_eqv Date: Mon, 5 May 2025 13:27:36 -0700 Message-ID: <20250505202751.3510517-6-richard.henderson@linaro.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250505202751.3510517-1-richard.henderson@linaro.org> References: <20250505202751.3510517-1-richard.henderson@linaro.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Received-SPF: pass client-ip=2607:f8b0:4864:20::434; envelope-from=richard.henderson@linaro.org; helo=mail-pf1-x434.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: <qemu-devel.nongnu.org> List-Unsubscribe: <https://lists.nongnu.org/mailman/options/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=unsubscribe> List-Archive: <https://lists.nongnu.org/archive/html/qemu-devel> List-Post: <mailto:qemu-devel@nongnu.org> List-Help: <mailto:qemu-devel-request@nongnu.org?subject=help> List-Subscribe: <https://lists.nongnu.org/mailman/listinfo/qemu-devel>, <mailto:qemu-devel-request@nongnu.org?subject=subscribe> Errors-To: qemu-devel-bounces+patch=linaro.org@nongnu.org Sender: qemu-devel-bounces+patch=linaro.org@nongnu.org |
Series |
tcg/optimize: Track and use known 1's
|
expand
|
diff --git a/tcg/optimize.c b/tcg/optimize.c index faee3e8580..08d15e5395 100644 --- a/tcg/optimize.c +++ b/tcg/optimize.c @@ -1917,7 +1917,7 @@ static bool fold_dup2(OptContext *ctx, TCGOp *op) static bool fold_eqv(OptContext *ctx, TCGOp *op) { - uint64_t s_mask; + uint64_t z_mask, o_mask, s_mask; TempOptInfo *t1, *t2; if (fold_const2_commutative(ctx, op) || @@ -1947,8 +1947,12 @@ static bool fold_eqv(OptContext *ctx, TCGOp *op) } t1 = arg_info(op->args[1]); + + z_mask = (t1->z_mask | ~t2->o_mask) & (t2->z_mask | ~t1->o_mask); + o_mask = ~(t1->z_mask | t2->z_mask) | (t1->o_mask & t2->o_mask); s_mask = t1->s_mask & t2->s_mask; - return fold_masks_s(ctx, op, s_mask); + + return fold_masks_zos(ctx, op, z_mask, o_mask, s_mask); } static bool fold_extract(OptContext *ctx, TCGOp *op)
Signed-off-by: Richard Henderson <richard.henderson@linaro.org> --- tcg/optimize.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-)