FLAG DESCRIPTIONS SUN C AND FORTRAN SC5.0 (alpha.111297) -dalign Assume double-type data is double aligned -[no]depend [Disable] Enable all dependence based transformations -dn Specify static binding -fsimple[=] Allow the optimizer to use mathematically equivalent expressions. The parameter n determines the aggressiveness of these optimizations. -libmil Use inline expansion templates for libm -xO4 Generate optimized code. See -O4 below. -xO5 Generate optimized code. See -O5 below. -pad local variables or common blocks, or both, for efficient use of the cache -[x]pad=local[:] Pad local variables only, for better use of cache. n specifies the amount of padding to apply. If no parameter is specified then the compiler selects one automatically. -[x]pad=common[:] Pad common block variables, for better use of cache. n specifies the ammount of padding to apply. If no parameter is specified then the compiler selects one automatically. -unroll= Suggestion to optimizer to unroll loops n times -xarch= Limit the set of instructions the compiler may use to (generic,v7,v8a,v8,v8plus,v8plusa) -xcache= Define the cache properties for use by the optimizer -xchip= Define the instruction scheduling properties for use by the optimizer -xcrossfile enable cross-file inlining. -xprofile=use Use data collected for profile feedback -xprofile=collect Collect profile data for feedback directed optimizations. -xparallel Use parallel processing to improve performance -xreduction Parallelize loops containing reductions -xsafe=mem Enables the use of non-faulting loads when used in conjunction with -xarch=v8plus is set, assumes that no memory based traps will occur -fast Fast execution. Select the combination of compilation options that optimizes for speed of execution without excessive compilation time. This is a convenience option, and it chooses: o The -native best machine characteristics option o Optimization level: -O3 o A set of inline expansion templates o The -fsimple option o The -dalign option (SPARC only) o The -xlibmopt option (SPARC only) In Solaris 2.x only, the -fast option includes -fns -ftrap=%none; that is, turn off all trapping. -xO4: Besides what -O3 does, this option does automatic inlining of functions in the same file. The code usually runs faster, but for some code, -O4 makes it run more slowly. -g suppresses automatic inlining. In general, -O4 results in larger code. -xO5 Besides what -xO4 does, enables speculative code motion. -xvector enable vectorization of loops with calls to math routines -xprefetch enable generation of prefetch instructions -xstackvar allocate routine local variables on stack (Fortran) -xrestrict[=f1,...,f2,%all, %none] Treat pointer-valued function parameters as restricted pointers. This command-line option can be used on its own, but is best used with optimization. The default is %none. Specifying -xrestrict is equivalent to specifying -xrestrict=%all. -Qoption Pass flags along to compiler phase: cg Code generator f77pass1 Fortran first pass iropt Internal representation optimizer -W, Pass flags along to compiler phase: 2 Second pass c code generator -Qoption cg -Qms_pipe+nfll= specifies n as the latency of non-floating point load instructions. -Qoption iropt -O4+ansi_alias Assume (more restrictive) ANSI C semantics for pointer aliasing -Qoption iropt -O4+restrict Same as -xrestrict -Qoption iropt -O4+scalarrep disable scalar replacement optimization -Qoption iropt -O4+ddint disable loop interchange -Qoption iropt -O4+algassoc enable floating point reassociation -Qoption iropt -O4+unroll enable aggressive loop unrolling. -Qoption iropt -Si set n as the limit of integer virtual for reg allocation -Qoption iropt -O4+bcopy enable vectorization of copy and memset loops -W2,-fsimple=2 perform aggresive floating point simplification and optimizations. -W2,-Mp Procedures with entry counts equal or greater than n become candidates for inlining. -W2,-Mt The maximum size of a routine body elegible for inlining is limited to n triples. -W2,-Mr maximum code increase due to inlining is limited to n triples -W2,-O4+pde enable aggressive dead code elimination -W2,-O4+cond_elim enable aggresive optimizations of conditional branches -W2,-O4+bopt enable aggresive optimizations of all branches -W2,-O4+bmerge enable branch merge optimizations -W2,-O4+invccexp enable hoisting of invariant branches -W2,-ANSI_S use ANSI semantics for routines with hidden control flow (e.g. setjmp) -W2,-ldstr enable hoisting of load and store instructions -W2,-crit enable optimization of critical control paths -Wc,-Qicache-L1-bsize=4-bbits=7 do L1 instruction cache alignment -Wc,-Qiselect-funcalign= do function entry alignment at n-byte boundaries. -Wc,-Qiselect-sw_pf_tbl_th= Peels the most frequent test branches/cases off a switch until the branch probability reaches less than 1/n. This is effective only when profile feedback is used. -lfast LInk in the fast system libraries.