forked from pool/glibc
158 lines
6.7 KiB
Diff
158 lines
6.7 KiB
Diff
|
From schwab@linux-m68k.org Wed, 02 May 2012 17:13:26 +0200
|
||
|
Return-Path: <libc-alpha-return-28278-aj=suse.de@sourceware.org>
|
||
|
Received: from imap.suse.de ([unix socket])
|
||
|
by imap-int (Cyrus v2.2.12) with LMTPA;
|
||
|
Wed, 02 May 2012 17:13:51 +0200
|
||
|
X-Sieve: CMU Sieve 2.2
|
||
|
Received: from relay2.suse.de (relay2.suse.de [149.44.160.134])
|
||
|
(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
|
||
|
(Client CN "relay.suse.de", Issuer "CAcert Class 3 Root" (verified OK))
|
||
|
by imap.suse.de (Postfix) with ESMTPS id F17483C5339B
|
||
|
for <aj@imap.suse.de>; Wed, 2 May 2012 17:13:51 +0200 (CEST)
|
||
|
Received: by relay2.suse.de (Postfix)
|
||
|
id E8E6A18552B2; Wed, 2 May 2012 17:13:51 +0200 (CEST)
|
||
|
Received: from localhost (localhost [127.0.0.1])
|
||
|
by relay2.suse.de (Postfix) with ESMTP id DD16818552B4
|
||
|
for <aj@suse.de>; Wed, 2 May 2012 17:13:51 +0200 (CEST)
|
||
|
Received: from relay2.suse.de ([127.0.0.1])
|
||
|
by localhost (localhost [127.0.0.1]) (amavisd-new, port 10026) with ESMTP
|
||
|
id 02496-01 for <aj@suse.de>; Wed, 2 May 2012 17:13:49 +0200 (CEST)
|
||
|
Received: from mx2.suse.de (cantor2.suse.de [195.135.220.15])
|
||
|
(using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
|
||
|
(No client certificate requested)
|
||
|
by relay2.suse.de (Postfix) with ESMTPS id DBBF518552B2
|
||
|
for <aj@suse.de>; Wed, 2 May 2012 17:13:49 +0200 (CEST)
|
||
|
Received: from sourceware.org (server1.sourceware.org [209.132.180.131])
|
||
|
by mx2.suse.de (Postfix) with SMTP id 47EFA90F2E
|
||
|
for <aj@suse.de>; Wed, 2 May 2012 17:13:48 +0200 (CEST)
|
||
|
Comment: DKIM? See http://www.dkim.org
|
||
|
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed;
|
||
|
d=sourceware.org; s=default; x=1336576429; h=Comment:
|
||
|
DomainKey-Signature:Received:Received:From:To:Cc:Subject:
|
||
|
References:Date:In-Reply-To:Message-ID:User-Agent:MIME-Version:
|
||
|
Content-Type:Mailing-List:Precedence:List-Id:List-Unsubscribe:
|
||
|
List-Subscribe:List-Archive:List-Post:List-Help:Sender:
|
||
|
Delivered-To; bh=0y95/HSsnyw1ABh4V7CAeeORO5U=; b=scLVxQl2KjsaCsA
|
||
|
HlTbKP4b4DlOrh0JbNdDKP3JDs40rI/X02fBsblbArg/QrsiZO9TtF6iehIuw+Sa
|
||
|
/d57G5/oKoaZwV46wT3pzH6BUuKDP+BH1ZMp+TMQRYn4C0Asq5wgY+DeEZhF41gK
|
||
|
f7wsOFVFEQouRtp3QC3k/eN3yUSY=
|
||
|
Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys
|
||
|
DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws;
|
||
|
s=default; d=sourceware.org;
|
||
|
h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:From:To:Cc:Subject:References:X-Yow:Date:In-Reply-To:Message-ID:User-Agent:MIME-Version:Content-Type:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Subscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To;
|
||
|
b=miVyTadt4ff79bxj8elDpRttJ/wxuYnbsl6ZvownzuoJh+HWi+P3S33l/J51gL
|
||
|
/k0F6BLmQ0KXBE9/F8Dxpl9sgt1gBlj440D8gh/jh5cPXeP98VBe0g8f13Rz4j/8
|
||
|
DiRjxjzQbo8WPJlpbeWWdk/pYQSELCdRi45cxnxRItt7o=;
|
||
|
Received: (qmail 23763 invoked by alias); 2 May 2012 15:13:43 -0000
|
||
|
Received: (qmail 23753 invoked by uid 22791); 2 May 2012 15:13:41 -0000
|
||
|
X-SWARE-Spam-Status: No, hits=-2.0 required=5.0
|
||
|
tests=AWL,BAYES_00,RCVD_IN_DNSWL_NONE,TW_LW
|
||
|
X-Spam-Check-By: sourceware.org
|
||
|
From: Andreas Schwab <schwab@linux-m68k.org>
|
||
|
To: Alan Modra <amodra@gmail.com>
|
||
|
Cc: libc-alpha@sourceware.org
|
||
|
Subject: [PATCH v2] Fix missing _mcount@GLIBC_2.0 on powerpc32
|
||
|
References: <m24nryrjy1.fsf@igel.home>
|
||
|
<20120502113123.GC635@bubble.grove.modra.org>
|
||
|
X-Yow: I want to read my new poem about pork brains and outer space...
|
||
|
Date: Wed, 02 May 2012 17:13:26 +0200
|
||
|
In-Reply-To: <20120502113123.GC635@bubble.grove.modra.org> (Alan Modra's
|
||
|
message of "Wed, 2 May 2012 21:01:23 +0930")
|
||
|
Message-ID: <m2ipgepqeh.fsf_-_@igel.home>
|
||
|
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.96 (gnu/linux)
|
||
|
MIME-Version: 1.0
|
||
|
Content-Type: text/plain
|
||
|
Mailing-List: contact libc-alpha-help@sourceware.org; run by ezmlm
|
||
|
Precedence: bulk
|
||
|
List-Id: <libc-alpha.sourceware.org>
|
||
|
List-Unsubscribe: <mailto:libc-alpha-unsubscribe-aj=suse.de@sourceware.org>
|
||
|
List-Subscribe: <mailto:libc-alpha-subscribe@sourceware.org>
|
||
|
List-Archive: <http://sourceware.org/ml/libc-alpha/>
|
||
|
List-Post: <mailto:libc-alpha@sourceware.org>
|
||
|
List-Help: <mailto:libc-alpha-help@sourceware.org>, <http://sourceware.org/ml/#faqs>
|
||
|
Sender: libc-alpha-owner@sourceware.org
|
||
|
Delivered-To: mailing list libc-alpha@sourceware.org
|
||
|
X-Virus-Scanned: by amavisd-new at localhost
|
||
|
X-Spam-Status: No, score=-7.599 tagged_above=-20 required=5
|
||
|
tests=[BAYES_00=-2.599, MY_LINUX=-1, RCVD_IN_DNSWL_MED=-4]
|
||
|
X-Spam-Score: -7.599
|
||
|
X-Spam-Level:
|
||
|
|
||
|
[BZ #14042]
|
||
|
* sysdeps/powerpc/powerpc32/ppc-mcount.S [SHARED]: Don't use PLT
|
||
|
for call to __mcount_internal.
|
||
|
* sysdeps/powerpc/powerpc32/Makefile (sysdep_routines)
|
||
|
(shared-only-routines) [$(subdir) = gmon]: Add compat-ppc-mcount.
|
||
|
* sysdeps/powerpc/powerpc32/compat-ppc-mcount.S: New file.
|
||
|
---
|
||
|
sysdeps/powerpc/powerpc32/Makefile | 3 ++-
|
||
|
sysdeps/powerpc/powerpc32/compat-ppc-mcount.S | 11 +++++++++++
|
||
|
sysdeps/powerpc/powerpc32/ppc-mcount.S | 6 +++++-
|
||
|
3 files changed, 18 insertions(+), 2 deletions(-)
|
||
|
create mode 100644 sysdeps/powerpc/powerpc32/compat-ppc-mcount.S
|
||
|
|
||
|
diff --git a/sysdeps/powerpc/powerpc32/Makefile b/sysdeps/powerpc/powerpc32/Makefile
|
||
|
index aa2d0b9..64f7900 100644
|
||
|
--- a/sysdeps/powerpc/powerpc32/Makefile
|
||
|
+++ b/sysdeps/powerpc/powerpc32/Makefile
|
||
|
@@ -6,8 +6,9 @@ sysdep-LDFLAGS += -msoft-float
|
||
|
endif
|
||
|
|
||
|
ifeq ($(subdir),gmon)
|
||
|
-sysdep_routines += ppc-mcount
|
||
|
+sysdep_routines += ppc-mcount compat-ppc-mcount
|
||
|
static-only-routines += ppc-mcount
|
||
|
+shared-only-routines += compat-ppc-mcount
|
||
|
endif
|
||
|
|
||
|
ifeq ($(subdir),misc)
|
||
|
diff --git a/sysdeps/powerpc/powerpc32/compat-ppc-mcount.S b/sysdeps/powerpc/powerpc32/compat-ppc-mcount.S
|
||
|
new file mode 100644
|
||
|
index 0000000..2a9cb24
|
||
|
--- /dev/null
|
||
|
+++ b/sysdeps/powerpc/powerpc32/compat-ppc-mcount.S
|
||
|
@@ -0,0 +1,11 @@
|
||
|
+#include <shlib-compat.h>
|
||
|
+
|
||
|
+#if SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_15)
|
||
|
+
|
||
|
+ compat_text_section
|
||
|
+# define _mcount __compat_mcount
|
||
|
+# include "ppc-mcount.S"
|
||
|
+# undef _mcount
|
||
|
+
|
||
|
+compat_symbol (libc, __compat_mcount, _mcount, GLIBC_2_0)
|
||
|
+#endif
|
||
|
diff --git a/sysdeps/powerpc/powerpc32/ppc-mcount.S b/sysdeps/powerpc/powerpc32/ppc-mcount.S
|
||
|
index 9a3c041..911638b 100644
|
||
|
--- a/sysdeps/powerpc/powerpc32/ppc-mcount.S
|
||
|
+++ b/sysdeps/powerpc/powerpc32/ppc-mcount.S
|
||
|
@@ -1,5 +1,5 @@
|
||
|
/* PowerPC-specific implementation of profiling support.
|
||
|
- Copyright (C) 1997, 1999, 2005, 2006 Free Software Foundation, Inc.
|
||
|
+ Copyright (C) 1997-2012 Free Software Foundation, Inc.
|
||
|
This file is part of the GNU C Library.
|
||
|
|
||
|
The GNU C Library is free software; you can redistribute it and/or
|
||
|
@@ -57,7 +57,11 @@ ENTRY(_mcount)
|
||
|
stw r4, 44(r1)
|
||
|
cfi_offset (lr, -4)
|
||
|
stw r5, 8(r1)
|
||
|
+#ifndef SHARED
|
||
|
bl JUMPTARGET(__mcount_internal)
|
||
|
+#else
|
||
|
+ bl __mcount_internal@local
|
||
|
+#endif
|
||
|
/* Restore the registers... */
|
||
|
lwz r6, 8(r1)
|
||
|
lwz r0, 44(r1)
|
||
|
--
|
||
|
1.7.10.1
|
||
|
|
||
|
|
||
|
--
|
||
|
Andreas Schwab, schwab@linux-m68k.org
|
||
|
GPG Key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
|
||
|
"And now for something completely different."
|
||
|
|