Merge branch 'master' of https://github.com/KhronosGroup/SPIRV-Headers into uniform_g...
authorNikita Kornev <nikita.kornev@intel.com>
Wed, 2 Mar 2022 12:30:15 +0000 (15:30 +0300)
committerNikita Kornev <nikita.kornev@intel.com>
Wed, 2 Mar 2022 12:30:15 +0000 (15:30 +0300)
1  2 
include/spirv/unified1/spirv.core.grammar.json
include/spirv/unified1/spirv.cs
include/spirv/unified1/spirv.h
include/spirv/unified1/spirv.hpp
include/spirv/unified1/spirv.hpp11
include/spirv/unified1/spirv.json
include/spirv/unified1/spirv.lua
include/spirv/unified1/spirv.py
include/spirv/unified1/spv.d

        "version" : "None"
      },
      {
+       "opname" : "OpControlBarrierArriveINTEL",
+       "class"  : "Barrier",
+       "opcode" : 6142,
+       "operands" : [
+         { "kind" : "IdScope",           "name" : "'Execution'" },
+         { "kind" : "IdScope",           "name" : "'Memory'" },
+         { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
+       ],
+       "capabilities" : [ "SplitBarrierINTEL" ],
+       "version" : "None"
+     },
+     {
+       "opname" : "OpControlBarrierWaitINTEL",
+       "class"  : "Barrier",
+       "opcode" : 6143,
+       "operands" : [
+         { "kind" : "IdScope",           "name" : "'Execution'" },
+         { "kind" : "IdScope",           "name" : "'Memory'" },
+         { "kind" : "IdMemorySemantics", "name" : "'Semantics'" }
+       ],
+       "capabilities" : [ "SplitBarrierINTEL" ],
+       "version" : "None"
++    },
++    {
 +      "opname" : "OpGroupIMulKHR",
 +      "class"  : "Group",
 +      "opcode" : 6401,
 +      "operands" : [
 +        { "kind" : "IdResultType" },
 +        { "kind" : "IdResult" },
 +        { "kind" : "IdScope",        "name" : "'Execution'" },
 +        { "kind" : "GroupOperation", "name" : "'Operation'" },
 +        { "kind" : "IdRef",          "name" : "'X'" }
 +      ],
 +      "capabilities" : [ "GroupUniformArithmeticKHR" ],
 +      "extensions" : [ "SPV_KHR_uniform_group_instructions" ],
 +      "version" : "None"
 +    },
 +    {
 +      "opname" : "OpGroupFMulKHR",
 +      "class"  : "Group",
 +      "opcode" : 6402,
 +      "operands" : [
 +        { "kind" : "IdResultType" },
 +        { "kind" : "IdResult" },
 +        { "kind" : "IdScope",        "name" : "'Execution'" },
 +        { "kind" : "GroupOperation", "name" : "'Operation'" },
 +        { "kind" : "IdRef",          "name" : "'X'" }
 +      ],
 +      "capabilities" : [ "GroupUniformArithmeticKHR" ],
 +      "extensions" : [ "SPV_KHR_uniform_group_instructions" ],
 +      "version" : "None"
 +    },
 +    {
 +      "opname" : "OpGroupBitwiseAndKHR",
 +      "class"  : "Group",
 +      "opcode" : 6403,
 +      "operands" : [
 +        { "kind" : "IdResultType" },
 +        { "kind" : "IdResult" },
 +        { "kind" : "IdScope",        "name" : "'Execution'" },
 +        { "kind" : "GroupOperation", "name" : "'Operation'" },
 +        { "kind" : "IdRef",          "name" : "'X'" }
 +      ],
 +      "capabilities" : [ "GroupUniformArithmeticKHR" ],
 +      "extensions" : [ "SPV_KHR_uniform_group_instructions" ],
 +      "version" : "None"
 +    },
 +    {
 +      "opname" : "OpGroupBitwiseOrKHR",
 +      "class"  : "Group",
 +      "opcode" : 6404,
 +      "operands" : [
 +        { "kind" : "IdResultType" },
 +        { "kind" : "IdResult" },
 +        { "kind" : "IdScope",        "name" : "'Execution'" },
 +        { "kind" : "GroupOperation", "name" : "'Operation'" },
 +        { "kind" : "IdRef",          "name" : "'X'" }
 +      ],
 +      "capabilities" : [ "GroupUniformArithmeticKHR" ],
 +      "extensions" : [ "SPV_KHR_uniform_group_instructions" ],
 +      "version" : "None"
 +    },
 +    {
 +      "opname" : "OpGroupBitwiseXorKHR",
 +      "class"  : "Group",
 +      "opcode" : 6405,
 +      "operands" : [
 +        { "kind" : "IdResultType" },
 +        { "kind" : "IdResult" },
 +        { "kind" : "IdScope",        "name" : "'Execution'" },
 +        { "kind" : "GroupOperation", "name" : "'Operation'" },
 +        { "kind" : "IdRef",          "name" : "'X'" }
 +      ],
 +      "capabilities" : [ "GroupUniformArithmeticKHR" ],
 +      "extensions" : [ "SPV_KHR_uniform_group_instructions" ],
 +      "version" : "None"
 +    },
 +    {
 +      "opname" : "OpGroupLogicalAndKHR",
 +      "class"  : "Group",
 +      "opcode" : 6406,
 +      "operands" : [
 +        { "kind" : "IdResultType" },
 +        { "kind" : "IdResult" },
 +        { "kind" : "IdScope",        "name" : "'Execution'" },
 +        { "kind" : "GroupOperation", "name" : "'Operation'" },
 +        { "kind" : "IdRef",          "name" : "'X'" }
 +      ],
 +      "capabilities" : [ "GroupUniformArithmeticKHR" ],
 +      "extensions" : [ "SPV_KHR_uniform_group_instructions" ],
 +      "version" : "None"
 +    },
 +    {
 +      "opname" : "OpGroupLogicalOrKHR",
 +      "class"  : "Group",
 +      "opcode" : 6407,
 +      "operands" : [
 +        { "kind" : "IdResultType" },
 +        { "kind" : "IdResult" },
 +        { "kind" : "IdScope",        "name" : "'Execution'" },
 +        { "kind" : "GroupOperation", "name" : "'Operation'" },
 +        { "kind" : "IdRef",          "name" : "'X'" }
 +      ],
 +      "capabilities" : [ "GroupUniformArithmeticKHR" ],
 +      "extensions" : [ "SPV_KHR_uniform_group_instructions" ],
 +      "version" : "None"
 +    },
 +    {
 +      "opname" : "OpGroupLogicalXorKHR",
 +      "class"  : "Group",
 +      "opcode" : 6408,
 +      "operands" : [
 +        { "kind" : "IdResultType" },
 +        { "kind" : "IdResult" },
 +        { "kind" : "IdScope",        "name" : "'Execution'" },
 +        { "kind" : "GroupOperation", "name" : "'Operation'" },
 +        { "kind" : "IdRef",          "name" : "'X'" }
 +      ],
 +      "capabilities" : [ "GroupUniformArithmeticKHR" ],
 +      "extensions" : [ "SPV_KHR_uniform_group_instructions" ],
 +      "version" : "None"
      }
    ],
    "operand_kinds" : [
            "version" : "None"
          },
          {
+           "enumerant" : "SplitBarrierINTEL",
+           "value" : 6141,
+           "extensions" : [ "SPV_INTEL_split_barrier" ],
+           "version" : "None"
++        },
++        {
 +          "enumerant" : "GroupUniformArithmeticKHR",
 +          "value" : 6400,
 +          "extensions" : [ "SPV_KHR_uniform_group_instructions"],
 +          "version" : "None"
          }
        ]
      },
@@@ -1087,7 -1087,7 +1087,8 @@@ namespace Sp
              OptNoneINTEL = 6094,
              AtomicFloat16AddEXT = 6095,
              DebugInfoModuleINTEL = 6114,
+             SplitBarrierINTEL = 6141,
 +            GroupUniformArithmeticKHR = 6400,
          }
  
          public enum RayFlagsShift
              OpTypeStructContinuedINTEL = 6090,
              OpConstantCompositeContinuedINTEL = 6091,
              OpSpecConstantCompositeContinuedINTEL = 6092,
+             OpControlBarrierArriveINTEL = 6142,
+             OpControlBarrierWaitINTEL = 6143,
 +            OpGroupIMulKHR = 6401,
 +            OpGroupFMulKHR = 6402,
 +            OpGroupBitwiseAndKHR = 6403,
 +            OpGroupBitwiseOrKHR = 6404,
 +            OpGroupBitwiseXorKHR = 6405,
 +            OpGroupLogicalAndKHR = 6406,
 +            OpGroupLogicalOrKHR = 6407,
 +            OpGroupLogicalXorKHR = 6408,
          }
      }
  }
@@@ -1087,7 -1087,7 +1087,8 @@@ typedef enum SpvCapability_ 
      SpvCapabilityOptNoneINTEL = 6094,
      SpvCapabilityAtomicFloat16AddEXT = 6095,
      SpvCapabilityDebugInfoModuleINTEL = 6114,
+     SpvCapabilitySplitBarrierINTEL = 6141,
 +    SpvCapabilityGroupUniformArithmeticKHR = 6400,
      SpvCapabilityMax = 0x7fffffff,
  } SpvCapability;
  
@@@ -1850,14 -1850,8 +1851,16 @@@ typedef enum SpvOp_ 
      SpvOpTypeStructContinuedINTEL = 6090,
      SpvOpConstantCompositeContinuedINTEL = 6091,
      SpvOpSpecConstantCompositeContinuedINTEL = 6092,
+     SpvOpControlBarrierArriveINTEL = 6142,
+     SpvOpControlBarrierWaitINTEL = 6143,
 +    SpvOpGroupIMulKHR = 6401,
 +    SpvOpGroupFMulKHR = 6402,
 +    SpvOpGroupBitwiseAndKHR = 6403,
 +    SpvOpGroupBitwiseOrKHR = 6404,
 +    SpvOpGroupBitwiseXorKHR = 6405,
 +    SpvOpGroupLogicalAndKHR = 6406,
 +    SpvOpGroupLogicalOrKHR = 6407,
 +    SpvOpGroupLogicalXorKHR = 6408,
      SpvOpMax = 0x7fffffff,
  } SpvOp;
  
@@@ -2512,14 -2506,8 +2515,16 @@@ inline void SpvHasResultAndType(SpvOp o
      case SpvOpTypeStructContinuedINTEL: *hasResult = false; *hasResultType = false; break;
      case SpvOpConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
      case SpvOpSpecConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
+     case SpvOpControlBarrierArriveINTEL: *hasResult = false; *hasResultType = false; break;
+     case SpvOpControlBarrierWaitINTEL: *hasResult = false; *hasResultType = false; break;
 +    case SpvOpGroupIMulKHR: *hasResult = true; *hasResultType = true; break;
 +    case SpvOpGroupFMulKHR: *hasResult = true; *hasResultType = true; break;
 +    case SpvOpGroupBitwiseAndKHR: *hasResult = true; *hasResultType = true; break;
 +    case SpvOpGroupBitwiseOrKHR: *hasResult = true; *hasResultType = true; break;
 +    case SpvOpGroupBitwiseXorKHR: *hasResult = true; *hasResultType = true; break;
 +    case SpvOpGroupLogicalAndKHR: *hasResult = true; *hasResultType = true; break;
 +    case SpvOpGroupLogicalOrKHR: *hasResult = true; *hasResultType = true; break;
 +    case SpvOpGroupLogicalXorKHR: *hasResult = true; *hasResultType = true; break;
      }
  }
  #endif /* SPV_ENABLE_UTILITY_CODE */
@@@ -1083,7 -1083,7 +1083,8 @@@ enum Capability 
      CapabilityOptNoneINTEL = 6094,
      CapabilityAtomicFloat16AddEXT = 6095,
      CapabilityDebugInfoModuleINTEL = 6114,
+     CapabilitySplitBarrierINTEL = 6141,
 +    CapabilityGroupUniformArithmeticKHR = 6400,
      CapabilityMax = 0x7fffffff,
  };
  
@@@ -1846,14 -1846,8 +1847,16 @@@ enum Op 
      OpTypeStructContinuedINTEL = 6090,
      OpConstantCompositeContinuedINTEL = 6091,
      OpSpecConstantCompositeContinuedINTEL = 6092,
+     OpControlBarrierArriveINTEL = 6142,
+     OpControlBarrierWaitINTEL = 6143,
 +    OpGroupIMulKHR = 6401,
 +    OpGroupFMulKHR = 6402,
 +    OpGroupBitwiseAndKHR = 6403,
 +    OpGroupBitwiseOrKHR = 6404,
 +    OpGroupBitwiseXorKHR = 6405,
 +    OpGroupLogicalAndKHR = 6406,
 +    OpGroupLogicalOrKHR = 6407,
 +    OpGroupLogicalXorKHR = 6408,
      OpMax = 0x7fffffff,
  };
  
@@@ -2508,14 -2502,8 +2511,16 @@@ inline void HasResultAndType(Op opcode
      case OpTypeStructContinuedINTEL: *hasResult = false; *hasResultType = false; break;
      case OpConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
      case OpSpecConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
+     case OpControlBarrierArriveINTEL: *hasResult = false; *hasResultType = false; break;
+     case OpControlBarrierWaitINTEL: *hasResult = false; *hasResultType = false; break;
 +    case OpGroupIMulKHR: *hasResult = true; *hasResultType = true; break;
 +    case OpGroupFMulKHR: *hasResult = true; *hasResultType = true; break;
 +    case OpGroupBitwiseAndKHR: *hasResult = true; *hasResultType = true; break;
 +    case OpGroupBitwiseOrKHR: *hasResult = true; *hasResultType = true; break;
 +    case OpGroupBitwiseXorKHR: *hasResult = true; *hasResultType = true; break;
 +    case OpGroupLogicalAndKHR: *hasResult = true; *hasResultType = true; break;
 +    case OpGroupLogicalOrKHR: *hasResult = true; *hasResultType = true; break;
 +    case OpGroupLogicalXorKHR: *hasResult = true; *hasResultType = true; break;
      }
  }
  #endif /* SPV_ENABLE_UTILITY_CODE */
@@@ -1083,7 -1083,7 +1083,8 @@@ enum class Capability : unsigned 
      OptNoneINTEL = 6094,
      AtomicFloat16AddEXT = 6095,
      DebugInfoModuleINTEL = 6114,
+     SplitBarrierINTEL = 6141,
 +    GroupUniformArithmeticKHR = 6400,
      Max = 0x7fffffff,
  };
  
@@@ -1846,14 -1846,8 +1847,16 @@@ enum class Op : unsigned 
      OpTypeStructContinuedINTEL = 6090,
      OpConstantCompositeContinuedINTEL = 6091,
      OpSpecConstantCompositeContinuedINTEL = 6092,
+     OpControlBarrierArriveINTEL = 6142,
+     OpControlBarrierWaitINTEL = 6143,
 +    OpGroupIMulKHR = 6401,
 +    OpGroupFMulKHR = 6402,
 +    OpGroupBitwiseAndKHR = 6403,
 +    OpGroupBitwiseOrKHR = 6404,
 +    OpGroupBitwiseXorKHR = 6405,
 +    OpGroupLogicalAndKHR = 6406,
 +    OpGroupLogicalOrKHR = 6407,
 +    OpGroupLogicalXorKHR = 6408,
      Max = 0x7fffffff,
  };
  
@@@ -2508,14 -2502,8 +2511,16 @@@ inline void HasResultAndType(Op opcode
      case Op::OpTypeStructContinuedINTEL: *hasResult = false; *hasResultType = false; break;
      case Op::OpConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
      case Op::OpSpecConstantCompositeContinuedINTEL: *hasResult = false; *hasResultType = false; break;
+     case Op::OpControlBarrierArriveINTEL: *hasResult = false; *hasResultType = false; break;
+     case Op::OpControlBarrierWaitINTEL: *hasResult = false; *hasResultType = false; break;
 +    case Op::OpGroupIMulKHR: *hasResult = true; *hasResultType = true; break;
 +    case Op::OpGroupFMulKHR: *hasResult = true; *hasResultType = true; break;
 +    case Op::OpGroupBitwiseAndKHR: *hasResult = true; *hasResultType = true; break;
 +    case Op::OpGroupBitwiseOrKHR: *hasResult = true; *hasResultType = true; break;
 +    case Op::OpGroupBitwiseXorKHR: *hasResult = true; *hasResultType = true; break;
 +    case Op::OpGroupLogicalAndKHR: *hasResult = true; *hasResultType = true; break;
 +    case Op::OpGroupLogicalOrKHR: *hasResult = true; *hasResultType = true; break;
 +    case Op::OpGroupLogicalXorKHR: *hasResult = true; *hasResultType = true; break;
      }
  }
  #endif /* SPV_ENABLE_UTILITY_CODE */
                      "OptNoneINTEL": 6094,
                      "AtomicFloat16AddEXT": 6095,
                      "DebugInfoModuleINTEL": 6114,
 -                    "SplitBarrierINTEL": 6141
++                    "SplitBarrierINTEL": 6141,
 +                    "GroupUniformArithmeticKHR": 6400
                  }
              },
              {
                      "OpTypeStructContinuedINTEL": 6090,
                      "OpConstantCompositeContinuedINTEL": 6091,
                      "OpSpecConstantCompositeContinuedINTEL": 6092,
 -                    "OpControlBarrierWaitINTEL": 6143
+                     "OpControlBarrierArriveINTEL": 6142,
++                    "OpControlBarrierWaitINTEL": 6143,
 +                    "OpGroupIMulKHR": 6401,
 +                    "OpGroupFMulKHR": 6402,
 +                    "OpGroupBitwiseAndKHR": 6403,
 +                    "OpGroupBitwiseOrKHR": 6404,
 +                    "OpGroupBitwiseXorKHR": 6405,
 +                    "OpGroupLogicalAndKHR": 6406,
 +                    "OpGroupLogicalOrKHR": 6407,
 +                    "OpGroupLogicalXorKHR": 6408
                  }
              }
          ]
@@@ -1045,7 -1045,7 +1045,8 @@@ spv = 
          OptNoneINTEL = 6094,
          AtomicFloat16AddEXT = 6095,
          DebugInfoModuleINTEL = 6114,
+         SplitBarrierINTEL = 6141,
 +        GroupUniformArithmeticKHR = 6400,
      },
  
      RayFlagsShift = {
          OpTypeStructContinuedINTEL = 6090,
          OpConstantCompositeContinuedINTEL = 6091,
          OpSpecConstantCompositeContinuedINTEL = 6092,
+         OpControlBarrierArriveINTEL = 6142,
+         OpControlBarrierWaitINTEL = 6143,
 +        OpGroupIMulKHR = 6401,
 +        OpGroupFMulKHR = 6402,
 +        OpGroupBitwiseAndKHR = 6403,
 +        OpGroupBitwiseOrKHR = 6404,
 +        OpGroupBitwiseXorKHR = 6405,
 +        OpGroupLogicalAndKHR = 6406,
 +        OpGroupLogicalOrKHR = 6407,
 +        OpGroupLogicalXorKHR = 6408,
      },
  
  }
@@@ -1045,7 -1045,7 +1045,8 @@@ spv = 
          'OptNoneINTEL' : 6094,
          'AtomicFloat16AddEXT' : 6095,
          'DebugInfoModuleINTEL' : 6114,
+         'SplitBarrierINTEL' : 6141,
 +        'GroupUniformArithmeticKHR' : 6400,
      },
  
      'RayFlagsShift' : {
          'OpTypeStructContinuedINTEL' : 6090,
          'OpConstantCompositeContinuedINTEL' : 6091,
          'OpSpecConstantCompositeContinuedINTEL' : 6092,
+         'OpControlBarrierArriveINTEL' : 6142,
+         'OpControlBarrierWaitINTEL' : 6143,
 +        'OpGroupIMulKHR' : 6401,
 +        'OpGroupFMulKHR' : 6402,
 +        'OpGroupBitwiseAndKHR' : 6403,
 +        'OpGroupBitwiseOrKHR' : 6404,
 +        'OpGroupBitwiseXorKHR' : 6405,
 +        'OpGroupLogicalAndKHR' : 6406,
 +        'OpGroupLogicalOrKHR' : 6407,
 +        'OpGroupLogicalXorKHR' : 6408,
      },
  
  }
@@@ -1090,7 -1090,7 +1090,8 @@@ enum Capability : uin
      OptNoneINTEL = 6094,
      AtomicFloat16AddEXT = 6095,
      DebugInfoModuleINTEL = 6114,
+     SplitBarrierINTEL = 6141,
 +    GroupUniformArithmeticKHR = 6400,
  }
  
  enum RayFlagsShift : uint
@@@ -1855,14 -1855,8 +1856,16 @@@ enum Op : uin
      OpTypeStructContinuedINTEL = 6090,
      OpConstantCompositeContinuedINTEL = 6091,
      OpSpecConstantCompositeContinuedINTEL = 6092,
+     OpControlBarrierArriveINTEL = 6142,
+     OpControlBarrierWaitINTEL = 6143,
 +    OpGroupIMulKHR = 6401,
 +    OpGroupFMulKHR = 6402,
 +    OpGroupBitwiseAndKHR = 6403,
 +    OpGroupBitwiseOrKHR = 6404,
 +    OpGroupBitwiseXorKHR = 6405,
 +    OpGroupLogicalAndKHR = 6406,
 +    OpGroupLogicalOrKHR = 6407,
 +    OpGroupLogicalXorKHR = 6408,
  }