Contents

About this document

  • Who should read this document
  • How to use this document
  • Conventions used in this document
  • Typographical conventions
  • Icons
  • How to read syntax diagrams
  • Examples
  • Other publications
  • Configuring the compiler

  • Setting environment variables
  • General environment variables
  • Environment variables for parallel processing
  • Customizing the configuration file
  • Configuration file attributes
  • Compiling and linking applications

  • Invoking the compiler
  • Selecting an invocation command
  • Invocation syntax
  • Types of input files
  • Types of output files
  • Specifying compiler options
  • Specifying compiler options on the command line
  • Specifying compiler options in a configuration file
  • Specifying compiler options in program source files
  • Resolving conflicting compiler options
  • Specifying compiler options for architecture-specific, 32-bit or 64-bit compilation
  • Preprocessing
  • Specifying path names for include files
  • Linking
  • Order of linking
  • Compiler messages and listings
  • Compiler messages
  • Compiler listings
  • Compiler return codes
  • Message catalog errors
  • Paging space errors during compilation
  • Compiler options reference

  • Summary of compiler options by functional category
  • Options that control input
  • Options that control output
  • Options for performance optimization
  • Options for error checking and debugging
  • Options that control listings and messages
  • Options for compatibility
  • Options that control integer and floating-point processing
  • Options that control linking
  • Options for customizing the compiler
  • Individual option descriptions
  • -+ (plus sign)
  • -# (pound sign)
  • -q32, -q64
  • -qabi_version
  • -qaggrcopy
  • -qalias
  • -qalign
  • -qalloca
  • -qaltivec
  • -qarch
  • -qasm
  • -qasm_as
  • -qattr
  • -B
  • -qbigdata
  • -qbitfields
  • -C
  • -c
  • -qc_stdinc
  • -qcache
  • -qchars
  • -qcheck
  • -qcinc
  • -qcompact
  • -qcomplexgccincl
  • -qcpluscmt
  • -qcpp_stdinc
  • -qcrt
  • -D
  • -qdataimported
  • -qdatalocal
  • -qdbxextra
  • -qdigraph
  • -qdirectstorage
  • -qdollar
  • -qdump_class_hierarchy
  • -E
  • -e
  • -qeh
  • -qenablevmx
  • -qenum
  • -F
  • -qflag
  • -qfloat
  • -qflttrap
  • -qformat
  • -qfullpath
  • -qfuncsect
  • -g
  • -qgcc_c_stdinc
  • -qgcc_cpp_stdinc
  • -qgenproto
  • -qhalt
  • -qhaltonmsg
  • -qhot
  • -I
  • -qidirfirst
  • -qignerrno
  • -qignprag
  • -qinfo
  • -qinitauto
  • -qinlglue
  • -qinline
  • -qipa
  • -qisolated_call
  • -qkeepinlines
  • -qkeepparm
  • -qkeyword
  • -L
  • -l
  • -qlanglvl
  • -qlib
  • -qlibansi
  • -qlinedebug
  • -qlist
  • -qlistopt
  • -qlonglit
  • -qlonglong
  • -M
  • -ma
  • -MF
  • -qmakedep
  • -qmaxerr
  • -qmaxmem
  • -qmbcs, -qdbcs
  • -qminimaltoc
  • -qmkshrobj
  • -O, -qoptimize
  • -o
  • -P
  • -p
  • -qpath
  • -qpdf1, -qpdf2
  • -pg
  • -qphsinfo
  • -qpic
  • -qppline
  • -qprefetch
  • -qprint
  • -qpriority
  • -qproclocal, -qprocimported, -qprocunknown
  • -qproto
  • -Q
  • -R
  • -r
  • -qreport
  • -qreserved_reg
  • -qro
  • -qroconst
  • -qrtti
  • -S
  • -s
  • -qsaveopt
  • -qshowinc
  • -qshowpdf
  • -qsmallstack
  • -qsmp
  • -qsource
  • -qsourcetype
  • -qspill
  • -qsrcmsg
  • -qstaticinline
  • -qstaticlink
  • -qstatsym
  • -qstdinc
  • -qstrict
  • -qstrict_induction
  • -qsuppress
  • -qsymtab
  • -qsyntaxonly
  • -t
  • -qtabsize
  • -qtbtable
  • -qtempinc
  • -qtemplaterecompile
  • -qtemplateregistry
  • -qtempmax
  • -qthreaded
  • -qtls
  • -qtmplinst
  • -qtmplparse
  • -qtocdata
  • -qtrigraph
  • -qtune
  • -U
  • -qunroll
  • -qunwind
  • -qupconv
  • -qutf
  • -V
  • -v
  • -qversion
  • -qvftable
  • -qvrsave
  • -W
  • -w
  • -qwarn64
  • -qxcall
  • -qxref
  • -y
  • Acceptable compiler mode and processor architecture combinations
  • Reusing GNU C/C++ compiler options with glxc and glxc++

  • glxc and glxc++ syntax
  • Configuring the option mapping
  • Compiler pragmas reference

  • Summary of XL C/C++ pragmas
  • Summary of OpenMP pragma directives
  • Individual pragma descriptions
  • #pragma align
  • #pragma alloca
  • #pragma altivec_vrsave
  • #pragma block_loop
  • #pragma chars
  • #pragma comment
  • #pragma complexgcc
  • #pragma define
  • #pragma disjoint
  • #pragma do_not_instantiate
  • #pragma enum
  • #pragma execution_frequency
  • #pragma hashome
  • #pragma ibm snapshot
  • #pragma implementation
  • #pragma info
  • #pragma instantiate
  • #pragma ishome
  • #pragma isolated_call
  • #pragma langlvl
  • #pragma leaves
  • #pragma loop_id
  • #pragma map
  • #pragma mc_func
  • #pragma nosimd
  • #pragma novector
  • #pragma options
  • #pragma option_override
  • #pragma pack
  • #pragma priority
  • #pragma reachable
  • #pragma reg_killed_by
  • #pragma report
  • #pragma STDC cx_limited_range
  • #pragma stream_unroll
  • #pragma strings
  • #pragma unroll
  • #pragma unrollandfuse
  • #pragma weak
  • Pragma directives for parallel processing
  • #pragma omp atomic
  • #pragma omp parallel
  • #pragma omp for
  • #pragma omp ordered
  • #pragma omp parallel for
  • #pragma omp section, #pragma omp sections
  • #pragma omp parallel sections
  • #pragma omp single
  • #pragma omp master
  • #pragma omp critical
  • #pragma omp barrier
  • #pragma omp flush
  • #pragma omp threadprivate
  • Predefined macros

  • Macros related to language features
  • Macros indicating the XL C/C++ compiler
  • Macros related to the Linux platform
  • Built-in functions for POWER and PowerPC architectures

  • Fixed-point built-in functions
  • Floating-point built-in functions
  • Synchronization and atomic built-in functions
  • Cache-related built-in functions
  • Block-related built-in functions
  • Miscellaneous built-in functions
  • Built-in functions for parallel processing
  • Appendix A. Redistributable libraries

    Appendix B. ASCII character set

    Index