From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12785 invoked by alias); 25 May 2015 04:59:11 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 7254 invoked by uid 48); 25 May 2015 04:59:07 -0000 From: "carlos at redhat dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/60925] [4.9/5 Regression] hppa: can't find a register in class 'R1_REGS' while reloading 'asm' Date: Mon, 25 May 2015 04:59:00 -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: 4.9.0 X-Bugzilla-Keywords: ice-on-valid-code, ra X-Bugzilla-Severity: normal X-Bugzilla-Who: carlos at redhat dot com X-Bugzilla-Status: RESOLVED X-Bugzilla-Resolution: WONTFIX X-Bugzilla-Priority: P4 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 4.9.3 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: cc Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-05/txt/msg02042.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60925 Carlos O'Donell changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |carlos at redhat dot com --- Comment #13 from Carlos O'Donell --- For the record I made glibc use %r5 and saved/restored %r1 as required around the syscall. I also added more clobbers in the event of future changes to the kernel interface. This works around the "can't find a register in class FOO while reloading 'asm'" error from the compiler. The real culprit here is atomic.h in glibc and the asm in question is the atomic compare and exchange that is being done via the light-weight kernel syscall.