Merge pull request #223 from WyvernWang/master

reserve value range for huawei
diff --git a/include/spirv/unified1/OpenCLDebugInfo100.h b/include/spirv/unified1/OpenCLDebugInfo100.h
index 7285bd4..e3847c9 100644
--- a/include/spirv/unified1/OpenCLDebugInfo100.h
+++ b/include/spirv/unified1/OpenCLDebugInfo100.h
@@ -75,6 +75,7 @@
     OpenCLDebugInfo100DebugMacroUndef = 33,
     OpenCLDebugInfo100DebugImportedEntity = 34,
     OpenCLDebugInfo100DebugSource = 35,
+    OpenCLDebugInfo100DebugModuleINTEL = 36,
     OpenCLDebugInfo100InstructionsMax = 0x7fffffff
 };
 
diff --git a/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json b/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json
index d4cfab2..699fe40 100644
--- a/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json
+++ b/include/spirv/unified1/extinst.opencl.debuginfo.100.grammar.json
@@ -395,6 +395,21 @@
         { "kind" : "IdRef", "name" : "'File'" },
         { "kind" : "IdRef", "name" : "'Text'", "quantifier" : "?" }
       ]
+    },
+    {
+      "opname" : "DebugModuleINTEL",
+      "opcode" : 36,
+      "operands" : [
+        { "kind" : "IdRef", "name" : "'Name'" },
+        { "kind" : "IdRef", "name" : "'Source'" },
+        { "kind" : "IdRef", "name" : "'Parent'" },
+        { "kind" : "LiteralInteger", "name" : "'Line'" },
+        { "kind" : "IdRef", "name" : "'ConfigurationMacros'" },
+        { "kind" : "IdRef", "name" : "'IncludePath'" },
+        { "kind" : "IdRef", "name" : "'APINotesFile'" },
+        { "kind" : "LiteralInteger", "name" : "'IsDeclaration'" }
+      ],
+      "capability" : "DebugInfoModuleINTEL"
     }
   ],
   "operand_kinds" : [
diff --git a/include/spirv/unified1/spirv.core.grammar.json b/include/spirv/unified1/spirv.core.grammar.json
index 04eb87e..2852c09 100644
--- a/include/spirv/unified1/spirv.core.grammar.json
+++ b/include/spirv/unified1/spirv.core.grammar.json
@@ -2157,7 +2157,7 @@
         { "kind" : "IdRef",        "name" : "'Offset'" },
         { "kind" : "IdRef",        "name" : "'Count'" }
       ],
-      "capabilities" : [ "Shader" ]
+      "capabilities" : [ "Shader", "BitInstructions" ]
     },
     {
       "opname" : "OpBitFieldSExtract",
@@ -2170,7 +2170,7 @@
         { "kind" : "IdRef",        "name" : "'Offset'" },
         { "kind" : "IdRef",        "name" : "'Count'" }
       ],
-      "capabilities" : [ "Shader" ]
+      "capabilities" : [ "Shader", "BitInstructions" ]
     },
     {
       "opname" : "OpBitFieldUExtract",
@@ -2183,7 +2183,7 @@
         { "kind" : "IdRef",        "name" : "'Offset'" },
         { "kind" : "IdRef",        "name" : "'Count'" }
       ],
-      "capabilities" : [ "Shader" ]
+      "capabilities" : [ "Shader", "BitInstructions" ]
     },
     {
       "opname" : "OpBitReverse",
@@ -2194,7 +2194,7 @@
         { "kind" : "IdResult" },
         { "kind" : "IdRef",        "name" : "'Base'" }
       ],
-      "capabilities" : [ "Shader" ]
+      "capabilities" : [ "Shader", "BitInstructions" ]
     },
     {
       "opname" : "OpBitCount",
@@ -13402,6 +13402,12 @@
           "version" : "None"
         },
         {
+          "enumerant" : "BitInstructions",
+          "value" : 6025,
+          "extensions" : [ "SPV_KHR_bit_instructions" ],
+          "version" : "None"
+        },
+        {
           "enumerant" : "AtomicFloat32AddEXT",
           "value" : 6033,
           "capabilities" : [ "Shader" ],
@@ -13427,6 +13433,12 @@
           "capabilities" : [ "Shader" ],
           "extensions" : [ "SPV_EXT_shader_atomic_float16_add" ],
           "version" : "None"
+        },
+        {
+          "enumerant" : "DebugInfoModuleINTEL",
+          "value" : 6114,
+          "extensions" : [ "SPV_INTEL_debug_module" ],
+          "version" : "None"
         }
       ]
     },
diff --git a/include/spirv/unified1/spirv.cs b/include/spirv/unified1/spirv.cs
index f2d8aaa..859f0e7 100644
--- a/include/spirv/unified1/spirv.cs
+++ b/include/spirv/unified1/spirv.cs
@@ -1049,10 +1049,12 @@
             DotProductInput4x8BitKHR = 6017,
             DotProductInput4x8BitPackedKHR = 6018,
             DotProductKHR = 6019,
+            BitInstructions = 6025,
             AtomicFloat32AddEXT = 6033,
             AtomicFloat64AddEXT = 6034,
             LongConstantCompositeINTEL = 6089,
             AtomicFloat16AddEXT = 6095,
+            DebugInfoModuleINTEL = 6114,
         }
 
         public enum RayFlagsShift
diff --git a/include/spirv/unified1/spirv.h b/include/spirv/unified1/spirv.h
index 68e9a9a..34f90d3 100644
--- a/include/spirv/unified1/spirv.h
+++ b/include/spirv/unified1/spirv.h
@@ -1049,10 +1049,12 @@
     SpvCapabilityDotProductInput4x8BitKHR = 6017,
     SpvCapabilityDotProductInput4x8BitPackedKHR = 6018,
     SpvCapabilityDotProductKHR = 6019,
+    SpvCapabilityBitInstructions = 6025,
     SpvCapabilityAtomicFloat32AddEXT = 6033,
     SpvCapabilityAtomicFloat64AddEXT = 6034,
     SpvCapabilityLongConstantCompositeINTEL = 6089,
     SpvCapabilityAtomicFloat16AddEXT = 6095,
+    SpvCapabilityDebugInfoModuleINTEL = 6114,
     SpvCapabilityMax = 0x7fffffff,
 } SpvCapability;
 
diff --git a/include/spirv/unified1/spirv.hpp b/include/spirv/unified1/spirv.hpp
index 098ab39..a0b35b3 100644
--- a/include/spirv/unified1/spirv.hpp
+++ b/include/spirv/unified1/spirv.hpp
@@ -1045,10 +1045,12 @@
     CapabilityDotProductInput4x8BitKHR = 6017,
     CapabilityDotProductInput4x8BitPackedKHR = 6018,
     CapabilityDotProductKHR = 6019,
+    CapabilityBitInstructions = 6025,
     CapabilityAtomicFloat32AddEXT = 6033,
     CapabilityAtomicFloat64AddEXT = 6034,
     CapabilityLongConstantCompositeINTEL = 6089,
     CapabilityAtomicFloat16AddEXT = 6095,
+    CapabilityDebugInfoModuleINTEL = 6114,
     CapabilityMax = 0x7fffffff,
 };
 
diff --git a/include/spirv/unified1/spirv.hpp11 b/include/spirv/unified1/spirv.hpp11
index 8bfd57f..e17c6c6 100644
--- a/include/spirv/unified1/spirv.hpp11
+++ b/include/spirv/unified1/spirv.hpp11
@@ -1045,10 +1045,12 @@
     DotProductInput4x8BitKHR = 6017,
     DotProductInput4x8BitPackedKHR = 6018,
     DotProductKHR = 6019,
+    BitInstructions = 6025,
     AtomicFloat32AddEXT = 6033,
     AtomicFloat64AddEXT = 6034,
     LongConstantCompositeINTEL = 6089,
     AtomicFloat16AddEXT = 6095,
+    DebugInfoModuleINTEL = 6114,
     Max = 0x7fffffff,
 };
 
diff --git a/include/spirv/unified1/spirv.json b/include/spirv/unified1/spirv.json
index f4f13bc..1c63036 100644
--- a/include/spirv/unified1/spirv.json
+++ b/include/spirv/unified1/spirv.json
@@ -1032,10 +1032,12 @@
                     "DotProductInput4x8BitKHR": 6017,
                     "DotProductInput4x8BitPackedKHR": 6018,
                     "DotProductKHR": 6019,
+                    "BitInstructions": 6025,
                     "AtomicFloat32AddEXT": 6033,
                     "AtomicFloat64AddEXT": 6034,
                     "LongConstantCompositeINTEL": 6089,
-                    "AtomicFloat16AddEXT": 6095
+                    "AtomicFloat16AddEXT": 6095,
+                    "DebugInfoModuleINTEL": 6114
                 }
             },
             {
diff --git a/include/spirv/unified1/spirv.lua b/include/spirv/unified1/spirv.lua
index 9f05c99..afdaec9 100644
--- a/include/spirv/unified1/spirv.lua
+++ b/include/spirv/unified1/spirv.lua
@@ -1007,10 +1007,12 @@
         DotProductInput4x8BitKHR = 6017,
         DotProductInput4x8BitPackedKHR = 6018,
         DotProductKHR = 6019,
+        BitInstructions = 6025,
         AtomicFloat32AddEXT = 6033,
         AtomicFloat64AddEXT = 6034,
         LongConstantCompositeINTEL = 6089,
         AtomicFloat16AddEXT = 6095,
+        DebugInfoModuleINTEL = 6114,
     },
 
     RayFlagsShift = {
diff --git a/include/spirv/unified1/spirv.py b/include/spirv/unified1/spirv.py
index fbef918..09755a2 100644
--- a/include/spirv/unified1/spirv.py
+++ b/include/spirv/unified1/spirv.py
@@ -1007,10 +1007,12 @@
         'DotProductInput4x8BitKHR' : 6017,
         'DotProductInput4x8BitPackedKHR' : 6018,
         'DotProductKHR' : 6019,
+        'BitInstructions' : 6025,
         'AtomicFloat32AddEXT' : 6033,
         'AtomicFloat64AddEXT' : 6034,
         'LongConstantCompositeINTEL' : 6089,
         'AtomicFloat16AddEXT' : 6095,
+        'DebugInfoModuleINTEL' : 6114,
     },
 
     'RayFlagsShift' : {
diff --git a/include/spirv/unified1/spv.d b/include/spirv/unified1/spv.d
index 65ea536..179a6b1 100644
--- a/include/spirv/unified1/spv.d
+++ b/include/spirv/unified1/spv.d
@@ -1052,10 +1052,12 @@
     DotProductInput4x8BitKHR = 6017,
     DotProductInput4x8BitPackedKHR = 6018,
     DotProductKHR = 6019,
+    BitInstructions = 6025,
     AtomicFloat32AddEXT = 6033,
     AtomicFloat64AddEXT = 6034,
     LongConstantCompositeINTEL = 6089,
     AtomicFloat16AddEXT = 6095,
+    DebugInfoModuleINTEL = 6114,
 }
 
 enum RayFlagsShift : uint