From patchwork Mon Oct 8 23:00:51 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Oleg Endo X-Patchwork-Id: 190163 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 649C82C0317 for ; Tue, 9 Oct 2012 10:01:19 +1100 (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=1350342080; h=Comment: DomainKey-Signature:Received:Received:Received:Received:Received: Message-ID:Subject:From:To:Date:Content-Type:Mime-Version: Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:Sender:Delivered-To; bh=WThsXZNCljcjJDbqb+YD zCIOwCY=; b=DirUGZVGM7F7S+A1OFn/H+kmiTbDMgFi/YWLGw146c5qa1bSNqkf 09p5TU/3L/URslRrRC98uR8AEYzFMuKmS3qfezSGAPrM2DwT3v9XsA+oxBOaRvFR kcaJr4X9Uc7ss2PQB4x3LXf70TRKNvnk+ix8n1skTFJbbgtMd2pyHp0= 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:Received:Message-ID:Subject:From:To:Date:Content-Type:Mime-Version:X-IsSubscribed:Mailing-List:Precedence:List-Id:List-Unsubscribe:List-Archive:List-Post:List-Help:Sender:Delivered-To; b=qoslCykcL3xnCKmCBuDy41nz2n10JhbIMCmi/1Q3sQpYgPfBpFzjN94xBtjKdC pgoTPfzrCsHuSUOke3E7BuQQYAMQ0AH8gBGw9LTMtK4Wk0jGRndvKTactC20uMaW oraMc4LGNeQqYWbo7Nu6Wq1WUepQKPtZDISZj/5KkbZNc=; Received: (qmail 3394 invoked by alias); 8 Oct 2012 23:01:13 -0000 Received: (qmail 3384 invoked by uid 22791); 8 Oct 2012 23:01:11 -0000 X-SWARE-Spam-Status: No, hits=-4.0 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_HOSTKARMA_NO, RCVD_IN_HOSTKARMA_YE, RP_MATCHES_RCVD, UNPARSEABLE_RELAY X-Spam-Check-By: sourceware.org Received: from mailout05.t-online.de (HELO mailout05.t-online.de) (194.25.134.82) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Mon, 08 Oct 2012 23:01:06 +0000 Received: from fwd07.aul.t-online.de (fwd07.aul.t-online.de ) by mailout05.t-online.de with smtp id 1TLMJs-0006lZ-IW; Tue, 09 Oct 2012 01:01:04 +0200 Received: from [192.168.0.100] (VUqJtBZBghAzvi3pzQZhq-dFEFOVUFO9P44LPd2iXWryDaeq2VB6vC7SxtloxQnw1I@[93.218.155.66]) by fwd07.t-online.de with esmtp id 1TLMJi-1pu62S0; Tue, 9 Oct 2012 01:00:54 +0200 Message-ID: <1349737251.21984.55.camel@yam-132-YW-E178-FTW> Subject: [SH] PR 34777 - Add test case From: Oleg Endo To: gcc-patches Date: Tue, 09 Oct 2012 01:00:51 +0200 Mime-Version: 1.0 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 Hello, This adds the reduced test case as mentioned by Kaz in the PR to the test suite. Tested with make -k check-gcc RUNTESTFLAGS="compile.exp=pr34777* --target_board=sh-sim \{-m2/-ml,-m2/-mb,-m2a/-mb,-m4/-ml,-m4/-mb,-m4a/-ml,-m4a/-mb}" OK? Cheers, Oleg testsuite/ChangeLog: PR target/34777 * gcc.c-torture/compile/pr34777.c: New. Index: gcc/testsuite/gcc.c-torture/compile/pr34777.c =================================================================== --- gcc/testsuite/gcc.c-torture/compile/pr34777.c (revision 0) +++ gcc/testsuite/gcc.c-torture/compile/pr34777.c (revision 0) @@ -0,0 +1,30 @@ +/* { dg-do compile { target "sh*-*-*" } } */ +/* { dg-additional-options "-fPIC" } */ +/* { dg-skip-if "" { "sh*-*-*" } { "-m5*" } { "" } } */ + +static __inline __attribute__ ((__always_inline__)) void * +_dl_mmap (void * start, int length, int prot, int flags, int fd, + int offset) +{ + register long __sc3 __asm__ ("r3") = 90; + register long __sc4 __asm__ ("r4") = (long) start; + register long __sc5 __asm__ ("r5") = (long) length; + register long __sc6 __asm__ ("r6") = (long) prot; + register long __sc7 __asm__ ("r7") = (long) flags; + register long __sc0 __asm__ ("r0") = (long) fd; + register long __sc1 __asm__ ("r1") = (long) offset; + __asm__ __volatile__ ("trapa %1" + : "=z" (__sc0) + : "i" (0x10 + 6), "0" (__sc0), "r" (__sc4), + "r" (__sc5), "r" (__sc6), "r" (__sc7), + "r" (__sc3), "r" (__sc1) + : "memory" ); +} + +extern int _dl_pagesize; +void +_dl_dprintf(int fd, const char *fmt, ...) +{ + static char *buf; + buf = _dl_mmap ((void *) 0, _dl_pagesize, 0x1 | 0x2, 0x02 | 0x20, -1, 0); +}