From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-pj1-x1042.google.com (mail-pj1-x1042.google.com [IPv6:2607:f8b0:4864:20::1042]) by sourceware.org (Postfix) with ESMTPS id 39814385E000 for ; Sun, 22 Mar 2020 22:21:57 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 39814385E000 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=twiddle.net Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=rth7680@gmail.com Received: by mail-pj1-x1042.google.com with SMTP id hg10so5209635pjb.1 for ; Sun, 22 Mar 2020 15:21:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:subject:to:cc:references:from:autocrypt:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=pX3yQK74UIjr2iR5+50n8Nm/mIby6vPBaxbNU9TsLD8=; b=viA0njIHYgoAU8XdEqGYSVYgMXQ2nVAZqwBXBer7knXa4ipck1cho66SR5K3ROK6Hz UuK9p81MDQ2ddVV2fy8ylWYZYjU5MHh7TnIMnSRMpA+iKpTebuQAc+m5PPfzmOp75pt8 HzyJU9a7Ktg34LZ1O2nlH9kAm1l8O+t/kOTpota7mC3uoCO3oZ308TuSxm/RZ7HpB4K1 2/4c4axEQcdaGpHbukBHFQ2lRf76taWeiehpHZnDAAS49PLEa9UyvHHVSEqZgULTFtRy yaWhgTgTrpKCvKRaQYS77+LIQHafQb8jvIfYrMJV63k93GVYIQ9tvxV3qlx2zeqnsKMy HG9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:subject:to:cc:references:from:autocrypt :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=pX3yQK74UIjr2iR5+50n8Nm/mIby6vPBaxbNU9TsLD8=; b=ff+TPypB3P+EyXhf6CIw79iQOvdJv4zyOOZgQi/k3mIOY/Rq1Rp1MScV7y1si7jpWh AAfp26Y5YKB2Y3i6GPwrsgBJDioPtlLROk5PxD+HU+StZPcJ8VGDWNrMW/tfSxuvJTH7 hArcEdir+YKrcTjWa1V3rYYw4kyBGqxFqX10U3ZXkxgqudFAG/YnqG9zgY65lIjbtzRO 7luwWE7f+km30PcJYYDFN4NVLlX7GEFdm7/wEkgjy29tHNGnUUcP8v2ZnHBkqENJMIn1 s5PGp44UkqLMeAN20YW7U70N2JNuVrXu1x3WVR6p5VqOEVt8/uXmtFXPzCyDk28zuRRC CzSw== X-Gm-Message-State: ANhLgQ2IsOFdAdOn3MLVDOG67ft8sZCAKa8S4lsXDmGwDA/Zg5/gQz// v2Sxl/nIKC96u05n+4bZLKk= X-Google-Smtp-Source: ADFU+vuL0Sy8Ub2T8k8x/wOAIiGSzEdYBJcybsLYVdKTOP63bBgX7wiupANVpqODbf73ZtPZ6xdCAg== X-Received: by 2002:a17:90b:1944:: with SMTP id nk4mr2912501pjb.70.1584915715653; Sun, 22 Mar 2020 15:21:55 -0700 (PDT) Received: from [192.168.1.11] (97-126-123-70.tukw.qwest.net. [97.126.123.70]) by smtp.googlemail.com with ESMTPSA id 26sm10259719pgs.85.2020.03.22.15.21.54 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sun, 22 Mar 2020 15:21:54 -0700 (PDT) Sender: Richard Henderson Subject: Re: [PATCH v2 7/9] aarch64: Adjust result of aarch64_gen_compare_reg To: Segher Boessenkool , Richard Henderson Cc: richard.earnshaw@arm.com, gcc-patches@gcc.gnu.org, marcus.shawcroft@arm.com, Wilco.Dijkstra@arm.com References: <20200321024231.13778-1-richard.henderson@linaro.org> <20200321024231.13778-8-richard.henderson@linaro.org> <20200322215502.GN22482@gate.crashing.org> From: Richard Henderson Autocrypt: addr=rth@twiddle.net; prefer-encrypt=mutual; keydata= mQENBFGuLC8BCADcAoWcnW9lTsDMzbO3MBU+KbiGaj5JPatEUscRDkQYM2fyNjJp2tIWDK5a n4yngeXB3eX61WbYR3QraRK8mlYLGxyAdHMEQfPipbqf3TmN043fssT2bc82ApJcs1zvLYgI rhMht7Dck7A0wNC1jo+ZjVVFig5gDTN7gOzaAdBtV8tVNUddwkLzzaGpfihhSD6U46NdqKOG Wlnn6TrkMy0QGdQ5NaXHkRlUjnnUTSW/nKfoxD+EI+A9V4sYOd8mc/TL4aJh/i/AiU57eLbo n17uQI6/VTWDUWl8USiz4x9c8vmqlywLx00tAFxxoRWqk4KVJlj+Sh0up/D/sJ+vPpgBABEB AAG0I1JpY2hhcmQgSGVuZGVyc29uIDxydGhAdHdpZGRsZS5uZXQ+iQFYBBMBAgBCAhsDBgsJ CAcDAgYVCAIJCgsEFgIDAQIeAQIXgAIZARYhBJyxjdr46EmtKvwWpK0ScMxN0CebBQJdweUY BQkP1h/pAAoJEK0ScMxN0CebqDsH/0YyfnXk+Dc++H37VCEKgRet2i1ATFzxRnifkvmdxha0 V+PVptQ2fwSe+w3KxoFecD8W75nysmUjrU/FicW9yU5YRlGONPZjruG02/KzmhA5PzWJdYO3 i/t0qRayvWIcX2qA/flsXEbmb/BbAFM05LQIdcOu74eiBFe5CBCOWBDJeneE1urIE0hSYxoh nCcG60ULrNj13ohZ4zAEluoY32qIo7/OPWmtR88cPrEbZT8k+RqgZbsotzaPT1/RlL74fL8k ofYfTgKAFH7eEy6fF2nzDp2GThVn+3sA62xtpSXUf/X1m75B40KOcq1EQbHypNTmBc1wt13e ibhPNEVX2am5AQ0EUa4sLwEIALITHfH3gciRNfQIe7awDTDvn6H3C6gDyCAnv5LiuLTLZiyK NZp3lNO3rPowyKrGT2RIDlumlqPgdeHzqEEX91YK0yk2vdFvwU04rJ4D+qRgdUPoeICLD1zo PwOv2FaY6Tf8dKYas1RHF5QU5yQNey8j7IYYoE2yGPn2PtBmvtmK4iLataUEvx0U385Zr+jf HscqwTiToryeDC8Io/9BsMvAssE5Yf5URS2nJ7LFOvc4njsQJPF1i9egBXaIloqv7p2hVCKJ Hl5UWIxitQ9QQIl6iU4LCpz8mVYTXwv48IAVpbUf7+ak9V9Kk3jCeQnlxCJBUHjUhoIzinbS JHPHtkkAEQEAAYkBPAQYAQIAJgIbDBYhBJyxjdr46EmtKvwWpK0ScMxN0CebBQJdweVIBQkP 1iAZAAoJEK0ScMxN0CebGHUH/RtouOlWl6To97tQsTJUq/2YwmRpFOsvV0/zCX4fKBGAbeZi VaELSt2+3UEErA+n8HwbQmjJ6IrdhA9GustOpOyCcbLVSMwql/OlAwBtDzCcC8dTU4zcuY2a rGG2A8i5krU85G9r1wowVcWZBsdmW7/dKiNoadLQiig4bHNiSaV4ograas5efyEjqTxiY+yG hzPw5DK2kbp2co8iDF1vW0LWPeLFBinCgItcI9LvgHWaB3rwjOfvNpMn5m64SoQYHB8wbnid erAjOzkBzmqnfS1tAUr8mtESStEwrEmNv0ZoA6S0Wt+c9pyTr+BpG4OFlhj7ZI+Eh7zOrr33 q9OBIdA= Message-ID: <355d70b1-c12c-fc29-25db-677aa9c10d41@twiddle.net> Date: Sun, 22 Mar 2020 15:21:52 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 MIME-Version: 1.0 In-Reply-To: <20200322215502.GN22482@gate.crashing.org> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-10.6 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_EF, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FORGED_FROMDOMAIN, FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 22 Mar 2020 22:21:58 -0000 On 3/22/20 2:55 PM, Segher Boessenkool wrote: > Maybe this stuff would be simpler (and more obviously correct) if it > was more explicit CC_REGNUM is a fixed register, and the code would use > it directly everywhere? Indeed the biggest issue I have in this patch is what CC_MODE to expose from the high-half compare. For unsigned inequality, only the C bit is valid. For signed inequality, only the N + V bits. For equality, only the Z bit. Which I am trying to expose with the multiple creations of CC_REGNUM, which are used within the comparison, which are indeed sanity checked vs the comparison code via %m/%M. But the mode of the CC_REGNUM does not necessarily match up with the mode of the comparison that generates it. And we do not have a CC_NVmode, so I'm using full CCmode for that. This is the part of the patch that could use the most feedback. r~