From patchwork Fri Nov 11 23:32:13 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Richard Henderson X-Patchwork-Id: 125311 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id 37ED41007D8 for ; Sat, 12 Nov 2011 10:34:04 +1100 (EST) Received: (qmail 32540 invoked by alias); 11 Nov 2011 23:33:59 -0000 Received: (qmail 32509 invoked by uid 22791); 11 Nov 2011 23:33:58 -0000 X-SWARE-Spam-Status: No, hits=-2.4 required=5.0 tests=AWL, BAYES_00, DKIM_SIGNED, DKIM_VALID, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM, RCVD_IN_DNSWL_LOW X-Spam-Check-By: sourceware.org Received: from mail-iy0-f175.google.com (HELO mail-iy0-f175.google.com) (209.85.210.175) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 11 Nov 2011 23:33:38 +0000 Received: by iahk25 with SMTP id k25so3790045iah.20 for ; Fri, 11 Nov 2011 15:33:37 -0800 (PST) Received: by 10.50.196.193 with SMTP id io1mr14828496igc.3.1321054417652; Fri, 11 Nov 2011 15:33:37 -0800 (PST) Received: from localhost.localdomain (c-98-203-235-125.hsd1.wa.comcast.net. [98.203.235.125]) by mx.google.com with ESMTPS id ew6sm9832567igc.4.2011.11.11.15.33.36 (version=TLSv1/SSLv3 cipher=OTHER); Fri, 11 Nov 2011 15:33:37 -0800 (PST) From: Richard Henderson To: gcc-patches@gcc.gnu.org Cc: John David Anglin Subject: [PATCH 3/4] hppa: Install __sync libfuncs for linux. Date: Fri, 11 Nov 2011 15:32:13 -0800 Message-Id: <1321054334-21865-4-git-send-email-rth@redhat.com> In-Reply-To: <1321054334-21865-1-git-send-email-rth@redhat.com> References: <1321054334-21865-1-git-send-email-rth@redhat.com> X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Cc: John David Anglin --- gcc/config/pa/pa-linux.h | 3 +++ gcc/config/pa/pa.c | 3 +++ gcc/config/pa/pa.h | 5 +++++ 3 files changed, 11 insertions(+), 0 deletions(-) diff --git a/gcc/config/pa/pa-linux.h b/gcc/config/pa/pa-linux.h index 6c6cf21..addc0e1 100644 --- a/gcc/config/pa/pa-linux.h +++ b/gcc/config/pa/pa-linux.h @@ -136,3 +136,6 @@ along with GCC; see the file COPYING3. If not see /* Linux always uses gas. */ #undef TARGET_GAS #define TARGET_GAS 1 + +#undef TARGET_SYNC_LIBCALL +#define TARGET_SYNC_LIBCALL 1 diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index 66574ba..134f1f8 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -5587,6 +5587,9 @@ pa_init_libfuncs (void) set_conv_libfunc (ufloat_optab, TFmode, DImode, "_U_Qfcnvxf_udbl_to_quad"); } + + if (TARGET_SYNC_LIBCALL) + init_sync_libfuncs (UNITS_PER_WORD); } /* HP's millicode routines mean something special to the assembler. diff --git a/gcc/config/pa/pa.h b/gcc/config/pa/pa.h index 2f1295b..c52e3d5 100644 --- a/gcc/config/pa/pa.h +++ b/gcc/config/pa/pa.h @@ -74,6 +74,11 @@ extern unsigned long total_code_bytes; #define HPUX_LONG_DOUBLE_LIBRARY 0 #endif +/* Linux kernel atomic operation support. */ +#ifndef TARGET_SYNC_LIBCALL +#define TARGET_SYNC_LIBCALL 0 +#endif + /* The following three defines are potential target switches. The current defines are optimal given the current capabilities of GAS and GNU ld. */