P4 to Git Change 1442246 by bsumner@bsumner-lin-opencl on 2017/08/01 16:04:23

SWDEV-128916 - use AMD_GPU_FORCE_SINGLE_FP_DENORM in determining daz_opt library control

Affected files ...

... //depot/stg/opencl/drivers/opencl/runtime/device/pal/palprogram.cpp#41 edit
... //depot/stg/opencl/drivers/opencl/runtime/device/rocm/rocprogram.cpp#67 edit
Этот коммит содержится в:
foreman
2017-08-01 16:19:37 -04:00
родитель 5cf9593233
Коммит a8f8ab14f0
2 изменённых файлов: 6 добавлений и 10 удалений
+3 -8
Просмотреть файл
@@ -1382,8 +1382,9 @@ bool LightningProgram::linkImpl(amd::option::Options* options) {
Data* correctly_rounded_sqrt_bc = C->NewBufferReference(DT_LLVM_BC, correctly_rounded_sqrt.first,
correctly_rounded_sqrt.second);
auto daz_opt =
get_oclc_daz_opt(dev().hwInfo()->gfxipVersion_ < 900 || options->oVariables->DenormsAreZero);
auto daz_opt = get_oclc_daz_opt(!AMD_GPU_FORCE_SINGLE_FP_DENORM &&
(dev().hwInfo()->gfxipVersion_ < 900 ||
options->oVariables->DenormsAreZero));
Data* daz_opt_bc = C->NewBufferReference(DT_LLVM_BC, daz_opt.first, daz_opt.second);
auto finite_only = get_oclc_finite_only(options->oVariables->FiniteMathOnly ||
@@ -1394,12 +1395,6 @@ bool LightningProgram::linkImpl(amd::option::Options* options) {
options->oVariables->FastRelaxedMath);
Data* unsafe_math_bc = C->NewBufferReference(DT_LLVM_BC, unsafe_math.first, unsafe_math.second);
if (!correctly_rounded_sqrt_bc || !daz_opt_bc || !finite_only_bc || !unsafe_math_bc) {
buildLog_ += "Error: Failed to open the control functions.\n";
return false;
}
if (!correctly_rounded_sqrt_bc || !daz_opt_bc || !finite_only_bc || !unsafe_math_bc) {
buildLog_ += "Error: Failed to open the control functions.\n";
return false;
+3 -2
Просмотреть файл
@@ -678,8 +678,9 @@ bool HSAILProgram::linkImpl_LC(amd::option::Options* options) {
Data* correctly_rounded_sqrt_bc = C->NewBufferReference(DT_LLVM_BC, correctly_rounded_sqrt.first,
correctly_rounded_sqrt.second);
auto daz_opt = get_oclc_daz_opt(dev().deviceInfo().gfxipVersion_ < 900 ||
options->oVariables->DenormsAreZero);
auto daz_opt = get_oclc_daz_opt(!AMD_GPU_FORCE_SINGLE_FP_DENORM &&
(dev().deviceInfo().gfxipVersion_ < 900 ||
options->oVariables->DenormsAreZero));
Data* daz_opt_bc = C->NewBufferReference(DT_LLVM_BC, daz_opt.first, daz_opt.second);
auto finite_only = get_oclc_finite_only(options->oVariables->FiniteMathOnly ||