From patchwork Sat Mar 8 16:59:12 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sebastian Huber X-Patchwork-Id: 328217 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]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id CA8252C008F for ; Sun, 9 Mar 2014 03:59:26 +1100 (EST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id; q=dns; s=default; b=hZH9+qYhpiAb brV5qW4EbgPVrRs78m9gXBfFwf6Bv5xnH4Dvb7xhfqu6d0GNHIeJ0xV1THywBb90 X1gWjK68V8mPcBHaboQzx0OMmz/h2eLZDxfm8LQ8Tdzb6kXkEfNA7COPQYv2uCYx Q8uug1NF5v/mFEWIcshBwAImzzpSl5Q= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:from :to:cc:subject:date:message-id; s=default; bh=KVUtAFludR/NHwRP3G QZ4V0x0+Q=; b=rrnUOJ9g0TvCU6vkBKCphN7GAw7uJHflCi0FBRxa2gnJoZhecG xazpfUO12QzaVGOmZa8f4izC+B9A2rT0g62QsdrBZNJncVg0yBFNLzQ246zL3+r/ wL/sHt5+gOsxJDE2gMjg1Kb4Yeh0g3JO9r9VT/I0CCgKQ2ee8R7eZH3ko= Received: (qmail 21139 invoked by alias); 8 Mar 2014 16:59:19 -0000 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 Received: (qmail 21124 invoked by uid 89); 8 Mar 2014 16:59:18 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=0.5 required=5.0 tests=AWL, BAYES_40, RDNS_DYNAMIC autolearn=no version=3.3.2 X-HELO: mail.embedded-brains.de Received: from host-82-135-62-35.customer.m-online.net (HELO mail.embedded-brains.de) (82.135.62.35) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 08 Mar 2014 16:59:17 +0000 Received: by mail.embedded-brains.de (Postfix, from userid 65534) id 2A818652CFB; Sat, 8 Mar 2014 17:59:14 +0100 (CET) Received: from linux.local (38.vpnclient.eb.z [192.168.126.38]) by mail.embedded-brains.de (Postfix) with ESMTP id 724FC65219E; Sat, 8 Mar 2014 17:59:13 +0100 (CET) From: Sebastian Huber To: gcc-patches@gcc.gnu.org Cc: ebotcazou@adacore.com Subject: [PATCH] SPARC: Mention global register 7 usage for TLS Date: Sat, 8 Mar 2014 17:59:12 +0100 Message-Id: <1394297952-4261-1-git-send-email-sebastian.huber@embedded-brains.de> X-IsSubscribed: yes Are the global registers 5 and 6 really available for the operating system or uses GCC or the linker them for a special purpose? Is it possible to document this somewhere in to standard documentation and not only in a header file? gcc/ChangeLog 2014-03-08 Sebastian Huber * config/sparc/sparc.h: Mention global register 7 usage for TLS. --- gcc/config/sparc/sparc.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gcc/config/sparc/sparc.h b/gcc/config/sparc/sparc.h index dd2b5ad..23c79fc 100644 --- a/gcc/config/sparc/sparc.h +++ b/gcc/config/sparc/sparc.h @@ -637,16 +637,17 @@ extern enum cmodel sparc_cmodel; On non-v9 systems: g1 is free to use as temporary. - g2-g4 are reserved for applications. Gcc normally uses them as + g2-g4 are reserved for applications. GCC normally uses them as temporaries, but this can be disabled via the -mno-app-regs option. - g5 through g7 are reserved for the operating system. + g5 and g6 are reserved for the operating system. + g7 is used for thread-local storage (TLS) in the initial exec TLS model. On v9 systems: g1,g5 are free to use as temporaries, and are free to use between calls if the call is to an external function via the PLT. g4 is free to use as a temporary in the non-embedded case. g4 is reserved in the embedded case. - g2-g3 are reserved for applications. Gcc normally uses them as + g2-g3 are reserved for applications. GCC normally uses them as temporaries, but this can be disabled via the -mno-app-regs option. g6-g7 are reserved for the operating system (or application in embedded case).