From 37e4600c3efad7b1cfdc1df70a977be82eb3c811 Mon Sep 17 00:00:00 2001 From: David Neto Date: Tue, 14 Jun 2016 11:45:35 -0400 Subject: [PATCH] Fix OpenCL pow and pown arguments Spec fix appeared in SPIR-V 1.0 Rev 2: https://www.khronos.org/registry/spir-v/specs/1.0/OpenCL.ExtendedInstructionSet.100.html#_changes_from_version_1_0_revision_1 Fixes https://github.com/KhronosGroup/SPIRV-Tools/issues/143 --- CHANGES | 3 +++ source/extinst-1.0.opencl.std.grammar.json | 2 +- test/ExtInst.OpenCL.std.cpp | 4 ++-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/CHANGES b/CHANGES index f30d2f8a6..816ee15b1 100644 --- a/CHANGES +++ b/CHANGES @@ -17,3 +17,6 @@ v2016.0-dev 2016-04-22 - Supports integer widths up to 64 bits - Validator is incomplete - Supported on Linux, OSX, Android, Windows + + - Fixes bugs: + - #143: OpenCL pow and pown arguments diff --git a/source/extinst-1.0.opencl.std.grammar.json b/source/extinst-1.0.opencl.std.grammar.json index 1145a4733..3a2ab1296 100644 --- a/source/extinst-1.0.opencl.std.grammar.json +++ b/source/extinst-1.0.opencl.std.grammar.json @@ -385,7 +385,6 @@ "opname" : "pow", "opcode" : 48, "operands" : [ - { "kind" : "IdRef" }, { "kind" : "IdRef" }, { "kind" : "IdRef" } ] @@ -394,6 +393,7 @@ "opname" : "pown", "opcode" : 49, "operands" : [ + { "kind" : "IdRef" }, { "kind" : "IdRef" } ] }, diff --git a/test/ExtInst.OpenCL.std.cpp b/test/ExtInst.OpenCL.std.cpp index 314c35fd5..b4ddaaef0 100644 --- a/test/ExtInst.OpenCL.std.cpp +++ b/test/ExtInst.OpenCL.std.cpp @@ -153,8 +153,8 @@ INSTANTIATE_TEST_CASE_P( CASE2(Modf, modf), CASE1(Nan, nan), CASE2(Nextafter, nextafter), - CASE3(Pow, pow), - CASE1(Pown, pown), + CASE2(Pow, pow), + CASE2(Pown, pown), CASE2(Powr, powr), CASE2(Remainder, remainder), CASE3(Remquo, remquo),