public static interface CLProgram.CompilerOptions
Modifier and Type | Field and Description |
---|---|
static String |
DENORMS_ARE_ZERO
This option controls how single precision and double precision denormalized numbers are handled.
|
static String |
DISABLE_OPT
This option disables all optimizations.
|
static String |
DISABLE_WARNINGS
Inhibit all warning messages.
|
static String |
ENABLE_MAD
Allow a * b + c to be replaced by a mad.
|
static String |
FAST_RELAXED_MATH
Sets the optimization options -cl-finite-math-only (
FINITE_MATH_ONLY ) and -cl-unsafe-math-optimizations (UNSAFE_MATH ). |
static String |
FINITE_MATH_ONLY
Allow optimizations for floating-point arithmetic that assume that arguments and results are not NaNs or plus/minus infinity.
|
static String |
NO_SIGNED_ZEROS
Allow optimizations for floating-point arithmetic that ignore the signedness of zero.
|
static String |
SINGLE_PRECISION_CONSTANTS
Treat double precision floating-point constant as single precision constant.
|
static String |
STRICT_ALIASING
This option allows the compiler to assume the strictest aliasing rules.
|
static String |
UNSAFE_MATH
Allow optimizations for floating-point arithmetic that
(a) assume that arguments and results are valid, (b) may violate IEEE 754 standard and (c) may violate the OpenCL numerical compliance requirements as defined in section 7.4 for single-precision floating-point, section 9.3.9 for double-precision floating-point, and edge case behavior in section 7.5. |
static String |
WARNINGS_ARE_ERRORS
Make all warnings into errors.
|
static final String SINGLE_PRECISION_CONSTANTS
static final String DENORMS_ARE_ZERO
CLDevice.FPConfig.DENORM
is not present in the set returned by CLDevice.getSingleFPConfig()
CLDevice.FPConfig.DENORM
is not present in the set returned by CLDevice.getDoubleFPConfig()
.static final String DISABLE_OPT
static final String STRICT_ALIASING
static final String ENABLE_MAD
static final String NO_SIGNED_ZEROS
FINITE_MATH_ONLY
)).
This option implies that the sign of a zero result isn't significant.static final String UNSAFE_MATH
NO_SIGNED_ZEROS
)
and -cl-mad-enable (ENABLE_MAD
) options.static final String FINITE_MATH_ONLY
static final String FAST_RELAXED_MATH
FINITE_MATH_ONLY
) and -cl-unsafe-math-optimizations (UNSAFE_MATH
).
This allows optimizations for floating-point arithmetic that may violate the IEEE 754
standard and the OpenCL numerical compliance requirements defined in the specification
in section 7.4 for single-precision floating-point, section 9.3.9 for double-precision
floating-point, and edge case behavior in section 7.5. This option causes the preprocessor
macro __FAST_RELAXED_MATH__ to be defined in the OpenCL program.static final String DISABLE_WARNINGS
static final String WARNINGS_ARE_ERRORS