From patchwork Sat Oct 15 10:47:37 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Walter Lee X-Patchwork-Id: 119967 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 6C24BB70ED for ; Sat, 15 Oct 2011 21:47:57 +1100 (EST) Received: (qmail 15546 invoked by alias); 15 Oct 2011 10:47:55 -0000 Received: (qmail 15530 invoked by uid 22791); 15 Oct 2011 10:47:53 -0000 X-SWARE-Spam-Status: No, hits=-0.2 required=5.0 tests=AWL, BAYES_00, RP_MATCHES_RCVD, TW_EG, URIBL_BLACK X-Spam-Check-By: sourceware.org Received: from usmamail.tilera.com (HELO USMAMAIL.TILERA.COM) (206.83.70.75) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Sat, 15 Oct 2011 10:47:39 +0000 Received: from [192.168.1.6] (98.229.97.107) by USMAExch2.tad.internal.tilera.com (10.3.0.33) with Microsoft SMTP Server id 14.0.694.0; Sat, 15 Oct 2011 06:47:35 -0400 Message-ID: <4E9964C9.7080105@tilera.com> Date: Sat, 15 Oct 2011 06:47:37 -0400 From: Walter Lee User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20110929 Thunderbird/7.0.1 MIME-Version: 1.0 To: Subject: [PATCH] New port for TILEPro and TILE-Gx 3/7: gcc port References: <4E996398.2000507@tilera.com> In-Reply-To: <4E996398.2000507@tilera.com> 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 Here is the gcc port. * config.gcc: Handle tilegx and tilepro. * configure.ac (gcc_cv_as_dwarf2_debug_line): Enable test for tilegx and tilepro. Add HAVE_AS_TLS check for tilegx and tilepro. * configure: Regenerate. * doc/contrib.texi: Add Mat Hostetter and self. * doc/extend.texi (TILE-Gx Built-in Functions): New node. Document instruction intrinsics and network accessing intrinsics. (TILEPro Built-in Functions): New node. Document instruction intrinsics and network accessing intrinsics. * doc/install.texi (Specific, tilegx-*-linux*): Document it. (Specific, tilepro-*-linux*): Likewise. * doc/invoke.texi (TILE-Gx Options): New section. (TILEPro Options): New section. * doc/md.texi (TILE-Gx): New section. (TILEPro): New section. * common/config/tilegx/tilegx-common.c: New file. * common/config/tilepro/tilepro-common.c: New file. * config/tilegx/constraints.md: New file. * config/tilegx/linux.h: New file. * config/tilegx/mul_tables.c: New file. * config/tilegx/predicates.md: New file. * config/tilegx/sync.md: New file. * config/tilegx/t-tilegx: New file. * config/tilegx/tilegx-builtins.h: New file. * config/tilegx/tilegx-c.c: New file. * config/tilegx/tilegx-generic.md: New file. * config/tilegx/tilegx-modes.def: New file. * config/tilegx/tilegx-multiply.h: New file. * config/tilegx/tilegx-protos.h: New file. * config/tilegx/tilegx.c: New file. * config/tilegx/tilegx.h: New file. * config/tilegx/tilegx.md: New file. * config/tilegx/tilegx.opt: New file. * config/tilepro/constraints.md: New file. * config/tilepro/linux.h: New file. * config/tilepro/mul_tables.c: New file. * config/tilepro/predicates.md: New file. * config/tilepro/t-tilepro: New file. * config/tilepro/tilepro-builtins.h: New file. * config/tilepro/tilepro-c.c: New file. * config/tilepro/tilepro-generic.md: New file. * config/tilepro/tilepro-modes.def: New file. * config/tilepro/tilepro-multiply.h: New file. * config/tilepro/tilepro-protos.h: New file. * config/tilepro/tilepro.c: New file. * config/tilepro/tilepro.h: New file. * config/tilepro/tilepro.md: New file. * config/tilepro/tilepro.opt: New file. Here is a change to a test to handle the new targets. * testsuite/gcc.dg/20020312-2.c: Add a condition for __tile__. diff -r -u -p -N /home/packages/gcc-4.7.0-179959/gcc/testsuite/gcc.dg/20020312-2.c ./gcc/testsuite/gcc.dg/20020312-2.c --- /home/packages/gcc-4.7.0-179959/gcc/testsuite/gcc.dg/20020312-2.c 2011-10-14 00:57:27.000000000 -0400 +++ ./gcc/testsuite/gcc.dg/20020312-2.c 2011-10-14 18:14:11.138743000 -0400 @@ -64,6 +64,8 @@ extern void abort (void); # define PIC_REG "12" #elif defined(__sparc__) # define PIC_REG "l7" +#elif defined(__tile__) +# define PIC_REG "r51" #elif defined(__TMS320C6X__) # define PIC_REG "B14" #elif defined(__v850)