From patchwork Wed May 16 01:02:26 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Han Shen X-Patchwork-Id: 159483 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 D98D3B6FDE for ; Wed, 16 May 2012 11:02:51 +1000 (EST) Comment: DKIM? See http://www.dkim.org DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d=gcc.gnu.org; s=default; x=1337734973; h=Comment: DomainKey-Signature:Received:Received:Received:Received:Received: MIME-Version:Received:Reply-To:Message-ID:Date:Subject:From:To: Cc:Content-Type:Mailing-List:Precedence:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:Sender:Delivered-To; bh=m/FFSdj +jQA8fGnxwS80c4qHluU=; b=V847fINHbTLneJ2gvAWBENDSN8oGWWDMjIK6Joo Dr2yt+sJLNlYEhZT7Q48KmiEvQ7s3bw1StzGwKHcn8PfeJUsGdq4nt3O4QMTB23t RU02IEx2Wjf+Bo0T8Y6xFle1i9tc4rm9C/kZtpr0x8f3xfRT5ZWPEilxsHW8ydSC g9oo= Comment: DomainKeys? See http://antispam.yahoo.com/domainkeys DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=default; d=gcc.gnu.org; h=Received:Received:X-SWARE-Spam-Status:X-Spam-Check-By:Received:Received:X-Google-DKIM-Signature:Received:MIME-Version:Received:Reply-To:X-Google-Appengine-App-Id:Message-ID:Date:Subject:From:To:Cc:Content-Type:X-Gm-Message-State:X-IsSubscribed:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=mNGDjUvIZEPeizc74lx0gGFtb1FxpdhqwzT3tlQAtXNC4bHCcsKwHCiUemvcy0 dZh01XMTdmEDCj3Q38Xl/KCVGX5GZboydux//vqqnkcNIPbaMYnTyTRCTniHIwzv OCvGVzQ4aXeGc6BvZD5FI7xUxyEcxXIwW6e0BPY5fCB9M=; Received: (qmail 11426 invoked by alias); 16 May 2012 01:02:43 -0000 Received: (qmail 11416 invoked by uid 22791); 16 May 2012 01:02:41 -0000 X-SWARE-Spam-Status: No, hits=-4.0 required=5.0 tests=AWL, BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, KHOP_RCVD_TRUST, RCVD_IN_DNSWL_LOW, RCVD_IN_HOSTKARMA_YE, T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mail-vb0-f69.google.com (HELO mail-vb0-f69.google.com) (209.85.212.69) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 16 May 2012 01:02:28 +0000 Received: by vbbez10 with SMTP id ez10so393616vbb.8 for ; Tue, 15 May 2012 18:02:27 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=mime-version:reply-to:x-google-appengine-app-id:message-id:date :subject:from:to:cc:content-type:x-gm-message-state; bh=Ec9MvFZAG9zIw6QnvgrGLQU/C3On88RcdxIyFW33/0M=; b=nAGZaLQl7wS2X6auAW1nuBK++4rnyLsc1xZNP5a/K8eVgNSUrMTdgzAp8qZJB4RlUE zoZGL7q5GXr041G+ce1ZcFDabgFqDO4Yhn/1SgOKu5icVNS/CeZJiA4Ilx9tWCrPa+35 LuUU4ctc//yI3MWoa6CLFksKqgWYaBo1mZzWMiKR/b/tJx9yGE4+J1uKS2wzpn1/sN2y 2sOBARf5ypiNSoIMbenk5UnyJf6FleOLHjbUxevY+M9JOEbSok3KYYmD2KtwV6Kuwdla bedomo5ThHjB90guSF+IuwhB1EDhOoirwPshOWMP8UFG4hasKA6HD6W7ZMz552BjDroF /MZQ== Received: by 10.101.3.11 with SMTP id f11mr549810ani.26.1337130147054; Tue, 15 May 2012 18:02:27 -0700 (PDT) MIME-Version: 1.0 Received: by 10.101.3.11 with SMTP id f11mr549805ani.26.1337130146927; Tue, 15 May 2012 18:02:26 -0700 (PDT) Reply-To: shenhan@google.com, asharif@google.com, jingyu@google.com, gcc-patches@gcc.gnu.org, carrot@google.com, reply@codereview-hr.appspotmail.com X-Google-Appengine-App-Id: s~codereview-hr Message-ID: <001636c597706d175e04c01cdf0b@google.com> Date: Wed, 16 May 2012 01:02:26 +0000 Subject: [google/gcc-4_6_3-mobile] Port r187569 from google/gcc-4_6 branch (issue 6210060) From: shenhan@google.com To: asharif@google.com, jingyu@google.com Cc: gcc-patches@gcc.gnu.org, carrot@google.com, reply@codereview-hr.appspotmail.com X-Gm-Message-State: ALoCoQlNh2v3Qfc2J4il9EooG+W7IJEQCq4RkK/yhOSsu3eBUc6k8ic+ifoRlBGVuONVKOOSTq0P1QVeuTCDVEQG+npovEjKqewLLoGAN/QdrcwBx9kz68kXgqFAgArVCMH1jPgxLef9plyWo+l/c4zVZb4IpoJldQ== 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 Reviewers: asharif1, jingyu, Message: Hi Amhad and Jing, could you take a look at this CL at http://codereview.appspot.com/6210060/ Thanks, -Han Description: Ported r187569 from google/gcc-4_6 branch. 2012-05-11 Han Shen Backport from mainline. 2012-05-01 Richard Earnshaw * arm/linux-eabi.h (GLIBC_DYNAMIC_LINKER_DEFAULT): Avoid ifdef comparing enumeration values. Update comments. 2012-04-26 Michael Hope Richard Earnshaw * config/arm/linux-eabi.h (GLIBC_DYNAMIC_LINKER_SOFT_FLOAT): Define. (GLIBC_DYNAMIC_LINKER_HARD_FLOAT): Define. (GLIBC_DYNAMIC_LINKER_DEFAULT): Define. (GLIBC_DYNAMIC_LINKER): Redefine to use the hard float path. Please review this at http://codereview.appspot.com/6210060/ Affected files: M gcc/config/arm/linux-eabi.h Index: gcc/config/arm/linux-eabi.h =================================================================== --- gcc/config/arm/linux-eabi.h (revision 187569) +++ gcc/config/arm/linux-eabi.h (working copy) @@ -32,7 +32,8 @@ while (false) /* We default to a soft-float ABI so that binaries can run on all - target hardware. */ + target hardware. If you override this to use the hard-float ABI then + change the setting of GLIBC_DYNAMIC_LINKER_DEFAULT as well. */ #undef TARGET_DEFAULT_FLOAT_ABI #define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_SOFT @@ -59,11 +60,26 @@ #undef SUBTARGET_EXTRA_LINK_SPEC #define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION -/* Use ld-linux.so.3 so that it will be possible to run "classic" - GNU/Linux binaries on an EABI system. */ +/* GNU/Linux on ARM currently supports three dynamic linkers: + - ld-linux.so.2 - for the legacy ABI + - ld-linux.so.3 - for the EABI-derived soft-float ABI + - ld-linux-armhf.so.3 - for the EABI-derived hard-float ABI. + All the dynamic linkers live in /lib. + We default to soft-float, but this can be overridden by changing both + GLIBC_DYNAMIC_LINKER_DEFAULT and TARGET_DEFAULT_FLOAT_ABI. */ + #undef GLIBC_DYNAMIC_LINKER -#define GLIBC_DYNAMIC_LINKER RUNTIME_ROOT_PREFIX "/lib/ld-linux.so.3" +#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT \ + RUNTIME_ROOT_PREFIX "/lib/ld-linux.so.3" +#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT \ + RUNTIME_ROOT_PREFIX "/lib/ld-linux-armhf.so.3" +#define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT +#define GLIBC_DYNAMIC_LINKER \ + "%{mfloat-abi=hard:" GLIBC_DYNAMIC_LINKER_HARD_FLOAT "} \ + %{mfloat-abi=soft*:" GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "} \ + %{!mfloat-abi=*:" GLIBC_DYNAMIC_LINKER_DEFAULT "}" + /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to use the GNU/Linux version, not the generic BPABI version. */ #undef LINK_SPEC