From patchwork Fri Oct 20 10:01:30 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Biener X-Patchwork-Id: 155949 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:612c:2010:b0:403:3b70:6f57 with SMTP id fe16csp943290vqb; Fri, 20 Oct 2023 03:02:03 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFnYut90actMscYj5TiTdEQOn8+zjSUMWOvyKeRly+N0wTmpvk17bQGhRHfFKrYo1L/vKiG X-Received: by 2002:a05:6214:cae:b0:656:3045:5638 with SMTP id s14-20020a0562140cae00b0065630455638mr1462019qvs.16.1697796122772; Fri, 20 Oct 2023 03:02:02 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1697796122; cv=pass; d=google.com; s=arc-20160816; b=cTuxQxiqPMqXMj2RuNvRfANI94Xpaxt1p2CdRf11Jx3R1iU2EeOLx7trMOCN4D+dOe s1h2fLLldAppYbAUcvBO/CGKxI8lH4jEsQ1/921oNk4KQ6+Od0szTyenMboQ4u6IZuz6 PrFzZ/ltnwvNrA9d6GduBTl5xs9Av+XPekKAptMNMAWGtcwugzJ9XrmL+aYdufD1IPtc 9gw7+qvSPv3L3JeD38XwYDVR5quzGrl8toUr6Ylr1yeC5bsWbcSS7YKyCfAUwqTrZPZd GL/hmIqg83ke1l25/yq2aUFQ/VjFcYvKGWT/0YYik/62vMTH1wsoXvEAt/TkA8Rrwc8L X+Kw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:message-id:mime-version:subject :to:from:date:dkim-signature:dkim-signature:arc-filter:dmarc-filter :delivered-to; bh=wCu47xozh7lKWeiTk6qt3yyr2odMaO3Gjv8HRZFWbcY=; fh=hPrbWPhweUx4V0GV9uXJqbyAzg2ABmTz7kczrAQqMmM=; b=VTh6pHP6ckCDfY84kqetAum5FZOokhQIYpc4QQR0Fi/VRGasiUzKV24OU/dPQxmq6q bmz0wT9RbGNK7YcXLPbWacHXLeiVripaDyUMumtfqKyLyq5WrA9rq1xM0D321gN/UzDV avazCeYduQ6M/pY94YQxATRzXDpDrVMYzvYrWbWFWCVv2avdp8nTHs6y3zgmxwopH2Zw 3kzM9VFthpmM+b0DdA/CE/ga8i2bZaounZF4M6AM0MyhGeF77mX5L/G/grfu/1P2m8Kn BZvlc4UUpGVOAeTJNG8n8aRm7uUzN/NpJSb59kUZcUmkuwGOBsMEDDhNF/lRcEcn4BWB 8TSg== ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=GRc8Adn5; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519 header.b=pYluFF3s; arc=pass (i=1); spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=suse.de Received: from server2.sourceware.org (ip-8-43-85-97.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id u14-20020a0cec8e000000b0066cf8b2926asi1088985qvo.439.2023.10.20.03.02.02 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 20 Oct 2023 03:02:02 -0700 (PDT) Received-SPF: pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=GRc8Adn5; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519 header.b=pYluFF3s; arc=pass (i=1); spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=suse.de Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 7B4343858C50 for ; Fri, 20 Oct 2023 10:02:02 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from smtp-out1.suse.de (smtp-out1.suse.de [IPv6:2001:67c:2178:6::1c]) by sourceware.org (Postfix) with ESMTPS id 0E7503858414 for ; Fri, 20 Oct 2023 10:01:32 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 0E7503858414 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=suse.de Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=suse.de ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 0E7503858414 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2001:67c:2178:6::1c ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1697796093; cv=none; b=mxGgMVHZGL2Zoi1E0kOAGvcJX9mfNZEzQQurPOh21eUt5Vi4gLRw+N2Mc9uX9Nb0vKz/r2E1418Z+pwICNGwZlf8uLGfoUhyEaSHN1eUhnB0Cd1cvzviTY+UBCAcRb4WK3w6KutzLTUMrHVTXRN9uSzeRslg8e88e3DU8CQ98j8= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1697796093; c=relaxed/simple; bh=3bLWjlMo+lEFJf/I1PBFkRCseCFjnuSjl91to8Rmzao=; h=DKIM-Signature:DKIM-Signature:Date:From:To:Subject:MIME-Version: Message-Id; b=fsbYUHt12z+YbL4CfYWZgEuzI7O5Wkj3BE8h2W77hhK8qyL4DeXmKsGCOBAd10vBHCzF9riJTv/Z0P3QXdrndIjkYlz0P7EETnfvqYugOg+djW9ApHIUcEwHaImar7MirHP0JfywoXezmoH/Z3t/cuzOrPrCQEVl8VdDVrSCS5E= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id EC4B1211B8 for ; Fri, 20 Oct 2023 10:01:30 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1697796090; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version:content-type:content-type; bh=wCu47xozh7lKWeiTk6qt3yyr2odMaO3Gjv8HRZFWbcY=; b=GRc8Adn55O5qaeM7KYzJyutYs505HgkS8O5Ft2VGqkScuwPee2zrTHDVVAJkJ+Kfu6YYUO WhdEyJcVNR73jUPTDdgHxxVKrbvHVYLeFL9TM8zxlB+JdY6pN4+pWoQ5vnvOPK0QZPrSoW TIMXKtTtHYLdDN9Jewaz+YFUiszV+Yg= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1697796090; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc: mime-version:mime-version:content-type:content-type; bh=wCu47xozh7lKWeiTk6qt3yyr2odMaO3Gjv8HRZFWbcY=; b=pYluFF3s3oDtWb1+KxxxB/LQV5rVDgq/kkCPVYQhJHk8jF4n43ZrNnJmj8oz06KvFHK5lC sgnZydO2Dw20noBQ== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id D526713584 for ; Fri, 20 Oct 2023 10:01:30 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id msbuMvpPMmV4SQAAMHmgww (envelope-from ) for ; Fri, 20 Oct 2023 10:01:30 +0000 Date: Fri, 20 Oct 2023 12:01:30 +0200 (CEST) From: Richard Biener To: gcc-patches@gcc.gnu.org Subject: [PATCH] Document {L,R}ROTATE_EXPR MIME-Version: 1.0 Message-Id: <20231020100130.D526713584@imap2.suse-dmz.suse.de> Authentication-Results: smtp-out1.suse.de; none X-Spam-Level: X-Spam-Score: -6.96 X-Spamd-Result: default: False [-6.96 / 50.00]; ARC_NA(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; FROM_HAS_DN(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; NEURAL_HAM_LONG(-3.00)[-1.000]; MIME_GOOD(-0.10)[text/plain]; TO_DN_NONE(0.00)[]; PREVIOUSLY_DELIVERED(0.00)[gcc-patches@gcc.gnu.org]; RCPT_COUNT_ONE(0.00)[1]; MID_RHS_MATCH_FROMTLD(0.00)[]; DKIM_SIGNED(0.00)[suse.de:s=susede2_rsa,suse.de:s=susede2_ed25519]; NEURAL_HAM_SHORT(-1.00)[-1.000]; FROM_EQ_ENVFROM(0.00)[]; MIME_TRACE(0.00)[0:+]; RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_ALL(0.00)[]; BAYES_HAM(-2.86)[99.39%] X-Spam-Status: No, score=-11.2 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1780268267589365993 X-GMAIL-MSGID: 1780268267589365993 The following amends the {L,R}SHIFT_EXPR documentation with documentation about the {L,R}ROTATE_EXPR case. Build on x86_64-unknown-linux-gnu, pushed. * doc/generic.texi ({L,R}ROTATE_EXPR): Document. --- gcc/doc/generic.texi | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/gcc/doc/generic.texi b/gcc/doc/generic.texi index 73492454002..de5609fc0c3 100644 --- a/gcc/doc/generic.texi +++ b/gcc/doc/generic.texi @@ -1315,6 +1315,8 @@ The type of the node specifies the alignment of the access. @tindex THROW_EXPR @tindex LSHIFT_EXPR @tindex RSHIFT_EXPR +@tindex LROTATE_EXPR +@tindex RROTATE_EXPR @tindex BIT_IOR_EXPR @tindex BIT_XOR_EXPR @tindex BIT_AND_EXPR @@ -1481,17 +1483,19 @@ a fixed-point value to a floating-point value. @item LSHIFT_EXPR @itemx RSHIFT_EXPR -These nodes represent left and right shifts, respectively. The first -operand is the value to shift; it will always be of integral type. The -second operand is an expression for the number of bits by which to -shift. Right shift should be treated as arithmetic, i.e., the -high-order bits should be zero-filled when the expression has unsigned -type and filled with the sign bit when the expression has signed type. +@itemx LROTATE_EXPR +@itemx RROTATE_EXPR +These nodes represent left and right shifts and rotates, respectively. +The first operand is the value to shift or rotate; it will always be of +integral type. The second operand is an expression for the number of bits +by which to shift or rotate. Right shift should be treated as arithmetic, +i.e., the high-order bits should be zero-filled when the expression has +unsigned type and filled with the sign bit when the expression has signed type. +All other operations are logical, operating on the bit representation. Note that the result is undefined if the second operand is larger than or equal to the first operand's type size. Unlike most nodes, these can have a vector as first operand and a scalar as second operand. - @item BIT_IOR_EXPR @itemx BIT_XOR_EXPR @itemx BIT_AND_EXPR