These are the flags that are universally supplied by the tools harness.
Selecting one of the following will take you directly to that section:
Definition of this macro indicates that compilation for parallel operation is disabled, and that any OpenMP directives or pragmas will not be visible to the compiler. This macro overrides the behavior of -DSPEC_OPENMP when they both appear in the list of compilation flags.
Definition of this macro indicates that compilation for parallel operation is enabled, and that any OpenMP directives or pragmas will be visible to the compiler. The behavior of this macro is overridden if -DSPEC_SUPPRESS_OPENMP also appears in the list of compilation flags.
This option is used to indicate that the host system's integers, longs, and pointers are 32-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers and longs, are 32-bits wide, and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers are 32-bits wide, and longs and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This option is used to indicate that the host system's integers, longs, and pointers are 64-bits wide. Not all benchmarks recognize this macro, but the preferred practice for data model selection applies the flags to all benchmarks; this flag description is a placeholder for those benchmarks that do not recognize this macro.
This flag may be used when the byte order of the system being benchmarked differs from the byte order which with the tools were built.
The preprocessor macro SPEC is defined for all benchmarks compiled by the CPU2017 tools harness.
The preprocessor macro SPEC_CPU was previously defined for all benchmarks compiled by the CPU2017 tools harness. It no longer is, but this flag definition is left so that older results may be formatted without running into "unknown flags" errors.
The preprocessor macro NDEBUG is defined for all benchmarks compiled by the CPU2017 tools harness. It is used to disable asserts() in codes that use them.
The preprocessor macro SPEC_WINDOWS is defined for all benchmarks compiled by the CPU2017 tools harness on Microsoft Windows systems.
This flag is automatically provided by the tools for some benchmarks. It is used to communicate to the benchmark source code the byte order that was in effect when the tools were built. In cases when this byte order clue is incorrect for the target system, its action can be disabled by using -DSPEC_NO_AUTO_BYTEORDER.
This is a part of the default setting for OBJOPT for all platforms. It causes an object file to be generated from source.
This option is used to specify the name of the output file on non-Windows platforms.
This is the default setting for MATHLIBOPT on non-Windows platforms.
This option is used to specify the name of the output object file on Windows platforms.
This option is used to specify the name of the output executable on Windows platforms.
This flag indicates that the compiler should search the current directory for header files.
This flag indicates that the compiler should search the directory containing common sources for header files.
This flag indicates that the benchmark should use the SPEC in-memory I/O shim.
This flag specifies the directory that holds the header files for the SPEC in-memory I/O shim.
This flag specifies the directory that holds the header files for the common MD5 hash implementation.
This flag specifies the directory that holds the header files for the common SHA-512 hash implementation.
This flag specifies the directory that holds the header files for the common Mersenne-Twister implementation.
This flag specifies the directory that holds the header files for the common PNG library.
This flag specifies the directory that holds the header files for the common zlib library.
This flag enables word-boundaries in the specpp source preprocessor.
This flag selects the "literal" preprocessor module for the specpp source preprocessor. This module allows literal strings to pass through the preprocessor without any macros in the string being replaced.
This flag selects the "c-comment" preprocessor module for the specpp source preprocessor. This module allows C- and C++-style comments to be used in the Fortran sources by removing them from the code that is presented to the compiler.
Definition of this macro indicates that compilation for parallel operation is disabled, and that any OpenMP directives or pragmas will not be visible to the compiler. This variant has the same behavior as SPEC_SUPPRESS_OPENMP and is only used by the benchmark harness. Users must use SPEC_SUPPRESS_OPENMP.