From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 50286 invoked by alias); 25 Nov 2017 17:31:56 -0000 Mailing-List: contact fortran-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: fortran-owner@gcc.gnu.org Received: (qmail 50268 invoked by uid 89); 25 Nov 2017 17:31:55 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-0.4 required=5.0 tests=AWL,BAYES_00,KAM_LAZY_DOMAIN_SECURITY,KAM_NUMSUBJECT,KB_WAM_FROM_NAME_SINGLEWORD,T_RP_MATCHES_RCVD autolearn=no version=3.3.2 spammy=Hx-languages-length:1192, H*R:D*edu, H*F:D*washington.edu X-Spam-User: qpsmtpd, 2 recipients X-HELO: troutmask.apl.washington.edu Received: from troutmask.apl.washington.edu (HELO troutmask.apl.washington.edu) (128.95.76.21) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sat, 25 Nov 2017 17:31:54 +0000 Received: from troutmask.apl.washington.edu (localhost [127.0.0.1]) by troutmask.apl.washington.edu (8.15.2/8.15.2) with ESMTPS id vAPHVoSq041404 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Sat, 25 Nov 2017 09:31:50 -0800 (PST) (envelope-from sgk@troutmask.apl.washington.edu) Received: (from sgk@localhost) by troutmask.apl.washington.edu (8.15.2/8.15.2/Submit) id vAPHVn1f041403; Sat, 25 Nov 2017 09:31:49 -0800 (PST) (envelope-from sgk) Date: Sat, 25 Nov 2017 17:31:00 -0000 From: Steve Kargl To: Eric Botcazou Cc: gcc-patches@gcc.gnu.org, gfortran Subject: Re: [fortran] Add support for #pragma GCC unroll v3 Message-ID: <20171125173149.GB40985@troutmask.apl.washington.edu> Reply-To: sgk@troutmask.apl.washington.edu References: <1957613.VqFDUkVbj2@polaris> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1957613.VqFDUkVbj2@polaris> User-Agent: Mutt/1.7.2 (2016-11-26) X-IsSubscribed: yes X-SW-Source: 2017-11/txt/msg00163.txt.bz2 On Sat, Nov 25, 2017 at 11:21:49AM +0100, Eric Botcazou wrote: > > this is the (hopefully) final implementation of the support for the unrolling > pragma in the Fortran front-end. However the documentation is still missing > because I don't really know where and under which form to put it. > > Tested on x86_64-suse-linux, OK for the mainline? > Eric, The patch looks ok to me. For documentation, the gfortran manual has 2 sections: 6.1 Extensions implemented in GNU Fortran 7.2 GNU Fortran Compiler Directives 6.1 describes extension covering legacy code and vendor extensions. 7.2 describes other !$GCC directives. Currently, the section is mainly calling conventions (CDECL, STDCALL, etc) and library macroc (DLLEXPORT). These should probably be in 7.2.1 and the UNROLL directive in 7.2.2. I can help with the documentation (although it might take a weekend or two to get done), but need to know sematics. Does the directive apply to only the immediately following loop? Does it apply to all loops that follow the directive? What is the interaction of the directive with -funroll-loops and --param max-unroll-times=4? -- Steve