Regres: Roll dEQP 1.1.6 forward Includes the fix for invalid SPIR-V merge blocks. Removed the temporary patch added in e75a1838. Change-Id: Ibab6c3606077a4b7207884d24bbf1232207d1800 Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/40128 Reviewed-by: Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Tested-by: Ben Clayton <bclayton@google.com>
diff --git a/tests/regres/deqp-patches/fix-cfg-validation.patch b/tests/regres/deqp-patches/fix-cfg-validation.patch deleted file mode 100755 index 7239e60..0000000 --- a/tests/regres/deqp-patches/fix-cfg-validation.patch +++ /dev/null
@@ -1,121 +0,0 @@ -From 93df316eda2325aa2d82647e3ed474d87bff5d48 Mon Sep 17 00:00:00 2001 -From: Alan Baker <alanbaker@google.com> -Date: Mon, 25 Nov 2019 13:03:36 -0500 -Subject: [PATCH] Fix SPIR-V assembly tests with bad cfgs - -* Update SPIR-V assembly tests to not declare a continue target as a -merge block - -Component: Vulkan - -VK-GL-CTS Issue: 2122 - -Affects: -dEQP-VK.spirv_assembly.instruction.graphics.switch_block_order.out_of_order* -dEQP-VK.spirv_assembly.instruction.graphics.opphi.out_of_order* -dEQP-VK.spirv_assembly.instruction.graphics.loop.multi_block_loop_construct* -dEQP-VK.spirv_assembly.instruction.graphics.loop.multi_block_continue_construct* -dEQP-VK.spirv_assembly.instruction.graphics.loop.continue* -dEQP-VK.spirv_assembly.instruction.graphics.loop.break* -dEQP-VK.spirv_assembly.instruction.graphics.loop.return* - -Change-Id: I370331414aae27b53ed79b448b72581e2352c3d7 ---- - -diff --git a/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmInstructionTests.cpp b/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmInstructionTests.cpp -index 2bdbc3f..60cee96 100644 ---- a/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmInstructionTests.cpp -+++ b/external/vulkancts/modules/vulkan/spirv_assembly/vktSpvAsmInstructionTests.cpp -@@ -7560,7 +7560,7 @@ - "%loop = OpLabel\n" - "%ival = OpLoad %i32 %iptr\n" - "%lt_4 = OpSLessThan %bool %ival %c_i32_4\n" -- " OpLoopMerge %exit %switch_exit None\n" -+ " OpLoopMerge %exit %cont None\n" - " OpBranchConditional %lt_4 %switch_entry %exit\n" - - // Merge block for loop. -@@ -7597,6 +7597,8 @@ - "%switch_exit = OpLabel\n" - "%ival_next = OpIAdd %i32 %ival %c_i32_1\n" - " OpStore %iptr %ival_next\n" -+ " OpBranch %cont\n" -+ "%cont = OpLabel\n" - " OpBranch %loop\n" - - "%case1 = OpLabel\n" -@@ -8044,7 +8046,7 @@ - "%loop = OpLabel\n" - "%ival = OpLoad %i32 %iptr\n" - "%lt_4 = OpSLessThan %bool %ival %c_i32_4\n" -- " OpLoopMerge %exit %phi None\n" -+ " OpLoopMerge %exit %cont None\n" - " OpBranchConditional %lt_4 %entry %exit\n" - - "%entry = OpLabel\n" -@@ -8067,6 +8069,8 @@ - - "%phi = OpLabel\n" - "%operand = OpPhi %f32 %c_f32_p4 %case2 %c_f32_p5 %case1 %c_f32_p2 %case0 %c_f32_0 %case3\n" // not in the order of blocks -+ " OpBranch %cont\n" -+ "%cont = OpLabel\n" - "%add = OpFAdd %f32 %val %operand\n" - " OpStore %loc %add\n" - "%ival_next = OpIAdd %i32 %ival %c_i32_1\n" -@@ -9107,9 +9111,9 @@ - - ";adds and subtracts 1.0 to %val in alternate iterations\n" - "%loop = OpLabel\n" -- "%count = OpPhi %i32 %c_i32_4 %entry %count__ %gather\n" -- "%delta = OpPhi %f32 %c_f32_1 %entry %delta_next %gather\n" -- "%val1 = OpPhi %f32 %val0 %entry %val %gather\n" -+ "%count = OpPhi %i32 %c_i32_4 %entry %count__ %cont\n" -+ "%delta = OpPhi %f32 %c_f32_1 %entry %delta_next %cont\n" -+ "%val1 = OpPhi %f32 %val0 %entry %val %cont\n" - // There are several possibilities for the Continue Target below. Each - // will be specialized into a separate test case. - "OpLoopMerge %exit ${continue_target} None\n" -@@ -9131,6 +9135,9 @@ - "%delta_next = OpPhi %f32 %c_f32_n1 %even %c_f32_1 %odd\n" - "%val = OpFAdd %f32 %val1 %delta\n" - "%count__ = OpISub %i32 %count %c_i32_1\n" -+ "OpBranch %cont\n" -+ -+ "%cont = OpLabel\n" - "%again = OpSGreaterThan %bool %count__ %c_i32_0\n" - "OpBranchConditional %again %loop %exit\n" - -@@ -9148,7 +9155,7 @@ - createTestsForAllStages("multi_block_continue_construct", defaultColors, defaultColors, fragments, testGroup.get()); - - // The Continue Target is at the end of the loop. -- continue_target["continue_target"] = "%gather"; -+ continue_target["continue_target"] = "%cont"; - fragments["testfun"] = multiBlock.specialize(continue_target); - createTestsForAllStages("multi_block_loop_construct", defaultColors, defaultColors, fragments, testGroup.get()); - -@@ -9171,7 +9178,6 @@ - "%if = OpLabel\n" - ";skip if %count==2\n" - "%eq2 = OpIEqual %bool %count %c_i32_2\n" -- "OpSelectionMerge %continue DontFlatten\n" - "OpBranchConditional %eq2 %continue %body\n" - - "%body = OpLabel\n" -@@ -9216,7 +9222,6 @@ - "%if = OpLabel\n" - ";end loop if %count==%two\n" - "%above2 = OpSGreaterThan %bool %count %two\n" -- "OpSelectionMerge %continue DontFlatten\n" - "OpBranchConditional %above2 %body %exit\n" - - "%body = OpLabel\n" -@@ -9261,7 +9266,7 @@ - "%if = OpLabel\n" - ";return if %count==%two\n" - "%above2 = OpSGreaterThan %bool %count %two\n" -- "OpSelectionMerge %continue DontFlatten\n" -+ "OpSelectionMerge %body DontFlatten\n" - "OpBranchConditional %above2 %body %early_exit\n" - - "%early_exit = OpLabel\n"
diff --git a/tests/regres/deqp.json b/tests/regres/deqp.json index 8e0c067..c94f3f3 100644 --- a/tests/regres/deqp.json +++ b/tests/regres/deqp.json
@@ -1,8 +1,7 @@ { "remote": "https://android.googlesource.com/platform/external/deqp", - "sha": "5b2e2b6f59e5f32f820b230949aba960a84849c5", + "sha": "da1463790952d1c1ac6c1409d814c29286da1aea", "patches": [ - "tests/regres/deqp-patches/deqp-x11.patch", - "tests/regres/deqp-patches/fix-cfg-validation.patch" + "tests/regres/deqp-patches/deqp-x11.patch" ] } \ No newline at end of file