layers: Do renderpass dag validation before call

Previously this would contribute to skip /after/ the call, which
accomplishes nothing.
diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp
index 755699b..444f5e0 100644
--- a/layers/core_validation.cpp
+++ b/layers/core_validation.cpp
@@ -9135,6 +9135,12 @@
     // TODO: As part of wrapping up the mem_tracker/core_validation merge the following routine should be consolidated with
     //       ValidateLayouts.
     skip |= ValidateRenderpassAttachmentUsage(dev_data, pCreateInfo);
+
+    std::vector<bool> has_self_dependency(pCreateInfo->subpassCount);
+    std::vector<DAGNode> subpass_to_node(pCreateInfo->subpassCount);
+    std::vector<int32_t> subpass_to_dep_index(pCreateInfo->subpassCount);
+    skip |= CreatePassDAG(dev_data, pCreateInfo, subpass_to_node, has_self_dependency, subpass_to_dep_index);
+
     for (uint32_t i = 0; i < pCreateInfo->dependencyCount; ++i) {
         auto const &dependency = pCreateInfo->pDependencies[i];
         skip |= ValidateStageMaskGsTsEnables(dev_data, dependency.srcStageMask, "vkCreateRenderPass()", VALIDATION_ERROR_13e006b8,
@@ -9170,11 +9176,6 @@
     if (VK_SUCCESS == result) {
         lock.lock();
 
-        std::vector<bool> has_self_dependency(pCreateInfo->subpassCount);
-        std::vector<DAGNode> subpass_to_node(pCreateInfo->subpassCount);
-        std::vector<int32_t> subpass_to_dep_index(pCreateInfo->subpassCount);
-        skip |= CreatePassDAG(dev_data, pCreateInfo, subpass_to_node, has_self_dependency, subpass_to_dep_index);
-
         auto render_pass = std::make_shared<RENDER_PASS_STATE>(pCreateInfo);
         render_pass->renderPass = *pRenderPass;
         render_pass->hasSelfDependency = has_self_dependency;