PGI Visual Fortran Reference Manual
Total Page:16
File Type:pdf, Size:1020Kb
® PGI Visual Fortran Reference Manual Parallel Fortran for Scientists and Engineers Release 2013 The Portland Group PGI Visual Fortran® Reference Manual Copyright © 2013 NVIDIA Corporation All rights reserved. Printed in the United States of America First printing: Release 2011, 11.0, December, 2010 Second Printing: Release 2011, 11.1, January 2011 Third Printing: Release 2011, 11.3, March 2011 Fourth Printing: Release 2011, 11.4, April 2011 Fifth Printing: Release 2011, 11.5, May 2011 Sixth Printing: Release 2012, 12.1, January 2012 Seventh Printing: Release 2012, 12.6, June 2012 Eighth Printing: Release 2012, 12.9, September 2012 Ninth Printing: Release 2013, 13.1, January 2013 Tenth Printing: Release 2013, 13.2, February 2013 Eleventh Printing: Release 2013, 13.3, March 2013 Twelfth Printing: Release 2013, 13.8, August 2013 Technical support: [email protected] Sales: [email protected] Web: www.pgroup.com ID: 132831548 Contents Preface ...................................................................................................................................... xv Audience Description ............................................................................................................. xv Compatibility and Conformance to Standards ............................................................................. xv Organization ......................................................................................................................... xvi Hardware and Software Constraints ......................................................................................... xvi Conventions ......................................................................................................................... xvii Related Publications .............................................................................................................. xix 1. Fortran Data Types ............................................................................................................ 1 Fortran Data Types .................................................................................................................. 1 Fortran Scalars ............................................................................................................... 1 FORTRAN 77 Aggregate Data Type Extensions ...................................................................... 3 Fortran 90 Aggregate Data Types (Derived Types) ................................................................ 4 2. Command-Line Options Reference ................................................................................. 5 PGI Compiler Option Summary ................................................................................................. 5 Build-Related PGI Options ................................................................................................ 6 PGI Debug-Related Compiler Options ................................................................................ 8 PGI Optimization-Related Compiler Options ........................................................................ 9 PGI Linking and Runtime-Related Compiler Options ............................................................. 9 Generic PGI Compiler Options ................................................................................................ 10 –M Options by Category ......................................................................................................... 48 Code Generation Controls ............................................................................................... 48 Environment Controls .................................................................................................... 52 Fortran Language Controls ............................................................................................. 53 Inlining Controls ........................................................................................................... 58 Optimization Controls .................................................................................................... 59 Miscellaneous Controls .................................................................................................. 70 3. Directives Reference ........................................................................................................ 77 PGI Proprietary Fortran Directive Summary .............................................................................. 77 altcode (noaltcode) ..................................................................................................... 78 assoc (noassoc) ........................................................................................................... 79 iii bounds (nobounds) ..................................................................................................... 79 cncall (nocncall) .......................................................................................................... 79 concur (noconcur) ...................................................................................................... 79 depchk (nodepchk) ...................................................................................................... 79 eqvchk (noeqvchk) ...................................................................................................... 79 invarif (noinvarif) ......................................................................................................... 80 ivdep ........................................................................................................................... 80 lstval (nolstval) ............................................................................................................. 80 prefetch ....................................................................................................................... 80 opt .............................................................................................................................. 80 safe_lastval ................................................................................................................... 80 tp ................................................................................................................................ 82 unroll (nounroll) .......................................................................................................... 82 vector (novector) .......................................................................................................... 83 vintr (novintr) .............................................................................................................. 83 Prefetch Directives ............................................................................................................... 83 IGNORE_TKR Directive .......................................................................................................... 83 !DEC$ Directives ................................................................................................................... 84 ALIAS Directive ............................................................................................................. 85 ATTRIBUTES Directive .................................................................................................... 86 DECORATE Directive ...................................................................................................... 87 DISTRIBUTE Directive .................................................................................................... 87 4. Run-time Environment .................................................................................................... 89 Win32 Programming Model .................................................................................................... 89 Function Calling Sequence .............................................................................................. 89 Function Return Values .................................................................................................. 92 Argument Passing .......................................................................................................... 93 Win64 Programming Model .................................................................................................... 96 Function Calling Sequence .............................................................................................. 96 Function Return Values .................................................................................................. 98 Argument Passing .......................................................................................................... 99 Win64 Fortran Supplement ........................................................................................... 101 5. PVF Properties ................................................................................................................ 107 Property Page Summary ....................................................................................................... 108 General Property Page ......................................................................................................... 126 Output Directory ......................................................................................................... 126 Intermediate Directory ................................................................................................. 126 Extensions to Delete on Clean ......................................................................................