From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 4DA0B3945C16; Thu, 17 Nov 2022 07:44:17 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4DA0B3945C16 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1668671057; bh=Ey1wFo+iLh/Hlhpss1Zffsrml+285UR3sn4rDz7480c=; h=From:To:Subject:Date:In-Reply-To:References:From; b=nLGZphTlgm+VaL/etrvgSBHvQcX5+bbrML+QMT/Hrsyz2tr8I4JeBnMr+iiftK5FO e6gn0DqrczvnLe1+4mtULGpWD+xQATinuIZWbhIPp3AJZHX5bFYl3vwKWjRAyNhY3H L2qS+mK37tAEO5uUELDINyjb1L1+A4j51MJHwS7A= From: "pinskia at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/107731] loongarch Operand Modifiers are not documented Date: Thu, 17 Nov 2022 07:44:16 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Version: 13.0 X-Bugzilla-Keywords: documentation X-Bugzilla-Severity: normal X-Bugzilla-Who: pinskia at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D107731 --- Comment #4 from Andrew Pinski --- (In reply to Xi Ruoyao from comment #2) > Interestingly it "worked" with GCC 12.2... I don't see how it could work though. 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4499) default: 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4500) switch (code) 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4501) { 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4502) case REG: 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4503) { 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4504) unsigned int regno =3D REGNO (op); 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4505) if (let= ter && letter !=3D 'z') 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4506)=20=20=20=20=20=20= =20=20=20=20=20=20=20 output_operand_lossage ("invalid use of '%%%c'", letter); 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4507) fprintf (file, "%s", reg_names[regno]); 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4508) } 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4509) break; 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4510) 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4511) case MEM: 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4512) if (lette= r =3D=3D 'D') 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4513)=20=20=20=20=20=20= =20=20=20=20=20 output_address (GET_MODE (op), 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4514)=20=20=20=20=20=20= =20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20 plus_constant (Pmode, XEXP (op, 0), 4)); 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4515) else if (letter =3D=3D 'b') 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4516) { 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4517)=20=20=20=20=20=20= =20=20=20=20=20=20=20 gcc_assert (REG_P (XEXP (op, 0))); 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4518)=20=20=20=20=20=20= =20=20=20=20=20=20=20 loongarch_print_operand (file, XEXP (op, 0), 0); 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4519) } 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4520) else if (letter && letter !=3D 'z') 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4521)=20=20=20=20=20=20= =20=20=20=20=20 output_operand_lossage ("invalid use of '%%%c'", letter); 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4522) else 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4523)=20=20=20=20=20=20= =20=20=20=20=20 output_address (GET_MODE (op), XEXP (op, 0)); 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4524) break; 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4525) 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4526) default: 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4527) if (lette= r =3D=3D 'z' && op =3D=3D CONST0_RTX (GET_MODE (op))) 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4528) fputs (reg_names[GP_REG_FIRST], file); 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4529) else if (letter && letter !=3D 'z') 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4530)=20=20=20=20=20=20= =20=20=20=20=20 output_operand_lossage ("invalid use of '%%%c'", letter); 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4531) else 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4532)=20=20=20=20=20=20= =20=20=20=20=20 output_addr_const (file, loongarch_strip_unspec_address (op)); 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4533) break; 62ec3b5352b3 (chenglulu 2021-11-27 14:58:21 +0800 4534) }=