From 5401d6c2e26983f080566a507927054c07cc8015 Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Wed, 30 Nov 2016 12:45:00 +1300 Subject: layers: Require precision to match on interface between stages Signed-off-by: Chris Forbes --- layers/core_validation.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'layers/core_validation.cpp') diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp index ed32c5a4..f6fb7b0f 100644 --- a/layers/core_validation.cpp +++ b/layers/core_validation.cpp @@ -1732,6 +1732,16 @@ static bool validate_interface_between_stages(debug_report_data *report_data, sh pass = false; } } + if (a_it->second.is_relaxed_precision != b_it->second.is_relaxed_precision) { + if (log_msg(report_data, VK_DEBUG_REPORT_ERROR_BIT_EXT, VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT, /*dev*/ 0, + __LINE__, SHADER_CHECKER_INTERFACE_TYPE_MISMATCH, "SC", + "Decoration mismatch on location %u.%u: %s and %s stages differ in precision", + a_first.first, a_first.second, + producer_stage->name, + consumer_stage->name)) { + pass = false; + } + } a_it++; b_it++; } -- cgit v1.2.3