XL Fortran: Compiler Reference -Qmbcs
Total Page:16
File Type:pdf, Size:1020Kb
IBM XL Fortran for AIX, V16.1 IBM Compiler Reference Version 16.1 SC27-8061-00 IBM XL Fortran for AIX, V16.1 IBM Compiler Reference Version 16.1 SC27-8061-00 Note Before using this information and the product it supports, read the information in “Notices” on page 425. First edition This edition applies to IBM XL Fortran for AIX, V16.1 (Program 5765-J14, 5725-C74) and to all subsequent releases and modifications until otherwise indicated in new editions. Make sure you are using the correct edition for the level of the product. © Copyright IBM Corporation 1990, 2018. US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. Contents About this document ........ vii Specifying options on the command line.... 25 Who should read this document ....... vii Specifying options in the source file ..... 26 How to use this document ......... vii Passing command-line options to the "ld" or "as" How this document is organized ....... vii command .............. 27 Conventions .............. viii Compiling XL Fortran programs ....... 28 Related information ........... xii Compilation scenarios .......... 30 Available help information ........ xii Compilation order for Fortran programs.... 35 Standards and specifications ....... xiv Canceling a compilation ......... 35 Technical support ............ xiv Compilation with the C preprocessor ..... 36 How to send your comments ........ xv Linking XL Fortran programs ........ 38 Compiling and linking in separate steps .... 38 Chapter 1. Introduction ........ 1 Linking 32-bit SMP object files using the ld command .............. 38 Linking 64-bit SMP object files using the ld Chapter 2. Overview of XL Fortran command .............. 39 features ............... 3 Linking 32-bit non-SMP object files using the ld Hardware and operating-system support ..... 3 command .............. 40 Language support ............ 3 Linking 64-bit non-SMP object files using the ld Source-code conformance checking ....... 4 command .............. 41 Highly configurable compiler ......... 4 Passing options to the ld command ..... 41 Diagnostic listings ............ 6 Checking for interface errors at link time ... 41 Symbolic debugger support ......... 6 Linking new objects with existing ones .... 41 Program optimization ........... 6 Relinking an existing executable file ..... 42 Dynamic and static linking ........ 43 Chapter 3. Setting up and customizing Avoiding naming conflicts during linking ... 43 XL Fortran.............. 7 Running XL Fortran programs ........ 44 Where to find installation instructions ...... 7 Canceling execution .......... 44 Correct settings for environment variables .... 7 Running previously compiled programs .... 45 Environment variable basics ........ 7 Compiling and executing on different systems.. 45 Environment variables for national language POSIX Pthreads binary compatibility ..... 45 support ............... 8 Runtime libraries for POSIX pthreads support .. 46 IPA environment variables ......... 9 Selecting the language for runtime messages .. 47 LIBPATH: Setting library search paths ..... 9 Setting runtime options ......... 47 Profile-directed feedback environment variables 10 Other environment variables that affect runtime TMPDIR: Specifying a directory for temporary behavior ............... 59 files ................ 11 XL Fortran runtime exceptions ........ 59 XLFSCRATCH_unit: Specifying names for scratch files ................ 11 Chapter 5. Tracking and reporting XLFUNIT_unit: Specifying names for implicitly compiler usage ........... 61 connected files ............ 11 Using the utilization reporting tool ...... 61 Using custom compiler configuration files .... 11 Understanding utilization tracking and reporting 61 Creating custom configuration files ..... 12 Preparing to use this feature........ 70 Editing the default configuration file ...... 15 Testing utilization tracking ........ 74 Configuration file attributes ........ 16 Configuring utilization tracking ...... 75 Determining which level of XL Fortran is installed 19 Understanding the utilization reporting tool .. 79 Running two levels of XL Fortran ....... 19 Generating usage reports ......... 83 Pruning usage files ........... 86 Chapter 4. Editing, compiling, linking, Diagnostic messages from utilization tracking and running XL Fortran programs ... 21 and reporting............. 87 Input and output files ........... 21 Using SLM Tags logging .......... 87 XL Fortran input files .......... 21 Understanding SLM Tags logging ...... 87 XL Fortran output files ......... 23 Setting up SLM Tags logging ....... 89 Editing XL Fortran source files ........ 24 Specifying compiler options ......... 25 Scope and precedence of option settings .... 25 © Copyright IBM Corp. 1990, 2018 iii Chapter 6. Summary of compiler -qci................. 165 options by functional category .... 91 -qcompact .............. 166 Output control ............. 91 -qcr................. 167 Input control .............. 92 -qctyplss ............... 167 Language element control ......... 94 -qdbg ................ 169 Floating-point and integer control ....... 96 -qdbgfmt ............... 170 Object code control ............ 97 -qddim ............... 171 Error checking and debugging ........ 98 -qdescriptor .............. 172 Listings, messages, and compiler information... 100 -qdirective .............. 174 Optimization and tuning ......... 102 -qdirectstorage ............. 175 Linking ............... 105 -qdlines ............... 176 Portability and migration ......... 107 -qdpc ................ 177 Compiler customization .......... 108 -qdpcl ................ 178 Deprecated options ........... 109 -qenum ............... 179 -qescape ............... 179 Chapter 7. Detailed descriptions of the -qessl ................ 181 -qexpfile ............... 182 XL Fortran compiler options ..... 111 -qextchk ............... 182 -# ................. 112 -qextern ............... 183 -1 ................. 113 -qextname .............. 184 -B ................. 113 -qfdpr ................ 186 -b64 ................ 114 -qfixed ............... 187 -bdynamic, -bshared, and -bstatic ....... 115 -qflag ................ 188 -bhalt ................ 116 -qfloat ................ 189 -bloadmap .............. 117 -qfpp ................ 194 -bmaxdata, -bmaxstack .......... 118 -qflttrap ............... 195 -brtl ................ 119 -qfree ................ 197 -bshared ............... 120 -qfullpath .............. 198 -bstatic ............... 120 -qfunctrace .............. 199 -C ................. 120 -qfunctrace_xlf_catch ........... 201 -c ................. 121 -qfunctrace_xlf_enter ........... 202 -D ................. 121 -qfunctrace_xlf_exit ........... 203 -d ................. 123 -qhalt ................ 204 -e ................. 123 -qhaltonmsg .............. 205 -F ................. 124 -qhelp ................ 206 -g ................. 126 -qhot ................ 206 -G ................. 129 -qieee ................ 209 -I ................. 129 -qinfo ................ 210 -k ................. 130 -qinit ................ 215 -L ................. 131 -qinitalloc .............. 215 -l ................. 132 -qinitauto............... 217 -MF ................ 133 -qinlglue ............... 220 -MMD................ 134 -qinline ............... 221 -MT ................ 134 -qintlog ............... 223 -NS................. 136 -qintsize ............... 224 -O ................. 136 -qipa ................ 226 -o ................. 139 -qkeepparm .............. 233 -p ................. 140 -qlanglvl ............... 234 -q32 ................ 141 -qlargepage .............. 236 -q64 ................ 142 -qlibansi ............... 237 -qalias ................ 143 -qlibessl ............... 238 -qalias_size .............. 146 -qlibmpi ............... 238 -qalign ............... 147 -qlibposix............... 239 -qarch ................ 149 -qlinedebug .............. 240 -qassert ............... 152 -qlist ................ 241 -qattr ................ 154 -qlistfmt ............... 242 -qautodbl............... 155 -qlistopt ............... 245 -qbindcextname ............ 157 -qlog4 ................ 246 -qcache ............... 158 -qmakedep .............. 246 -qcclines ............... 161 -qmaxerr ............... 249 -qcheck ............... 161 -qmaxmem .............. 250 iv XL Fortran: Compiler Reference -qmbcs ............... 252 -qxlf77................ 333 -qminimaltoc ............. 253 -qxlf90................ 335 -qmixed ............... 253 -qxlf2003 ............... 337 -qmkshrobj .............. 254 -qxlf2008 ............... 341 -qmoddir ............... 256 -qxlines ............... 341 -qmodule............... 256 -qxref ................ 343 -qnoprint ............... 257 -qzerosize .............. 344 -qnullterm .............. 258 -r ................. 345 -qobject ............... 259 -S ................. 346 -qonetrip ............... 260 -t ................. 346 -qoptdebug .............. 260 -U ................. 348 -qoptfile ............... 262 -u ................. 349 -qoptimize .............. 264 -v ................. 349 -qpath ................ 264 -V ................. 350 -qpdf1, -qpdf2 ............. 266 -w ................. 350 -qphsinfo ............... 270 -W, -X ................ 351 -qpic ................ 272 -y ................. 352 -qport ................ 273 -qposition .............. 275 Chapter 8. Compiler commands -qppsuborigarg ............. 277 reference ............. 355 -qprefetch .............. 278 cleanpdf ............... 355 -qpreprocess.............