SPNU151W January 1998 – March 2023 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , AM1705 , AM1707 , AM1802 , AM1806 , AM1808 , AM1810 , AM5K2E04 , OMAP-L132 , OMAP-L137 , OMAP-L138 , SM470R1B1M-HT , TMS470R1A288 , TMS470R1A384 , TMS470R1A64 , TMS470R1B1M , TMS470R1B512 , TMS470R1B768
Following are detailed descriptions of miscellaneous options:
--advice:power={all|none| rulespec} |
Enables checking code against ULP (ultra low power) Advisor rules for possible power inefficiencies. More detailed information can be found at www.ti.com/ulpadvisor. The rulespec parameter is a comma-separated list of specifiers. See Section 5.4 for details. |
--advice:power_severity={error| warning|remark|suppress} |
Sets the diagnostic severity for ULP Advisor rules. |
--check_misra={all|required| advisory|none|rulespec} |
Displays the specified amount or type of MISRA-C documentation. This option must be used if you want to enable use of the CHECK_MISRA and RESET_MISRA pragmas within the source code. The rulespec parameter is a comma-separated list of specifiers. See Section 5.3 for details. |
--float_operations_allowed= {none|all|32|64} | Restricts types of floating point operations allowed. The default is all. If set to none, 32, or 64, the application is checked for operations performed at runtime. For example, if --float_operations_allowed=32 is specified on the command line, the compiler issues an error if a double precision operation will be generated. This can be used to ensure that double precision operations are not accidentally introduced into an application. The checks are performed after relaxed mode optimizations have been performed, so illegal operations that are completely removed result in no diagnostic messages. |
--fp_mode={relaxed|strict} | The
default floating-point mode is strict. To enable relaxed
floating-point mode use the --fp_mode=relaxed option. Relaxed
floating-point mode causes double-precision floating-point
computations and storage to be converted to single-precision
floating-point where possible. This behavior does not conform with
ISO, but it results in faster code, with some loss in accuracy. The
following specific changes occur in relaxed mode:
|
--fp_reassoc={on|off} | Enables or disables the reassociation of floating-point arithmetic. If --fp_mode=relaxed is specified, --fp_reassoc=on is set automatically. If --strict_ansi is set, --fp_reassoc=off is set since reassociation of floating-point arithmetic is an ANSI violation. |
Because floating-point values are of limited precision, and because floating-point operations round, floating-point arithmetic is neither associative nor distributive. For instance, (1 + 3e100) - 3e100 is not equal to 1 + (3e100 - 3e100). If strictly following IEEE 754, the compiler cannot, in general, reassociate floating-point operations. Using --fp_reassoc=on allows the compiler to perform the algebraic reassociation, at the cost of a small amount of precision for some operations. | |
--misra_advisory={error| warning|remark|suppress} |
Sets the diagnostic severity for advisory MISRA-C:2004 rules. |
--misra_required={error| warning|remark|suppress} |
Sets the diagnostic severity for required MISRA-C:2004 rules. |
--preinclude=filename | Includes the source code of filename at the beginning of the compilation. This can be used to establish standard macro definitions. The filename is searched for in the directories on the include search list. The files are processed in the order in which they were specified. |
--printf_support={full| nofloat|minimal} |
Enables support for smaller, limited versions of the printf
function family (sprintf, fprintf, etc.) and the scanf function
family (sscanf, fscanf, etc.) run-time-support functions. The valid
values are:
|
There is no run-time error checking to detect if a format specifier is used for which support is not included. The --printf_support option precedes the --run_linker option, and must be used when performing the final link. | |
--sat_reassoc={on|off} | Enables or disables the reassociation of saturating arithmetic. |