From patchwork Tue Jun 21 22:35:22 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: John David Anglin X-Patchwork-Id: 13293 Received: (qmail 24341 invoked by alias); 21 Jun 2016 22:35:38 -0000 Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: libc-alpha-owner@sourceware.org Delivered-To: mailing list libc-alpha@sourceware.org Received: (qmail 24310 invoked by uid 89); 21 Jun 2016 22:35:36 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.9 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_LOW, RP_MATCHES_RCVD, SPF_PASS, UNPARSEABLE_RELAY autolearn=ham version=3.3.2 spammy=H*c:sk:Apple-M X-HELO: mtlfep01.bell.net From: John David Anglin Mime-Version: 1.0 (Apple Message framework v1085) Date: Tue, 21 Jun 2016 18:35:22 -0400 Subject: [PATCH: hppa] Fix loading of global pointer in _start Cc: Carlos O'Donell , Mike Frysinger To: GNU C Library Message-Id: <9A08CDD2-4A65-4272-8676-E15623435E60@bell.net> X-Opwv-CommTouchExtSvcRefID: str=0001.0A020202.5769C12B.01A6, ss=1, re=0.000, recu=0.000, reip=0.000, cl=1, cld=1, fgs=0 The patched change fixes a regression for executables compiled with the -p option and linked with gcrt1.o. The executables crash on startup. This regression was introduced in 2.22 and was noticed in the gcc testsuite. Change has been tested on Debian Linux. Please install if okay. Regards, Dave Anglin --- John David Anglin dave.anglin@bell.net 2016-06-21 John David Anglin [BZ 20277] * sysdeps/hppa/start.S (_start): Correct loading of global pointer when SHARED is defined. diff --git a/sysdeps/hppa/start.S b/sysdeps/hppa/start.S index 90d4331..b7ab830 100644 --- a/sysdeps/hppa/start.S +++ b/sysdeps/hppa/start.S @@ -131,8 +131,10 @@ _start: stw %sp, -60(%sp) #ifdef SHARED + /* load global */ addil LT'.Lp__global, %r19 ldw RT'.Lp__global(%r1), %dp + ldw 0(%dp), %dp #else /* load global */ ldil L%$global$, %dp