Updated spirv-headers.
This commit is contained in:
parent
feed98f36e
commit
45a64efab9
@ -3366,7 +3366,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3380,7 +3380,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3394,7 +3394,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3408,7 +3408,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3422,7 +3422,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3436,7 +3436,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3450,7 +3450,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3464,7 +3464,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3478,7 +3478,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3492,7 +3492,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3506,7 +3506,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3520,7 +3520,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3534,7 +3534,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3548,7 +3548,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3562,7 +3562,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@ -3576,7 +3576,7 @@
|
|||||||
{ "kind" : "IdRef", "name" : "'Value'" },
|
{ "kind" : "IdRef", "name" : "'Value'" },
|
||||||
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
{ "kind" : "IdRef", "name" : "'ClusterSize'", "quantifier" : "?" }
|
||||||
],
|
],
|
||||||
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered" ],
|
"capabilities" : [ "GroupNonUniformArithmetic", "GroupNonUniformClustered", "GroupNonUniformPartitionedNV" ],
|
||||||
"version" : "1.3"
|
"version" : "1.3"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -49,7 +49,7 @@ namespace Spv
|
|||||||
{
|
{
|
||||||
public const uint MagicNumber = 0x07230203;
|
public const uint MagicNumber = 0x07230203;
|
||||||
public const uint Version = 0x00010300;
|
public const uint Version = 0x00010300;
|
||||||
public const uint Revision = 6;
|
public const uint Revision = 7;
|
||||||
public const uint OpCodeMask = 0xffff;
|
public const uint OpCodeMask = 0xffff;
|
||||||
public const uint WordCountShift = 16;
|
public const uint WordCountShift = 16;
|
||||||
|
|
||||||
|
@ -54,11 +54,11 @@
|
|||||||
typedef unsigned int SpvId;
|
typedef unsigned int SpvId;
|
||||||
|
|
||||||
#define SPV_VERSION 0x10300
|
#define SPV_VERSION 0x10300
|
||||||
#define SPV_REVISION 6
|
#define SPV_REVISION 7
|
||||||
|
|
||||||
static const unsigned int SpvMagicNumber = 0x07230203;
|
static const unsigned int SpvMagicNumber = 0x07230203;
|
||||||
static const unsigned int SpvVersion = 0x00010300;
|
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 SpvOpCodeMask = 0xffff;
|
||||||
static const unsigned int SpvWordCountShift = 16;
|
static const unsigned int SpvWordCountShift = 16;
|
||||||
|
|
||||||
@ -1330,5 +1330,5 @@ typedef enum SpvOp_ {
|
|||||||
SpvOpMax = 0x7fffffff,
|
SpvOpMax = 0x7fffffff,
|
||||||
} SpvOp;
|
} SpvOp;
|
||||||
|
|
||||||
#endif // #ifndef spirv_H
|
#endif
|
||||||
|
|
||||||
|
@ -50,11 +50,11 @@ namespace spv {
|
|||||||
typedef unsigned int Id;
|
typedef unsigned int Id;
|
||||||
|
|
||||||
#define SPV_VERSION 0x10300
|
#define SPV_VERSION 0x10300
|
||||||
#define SPV_REVISION 6
|
#define SPV_REVISION 7
|
||||||
|
|
||||||
static const unsigned int MagicNumber = 0x07230203;
|
static const unsigned int MagicNumber = 0x07230203;
|
||||||
static const unsigned int Version = 0x00010300;
|
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 OpCodeMask = 0xffff;
|
||||||
static const unsigned int WordCountShift = 16;
|
static const unsigned int WordCountShift = 16;
|
||||||
|
|
||||||
|
@ -50,11 +50,11 @@ namespace spv {
|
|||||||
typedef unsigned int Id;
|
typedef unsigned int Id;
|
||||||
|
|
||||||
#define SPV_VERSION 0x10300
|
#define SPV_VERSION 0x10300
|
||||||
#define SPV_REVISION 6
|
#define SPV_REVISION 7
|
||||||
|
|
||||||
static const unsigned int MagicNumber = 0x07230203;
|
static const unsigned int MagicNumber = 0x07230203;
|
||||||
static const unsigned int Version = 0x00010300;
|
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 OpCodeMask = 0xffff;
|
||||||
static const unsigned int WordCountShift = 16;
|
static const unsigned int WordCountShift = 16;
|
||||||
|
|
||||||
|
@ -55,7 +55,7 @@
|
|||||||
],
|
],
|
||||||
"MagicNumber": 119734787,
|
"MagicNumber": 119734787,
|
||||||
"Version": 66304,
|
"Version": 66304,
|
||||||
"Revision": 6,
|
"Revision": 7,
|
||||||
"OpCodeMask": 65535,
|
"OpCodeMask": 65535,
|
||||||
"WordCountShift": 16
|
"WordCountShift": 16
|
||||||
},
|
},
|
||||||
|
@ -45,7 +45,7 @@
|
|||||||
spv = {
|
spv = {
|
||||||
MagicNumber = 0x07230203,
|
MagicNumber = 0x07230203,
|
||||||
Version = 0x00010300,
|
Version = 0x00010300,
|
||||||
Revision = 6,
|
Revision = 7,
|
||||||
OpCodeMask = 0xffff,
|
OpCodeMask = 0xffff,
|
||||||
WordCountShift = 16,
|
WordCountShift = 16,
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@
|
|||||||
spv = {
|
spv = {
|
||||||
'MagicNumber' : 0x07230203,
|
'MagicNumber' : 0x07230203,
|
||||||
'Version' : 0x00010300,
|
'Version' : 0x00010300,
|
||||||
'Revision' : 6,
|
'Revision' : 7,
|
||||||
'OpCodeMask' : 0xffff,
|
'OpCodeMask' : 0xffff,
|
||||||
'WordCountShift' : 16,
|
'WordCountShift' : 16,
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ module spv;
|
|||||||
|
|
||||||
enum uint MagicNumber = 0x07230203;
|
enum uint MagicNumber = 0x07230203;
|
||||||
enum uint Version = 0x00010300;
|
enum uint Version = 0x00010300;
|
||||||
enum uint Revision = 6;
|
enum uint Revision = 7;
|
||||||
enum uint OpCodeMask = 0xffff;
|
enum uint OpCodeMask = 0xffff;
|
||||||
enum uint WordCountShift = 16;
|
enum uint WordCountShift = 16;
|
||||||
|
|
||||||
|
@ -69,8 +69,8 @@ namespace {
|
|||||||
|
|
||||||
static const int DocMagicNumber = 0x07230203;
|
static const int DocMagicNumber = 0x07230203;
|
||||||
static const int DocVersion = 0x00010300;
|
static const int DocVersion = 0x00010300;
|
||||||
static const int DocRevision = 6;
|
static const int DocRevision = 7;
|
||||||
#define DocRevisionString "6"
|
#define DocRevisionString "7"
|
||||||
static const std::string DocCopyright;
|
static const std::string DocCopyright;
|
||||||
static const std::string DocComment1;
|
static const std::string DocComment1;
|
||||||
static const std::string DocComment2;
|
static const std::string DocComment2;
|
||||||
|
@ -230,7 +230,21 @@ unsigned int NumberStringToBit(const std::string& str)
|
|||||||
return bit;
|
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.
|
// only do this once.
|
||||||
static bool initialized = false;
|
static bool initialized = false;
|
||||||
@ -288,6 +302,8 @@ void jsonToSpirv(const std::string& jsonPath)
|
|||||||
const Json::Value insts = root["instructions"];
|
const Json::Value insts = root["instructions"];
|
||||||
for (const auto& inst : insts) {
|
for (const auto& inst : insts) {
|
||||||
const unsigned int opcode = inst["opcode"].asUInt();
|
const unsigned int opcode = inst["opcode"].asUInt();
|
||||||
|
if (ExcludeInstruction(opcode, buildingHeaders))
|
||||||
|
continue;
|
||||||
const std::string name = inst["opname"].asString();
|
const std::string name = inst["opname"].asString();
|
||||||
EnumCaps caps = getCaps(inst);
|
EnumCaps caps = getCaps(inst);
|
||||||
std::string version = inst["version"].asString();
|
std::string version = inst["version"].asString();
|
||||||
|
@ -38,7 +38,7 @@ namespace spv {
|
|||||||
std::pair<bool, std::string> ReadFile(const std::string& path);
|
std::pair<bool, std::string> ReadFile(const std::string& path);
|
||||||
|
|
||||||
// Fill in all the parameters
|
// Fill in all the parameters
|
||||||
void jsonToSpirv(const std::string& jsonPath);
|
void jsonToSpirv(const std::string& jsonPath, bool buildingHeaders);
|
||||||
|
|
||||||
// For parameterizing operands.
|
// For parameterizing operands.
|
||||||
enum OperandClass {
|
enum OperandClass {
|
||||||
|
@ -119,7 +119,7 @@ int main(int argc, char* argv[])
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
spv::jsonToSpirv(jsonPath);
|
spv::jsonToSpirv(jsonPath, (Options & EOptionPrintHeader) != 0);
|
||||||
if (Options & EOptionPrintHeader)
|
if (Options & EOptionPrintHeader)
|
||||||
spv::PrintHeader(Language, std::cout);
|
spv::PrintHeader(Language, std::cout);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user