From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id DD7EE385843D; Tue, 24 Aug 2021 21:36:01 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DD7EE385843D From: "segher at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/102024] [12 Regression] zero width bitfields and ABIs Date: Tue, 24 Aug 2021 21:36:01 +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: 12.0 X-Bugzilla-Keywords: ABI X-Bugzilla-Severity: normal X-Bugzilla-Who: segher at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P1 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 12.0 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 X-BeenThere: gcc-bugs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-bugs mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Aug 2021 21:36:02 -0000 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D102024 --- Comment #9 from Segher Boessenkool --- (In reply to Michael Matz from comment #8) > So, I think, not removing those members from the FE makes sense, they con= tain > crucial information. Unfortunately that means that they need to be dealt > with > in code dealing with layout (correct) or argument/return-value passing > (seemingly > fishy right now for some platforms?). >=20 > Also, all else being equal I think the C language defines the de-facto > psABI, so any difference between C and C++ should be resolved towards C. Yeah. In the case of Power homogeneous arguments, removing the bitfield from { float a; int:0; float b; } is fine to do *later*, when the backend already knows it is an homogeneous argument, when all decisions have been m= ade and the results recorded. It would be good if this was documented somewher= e, where that spot is?=