Browse Source

Updated spirv-headers.

Бранимир Караџић 6 years ago
parent
commit
45a64efab9

+ 16 - 16
3rdparty/spirv-headers/include/spirv/unified1/spirv.core.grammar.json

@@ -3366,7 +3366,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3380,7 +3380,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3394,7 +3394,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3408,7 +3408,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3422,7 +3422,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3436,7 +3436,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3450,7 +3450,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3464,7 +3464,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3478,7 +3478,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3492,7 +3492,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3506,7 +3506,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3520,7 +3520,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3534,7 +3534,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3548,7 +3548,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3562,7 +3562,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {
@@ -3576,7 +3576,7 @@
         { "kind" : "IdRef", "name" : "'Value'" },
         { "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
       ],
-      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
+      "capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
       "version" : "1.3"
     },
     {

+ 1 - 1
3rdparty/spirv-headers/include/spirv/unified1/spirv.cs

@@ -49,7 +49,7 @@ namespace Spv
     {
         public const uint MagicNumber = 0x07230203;
         public const uint Version = 0x00010300;
-        public const uint Revision = 6;
+        public const uint Revision = 7;
         public const uint OpCodeMask = 0xffff;
         public const uint WordCountShift = 16;
 

+ 3 - 3
3rdparty/spirv-headers/include/spirv/unified1/spirv.h

@@ -54,11 +54,11 @@
 typedef unsigned int SpvId;
 
 #define SPV_VERSION 0x10300
-#define SPV_REVISION 6
+#define SPV_REVISION 7
 
 static const unsigned int SpvMagicNumber = 0x07230203;
 static const unsigned int SpvVersion = 0x00010300;
-static const unsigned int SpvRevision = 6;
+static const unsigned int SpvRevision = 7;
 static const unsigned int SpvOpCodeMask = 0xffff;
 static const unsigned int SpvWordCountShift = 16;
 
@@ -1330,5 +1330,5 @@ typedef enum SpvOp_ {
     SpvOpMax = 0x7fffffff,
 } SpvOp;
 
-#endif  // #ifndef spirv_H
+#endif
 

+ 2 - 2
3rdparty/spirv-headers/include/spirv/unified1/spirv.hpp

@@ -50,11 +50,11 @@ namespace spv {
 typedef unsigned int Id;
 
 #define SPV_VERSION 0x10300
-#define SPV_REVISION 6
+#define SPV_REVISION 7
 
 static const unsigned int MagicNumber = 0x07230203;
 static const unsigned int Version = 0x00010300;
-static const unsigned int Revision = 6;
+static const unsigned int Revision = 7;
 static const unsigned int OpCodeMask = 0xffff;
 static const unsigned int WordCountShift = 16;
 

+ 2 - 2
3rdparty/spirv-headers/include/spirv/unified1/spirv.hpp11

@@ -50,11 +50,11 @@ namespace spv {
 typedef unsigned int Id;
 
 #define SPV_VERSION 0x10300
-#define SPV_REVISION 6
+#define SPV_REVISION 7
 
 static const unsigned int MagicNumber = 0x07230203;
 static const unsigned int Version = 0x00010300;
-static const unsigned int Revision = 6;
+static const unsigned int Revision = 7;
 static const unsigned int OpCodeMask = 0xffff;
 static const unsigned int WordCountShift = 16;
 

+ 1 - 1
3rdparty/spirv-headers/include/spirv/unified1/spirv.json

@@ -55,7 +55,7 @@
             ],
             "MagicNumber": 119734787,
             "Version": 66304,
-            "Revision": 6,
+            "Revision": 7,
             "OpCodeMask": 65535,
             "WordCountShift": 16
         },

+ 1 - 1
3rdparty/spirv-headers/include/spirv/unified1/spirv.lua

@@ -45,7 +45,7 @@
 spv = {
     MagicNumber = 0x07230203,
     Version = 0x00010300,
-    Revision = 6,
+    Revision = 7,
     OpCodeMask = 0xffff,
     WordCountShift = 16,
 

+ 1 - 1
3rdparty/spirv-headers/include/spirv/unified1/spirv.py

@@ -45,7 +45,7 @@
 spv = {
     'MagicNumber' : 0x07230203,
     'Version' : 0x00010300,
-    'Revision' : 6,
+    'Revision' : 7,
     'OpCodeMask' : 0xffff,
     'WordCountShift' : 16,
 

+ 1 - 1
3rdparty/spirv-headers/include/spirv/unified1/spv.d

@@ -52,7 +52,7 @@ module spv;
 
 enum uint MagicNumber = 0x07230203;
 enum uint Version = 0x00010300;
-enum uint Revision = 6;
+enum uint Revision = 7;
 enum uint OpCodeMask = 0xffff;
 enum uint WordCountShift = 16;
 

+ 2 - 2
3rdparty/spirv-headers/tools/buildHeaders/header.cpp

@@ -69,8 +69,8 @@ namespace {
 
         static const int         DocMagicNumber = 0x07230203;
         static const int         DocVersion     = 0x00010300;
-        static const int         DocRevision    = 6;
-        #define DocRevisionString                "6"
+        static const int         DocRevision    = 7;
+        #define DocRevisionString                "7"
         static const std::string DocCopyright;
         static const std::string DocComment1;
         static const std::string DocComment2;

+ 17 - 1
3rdparty/spirv-headers/tools/buildHeaders/jsonToSpirv.cpp

@@ -230,7 +230,21 @@ unsigned int NumberStringToBit(const std::string& str)
     return bit;
 }
 
-void jsonToSpirv(const std::string& jsonPath)
+bool ExcludeInstruction(unsigned op, bool buildingHeaders)
+{
+    // Some instructions in the grammar don't need to be reflected
+    // in the specification.
+
+    if (buildingHeaders)
+        return false;
+
+    if (op >= 5699 /* OpVmeImageINTEL */ && op <= 5816 /* OpSubgroupAvcSicGetInterRawSadsINTEL */)
+        return true;
+
+    return false;
+}
+
+void jsonToSpirv(const std::string& jsonPath, bool buildingHeaders)
 {
     // only do this once.
     static bool initialized = false;
@@ -288,6 +302,8 @@ void jsonToSpirv(const std::string& jsonPath)
     const Json::Value insts = root["instructions"];
     for (const auto& inst : insts) {
         const unsigned int opcode = inst["opcode"].asUInt();
+        if (ExcludeInstruction(opcode, buildingHeaders))
+            continue;
         const std::string name = inst["opname"].asString();
         EnumCaps caps = getCaps(inst);
         std::string version = inst["version"].asString();

+ 1 - 1
3rdparty/spirv-headers/tools/buildHeaders/jsonToSpirv.h

@@ -38,7 +38,7 @@ namespace spv {
 std::pair<bool, std::string> ReadFile(const std::string& path);
 
 // Fill in all the parameters
-void jsonToSpirv(const std::string& jsonPath);
+void jsonToSpirv(const std::string& jsonPath, bool buildingHeaders);
 
 // For parameterizing operands.
 enum OperandClass {

+ 1 - 1
3rdparty/spirv-headers/tools/buildHeaders/main.cpp

@@ -119,7 +119,7 @@ int main(int argc, char* argv[])
         return 1;
     }
 
-    spv::jsonToSpirv(jsonPath);
+    spv::jsonToSpirv(jsonPath, (Options & EOptionPrintHeader) != 0);
     if (Options & EOptionPrintHeader)
         spv::PrintHeader(Language, std::cout);