From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 34CFC3858D32; Mon, 3 Jul 2023 15:45:53 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 34CFC3858D32 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1688399153; bh=1wQTrchDM0hzBT/RRJLFy3O+NOe03NUbtMGri6n5tqI=; h=From:To:Subject:Date:In-Reply-To:References:From; b=FJxj2ClQTY6vIIQxycCbu9Q8kGvuCZ/RR/PaToT+/PLquhUzSQcdC7qEmf4g36avM 7L6sZKWkCageu+1Am4JpM89h0zhq9QnA3M0j1O/nyZ0PwpYv7y3JPG3lt2EK/CKIgG gm5UOF2Dmvm+mJUuh6aocPeiyWQ5QIgIQR/lMnZw= From: "bergner at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/106895] powerpc64 unable to specify even/odd register pairs in extended inline asm Date: Mon, 03 Jul 2023 15:45:52 +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.2.0 X-Bugzilla-Keywords: inline-asm X-Bugzilla-Severity: enhancement X-Bugzilla-Who: bergner at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED 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=3D106895 --- Comment #6 from Peter Bergner --- (In reply to Segher Boessenkool from comment #5) > Constraints are completely the wrong tool for this. Just use modes, which > *are* the right tool? Well you cannot specify modes in the asm, so I think you're saying we need = use the correct type that maps to a internal to GCC mode that has the even/odd register behavior, so something like: unsigned int foo __attribute__ ((mode (XX))); ...where XXmode is the new integer mode that gives us even/odd register pai= rs?=20 Of course we have to be careful about how this all works wrt -m32 versus -m= 64.=