Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
glslang
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Chen Yisong
glslang
Commits
f368dcbb
Commit
f368dcbb
authored
Mar 17, 2020
by
John Kessenich
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
SPV headers: Bump up to the latest header.
This contains the base for ray tracing extensions.
parent
02d73f58
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
136 additions
and
3 deletions
+136
-3
spirv.hpp
SPIRV/spirv.hpp
+136
-3
No files found.
SPIRV/spirv.hpp
View file @
f368dcbb
// Copyright (c) 2014-20
19
The Khronos Group Inc.
// Copyright (c) 2014-20
20
The Khronos Group Inc.
//
//
// Permission is hereby granted, free of charge, to any person obtaining a copy
// Permission is hereby granted, free of charge, to any person obtaining a copy
// of this software and/or associated documentation files (the "Materials"),
// of this software and/or associated documentation files (the "Materials"),
...
@@ -49,11 +49,11 @@ namespace spv {
...
@@ -49,11 +49,11 @@ namespace spv {
typedef
unsigned
int
Id
;
typedef
unsigned
int
Id
;
#define SPV_VERSION 0x10
4
00
#define SPV_VERSION 0x10
5
00
#define SPV_REVISION 1
#define SPV_REVISION 1
static
const
unsigned
int
MagicNumber
=
0x07230203
;
static
const
unsigned
int
MagicNumber
=
0x07230203
;
static
const
unsigned
int
Version
=
0x00010
4
00
;
static
const
unsigned
int
Version
=
0x00010
5
00
;
static
const
unsigned
int
Revision
=
1
;
static
const
unsigned
int
Revision
=
1
;
static
const
unsigned
int
OpCodeMask
=
0xffff
;
static
const
unsigned
int
OpCodeMask
=
0xffff
;
static
const
unsigned
int
WordCountShift
=
16
;
static
const
unsigned
int
WordCountShift
=
16
;
...
@@ -78,11 +78,17 @@ enum ExecutionModel {
...
@@ -78,11 +78,17 @@ enum ExecutionModel {
ExecutionModelKernel
=
6
,
ExecutionModelKernel
=
6
,
ExecutionModelTaskNV
=
5267
,
ExecutionModelTaskNV
=
5267
,
ExecutionModelMeshNV
=
5268
,
ExecutionModelMeshNV
=
5268
,
ExecutionModelRayGenerationKHR
=
5313
,
ExecutionModelRayGenerationNV
=
5313
,
ExecutionModelRayGenerationNV
=
5313
,
ExecutionModelIntersectionKHR
=
5314
,
ExecutionModelIntersectionNV
=
5314
,
ExecutionModelIntersectionNV
=
5314
,
ExecutionModelAnyHitKHR
=
5315
,
ExecutionModelAnyHitNV
=
5315
,
ExecutionModelAnyHitNV
=
5315
,
ExecutionModelClosestHitKHR
=
5316
,
ExecutionModelClosestHitNV
=
5316
,
ExecutionModelClosestHitNV
=
5316
,
ExecutionModelMissKHR
=
5317
,
ExecutionModelMissNV
=
5317
,
ExecutionModelMissNV
=
5317
,
ExecutionModelCallableKHR
=
5318
,
ExecutionModelCallableNV
=
5318
,
ExecutionModelCallableNV
=
5318
,
ExecutionModelMax
=
0x7fffffff
,
ExecutionModelMax
=
0x7fffffff
,
};
};
...
@@ -179,11 +185,17 @@ enum StorageClass {
...
@@ -179,11 +185,17 @@ enum StorageClass {
StorageClassAtomicCounter
=
10
,
StorageClassAtomicCounter
=
10
,
StorageClassImage
=
11
,
StorageClassImage
=
11
,
StorageClassStorageBuffer
=
12
,
StorageClassStorageBuffer
=
12
,
StorageClassCallableDataKHR
=
5328
,
StorageClassCallableDataNV
=
5328
,
StorageClassCallableDataNV
=
5328
,
StorageClassIncomingCallableDataKHR
=
5329
,
StorageClassIncomingCallableDataNV
=
5329
,
StorageClassIncomingCallableDataNV
=
5329
,
StorageClassRayPayloadKHR
=
5338
,
StorageClassRayPayloadNV
=
5338
,
StorageClassRayPayloadNV
=
5338
,
StorageClassHitAttributeKHR
=
5339
,
StorageClassHitAttributeNV
=
5339
,
StorageClassHitAttributeNV
=
5339
,
StorageClassIncomingRayPayloadKHR
=
5342
,
StorageClassIncomingRayPayloadNV
=
5342
,
StorageClassIncomingRayPayloadNV
=
5342
,
StorageClassShaderRecordBufferKHR
=
5343
,
StorageClassShaderRecordBufferNV
=
5343
,
StorageClassShaderRecordBufferNV
=
5343
,
StorageClassPhysicalStorageBuffer
=
5349
,
StorageClassPhysicalStorageBuffer
=
5349
,
StorageClassPhysicalStorageBufferEXT
=
5349
,
StorageClassPhysicalStorageBufferEXT
=
5349
,
...
@@ -558,20 +570,35 @@ enum BuiltIn {
...
@@ -558,20 +570,35 @@ enum BuiltIn {
BuiltInFragmentSizeNV
=
5292
,
BuiltInFragmentSizeNV
=
5292
,
BuiltInFragInvocationCountEXT
=
5293
,
BuiltInFragInvocationCountEXT
=
5293
,
BuiltInInvocationsPerPixelNV
=
5293
,
BuiltInInvocationsPerPixelNV
=
5293
,
BuiltInLaunchIdKHR
=
5319
,
BuiltInLaunchIdNV
=
5319
,
BuiltInLaunchIdNV
=
5319
,
BuiltInLaunchSizeKHR
=
5320
,
BuiltInLaunchSizeNV
=
5320
,
BuiltInLaunchSizeNV
=
5320
,
BuiltInWorldRayOriginKHR
=
5321
,
BuiltInWorldRayOriginNV
=
5321
,
BuiltInWorldRayOriginNV
=
5321
,
BuiltInWorldRayDirectionKHR
=
5322
,
BuiltInWorldRayDirectionNV
=
5322
,
BuiltInWorldRayDirectionNV
=
5322
,
BuiltInObjectRayOriginKHR
=
5323
,
BuiltInObjectRayOriginNV
=
5323
,
BuiltInObjectRayOriginNV
=
5323
,
BuiltInObjectRayDirectionKHR
=
5324
,
BuiltInObjectRayDirectionNV
=
5324
,
BuiltInObjectRayDirectionNV
=
5324
,
BuiltInRayTminKHR
=
5325
,
BuiltInRayTminNV
=
5325
,
BuiltInRayTminNV
=
5325
,
BuiltInRayTmaxKHR
=
5326
,
BuiltInRayTmaxNV
=
5326
,
BuiltInRayTmaxNV
=
5326
,
BuiltInInstanceCustomIndexKHR
=
5327
,
BuiltInInstanceCustomIndexNV
=
5327
,
BuiltInInstanceCustomIndexNV
=
5327
,
BuiltInObjectToWorldKHR
=
5330
,
BuiltInObjectToWorldNV
=
5330
,
BuiltInObjectToWorldNV
=
5330
,
BuiltInWorldToObjectKHR
=
5331
,
BuiltInWorldToObjectNV
=
5331
,
BuiltInWorldToObjectNV
=
5331
,
BuiltInHitTKHR
=
5332
,
BuiltInHitTNV
=
5332
,
BuiltInHitTNV
=
5332
,
BuiltInHitKindKHR
=
5333
,
BuiltInHitKindNV
=
5333
,
BuiltInHitKindNV
=
5333
,
BuiltInIncomingRayFlagsKHR
=
5351
,
BuiltInIncomingRayFlagsNV
=
5351
,
BuiltInIncomingRayFlagsNV
=
5351
,
BuiltInRayGeometryIndexKHR
=
5352
,
BuiltInWarpsPerSMNV
=
5374
,
BuiltInWarpsPerSMNV
=
5374
,
BuiltInSMCountNV
=
5375
,
BuiltInSMCountNV
=
5375
,
BuiltInWarpIDNV
=
5376
,
BuiltInWarpIDNV
=
5376
,
...
@@ -709,6 +736,7 @@ enum Scope {
...
@@ -709,6 +736,7 @@ enum Scope {
ScopeInvocation
=
4
,
ScopeInvocation
=
4
,
ScopeQueueFamily
=
5
,
ScopeQueueFamily
=
5
,
ScopeQueueFamilyKHR
=
5
,
ScopeQueueFamilyKHR
=
5
,
ScopeShaderCallKHR
=
6
,
ScopeMax
=
0x7fffffff
,
ScopeMax
=
0x7fffffff
,
};
};
...
@@ -833,6 +861,8 @@ enum Capability {
...
@@ -833,6 +861,8 @@ enum Capability {
CapabilitySignedZeroInfNanPreserve
=
4466
,
CapabilitySignedZeroInfNanPreserve
=
4466
,
CapabilityRoundingModeRTE
=
4467
,
CapabilityRoundingModeRTE
=
4467
,
CapabilityRoundingModeRTZ
=
4468
,
CapabilityRoundingModeRTZ
=
4468
,
CapabilityRayQueryProvisionalKHR
=
4471
,
CapabilityRayTraversalPrimitiveCullingProvisionalKHR
=
4478
,
CapabilityFloat16ImageAMD
=
5008
,
CapabilityFloat16ImageAMD
=
5008
,
CapabilityImageGatherBiasLodAMD
=
5009
,
CapabilityImageGatherBiasLodAMD
=
5009
,
CapabilityFragmentMaskAMD
=
5010
,
CapabilityFragmentMaskAMD
=
5010
,
...
@@ -886,6 +916,7 @@ enum Capability {
...
@@ -886,6 +916,7 @@ enum Capability {
CapabilityPhysicalStorageBufferAddresses
=
5347
,
CapabilityPhysicalStorageBufferAddresses
=
5347
,
CapabilityPhysicalStorageBufferAddressesEXT
=
5347
,
CapabilityPhysicalStorageBufferAddressesEXT
=
5347
,
CapabilityComputeDerivativeGroupLinearNV
=
5350
,
CapabilityComputeDerivativeGroupLinearNV
=
5350
,
CapabilityRayTracingProvisionalKHR
=
5353
,
CapabilityCooperativeMatrixNV
=
5357
,
CapabilityCooperativeMatrixNV
=
5357
,
CapabilityFragmentShaderSampleInterlockEXT
=
5363
,
CapabilityFragmentShaderSampleInterlockEXT
=
5363
,
CapabilityFragmentShaderShadingRateInterlockEXT
=
5372
,
CapabilityFragmentShaderShadingRateInterlockEXT
=
5372
,
...
@@ -903,6 +934,53 @@ enum Capability {
...
@@ -903,6 +934,53 @@ enum Capability {
CapabilityMax
=
0x7fffffff
,
CapabilityMax
=
0x7fffffff
,
};
};
enum
RayFlagsShift
{
RayFlagsOpaqueKHRShift
=
0
,
RayFlagsNoOpaqueKHRShift
=
1
,
RayFlagsTerminateOnFirstHitKHRShift
=
2
,
RayFlagsSkipClosestHitShaderKHRShift
=
3
,
RayFlagsCullBackFacingTrianglesKHRShift
=
4
,
RayFlagsCullFrontFacingTrianglesKHRShift
=
5
,
RayFlagsCullOpaqueKHRShift
=
6
,
RayFlagsCullNoOpaqueKHRShift
=
7
,
RayFlagsSkipTrianglesKHRShift
=
8
,
RayFlagsSkipAABBsKHRShift
=
9
,
RayFlagsMax
=
0x7fffffff
,
};
enum
RayFlagsMask
{
RayFlagsMaskNone
=
0
,
RayFlagsOpaqueKHRMask
=
0x00000001
,
RayFlagsNoOpaqueKHRMask
=
0x00000002
,
RayFlagsTerminateOnFirstHitKHRMask
=
0x00000004
,
RayFlagsSkipClosestHitShaderKHRMask
=
0x00000008
,
RayFlagsCullBackFacingTrianglesKHRMask
=
0x00000010
,
RayFlagsCullFrontFacingTrianglesKHRMask
=
0x00000020
,
RayFlagsCullOpaqueKHRMask
=
0x00000040
,
RayFlagsCullNoOpaqueKHRMask
=
0x00000080
,
RayFlagsSkipTrianglesKHRMask
=
0x00000100
,
RayFlagsSkipAABBsKHRMask
=
0x00000200
,
};
enum
RayQueryIntersection
{
RayQueryIntersectionRayQueryCandidateIntersectionKHR
=
0
,
RayQueryIntersectionRayQueryCommittedIntersectionKHR
=
1
,
RayQueryIntersectionMax
=
0x7fffffff
,
};
enum
RayQueryCommittedIntersectionType
{
RayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionNoneKHR
=
0
,
RayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionTriangleKHR
=
1
,
RayQueryCommittedIntersectionTypeRayQueryCommittedIntersectionGeneratedKHR
=
2
,
RayQueryCommittedIntersectionTypeMax
=
0x7fffffff
,
};
enum
RayQueryCandidateIntersectionType
{
RayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionTriangleKHR
=
0
,
RayQueryCandidateIntersectionTypeRayQueryCandidateIntersectionAABBKHR
=
1
,
RayQueryCandidateIntersectionTypeMax
=
0x7fffffff
,
};
enum
Op
{
enum
Op
{
OpNop
=
0
,
OpNop
=
0
,
OpUndef
=
1
,
OpUndef
=
1
,
...
@@ -1254,6 +1332,13 @@ enum Op {
...
@@ -1254,6 +1332,13 @@ enum Op {
OpSubgroupAnyKHR
=
4429
,
OpSubgroupAnyKHR
=
4429
,
OpSubgroupAllEqualKHR
=
4430
,
OpSubgroupAllEqualKHR
=
4430
,
OpSubgroupReadInvocationKHR
=
4432
,
OpSubgroupReadInvocationKHR
=
4432
,
OpTypeRayQueryProvisionalKHR
=
4472
,
OpRayQueryInitializeKHR
=
4473
,
OpRayQueryTerminateKHR
=
4474
,
OpRayQueryGenerateIntersectionKHR
=
4475
,
OpRayQueryConfirmIntersectionKHR
=
4476
,
OpRayQueryProceedKHR
=
4477
,
OpRayQueryGetIntersectionTypeKHR
=
4479
,
OpGroupIAddNonUniformAMD
=
5000
,
OpGroupIAddNonUniformAMD
=
5000
,
OpGroupFAddNonUniformAMD
=
5001
,
OpGroupFAddNonUniformAMD
=
5001
,
OpGroupFMinNonUniformAMD
=
5002
,
OpGroupFMinNonUniformAMD
=
5002
,
...
@@ -1268,11 +1353,17 @@ enum Op {
...
@@ -1268,11 +1353,17 @@ enum Op {
OpImageSampleFootprintNV
=
5283
,
OpImageSampleFootprintNV
=
5283
,
OpGroupNonUniformPartitionNV
=
5296
,
OpGroupNonUniformPartitionNV
=
5296
,
OpWritePackedPrimitiveIndices4x8NV
=
5299
,
OpWritePackedPrimitiveIndices4x8NV
=
5299
,
OpReportIntersectionKHR
=
5334
,
OpReportIntersectionNV
=
5334
,
OpReportIntersectionNV
=
5334
,
OpIgnoreIntersectionKHR
=
5335
,
OpIgnoreIntersectionNV
=
5335
,
OpIgnoreIntersectionNV
=
5335
,
OpTerminateRayKHR
=
5336
,
OpTerminateRayNV
=
5336
,
OpTerminateRayNV
=
5336
,
OpTraceNV
=
5337
,
OpTraceNV
=
5337
,
OpTraceRayKHR
=
5337
,
OpTypeAccelerationStructureKHR
=
5341
,
OpTypeAccelerationStructureNV
=
5341
,
OpTypeAccelerationStructureNV
=
5341
,
OpExecuteCallableKHR
=
5344
,
OpExecuteCallableNV
=
5344
,
OpExecuteCallableNV
=
5344
,
OpTypeCooperativeMatrixNV
=
5358
,
OpTypeCooperativeMatrixNV
=
5358
,
OpCooperativeMatrixLoadNV
=
5359
,
OpCooperativeMatrixLoadNV
=
5359
,
...
@@ -1429,6 +1520,23 @@ enum Op {
...
@@ -1429,6 +1520,23 @@ enum Op {
OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL
=
5814
,
OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL
=
5814
,
OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL
=
5815
,
OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL
=
5815
,
OpSubgroupAvcSicGetInterRawSadsINTEL
=
5816
,
OpSubgroupAvcSicGetInterRawSadsINTEL
=
5816
,
OpRayQueryGetRayTMinKHR
=
6016
,
OpRayQueryGetRayFlagsKHR
=
6017
,
OpRayQueryGetIntersectionTKHR
=
6018
,
OpRayQueryGetIntersectionInstanceCustomIndexKHR
=
6019
,
OpRayQueryGetIntersectionInstanceIdKHR
=
6020
,
OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR
=
6021
,
OpRayQueryGetIntersectionGeometryIndexKHR
=
6022
,
OpRayQueryGetIntersectionPrimitiveIndexKHR
=
6023
,
OpRayQueryGetIntersectionBarycentricsKHR
=
6024
,
OpRayQueryGetIntersectionFrontFaceKHR
=
6025
,
OpRayQueryGetIntersectionCandidateAABBOpaqueKHR
=
6026
,
OpRayQueryGetIntersectionObjectRayDirectionKHR
=
6027
,
OpRayQueryGetIntersectionObjectRayOriginKHR
=
6028
,
OpRayQueryGetWorldRayDirectionKHR
=
6029
,
OpRayQueryGetWorldRayOriginKHR
=
6030
,
OpRayQueryGetIntersectionObjectToWorldKHR
=
6031
,
OpRayQueryGetIntersectionWorldToObjectKHR
=
6032
,
OpMax
=
0x7fffffff
,
OpMax
=
0x7fffffff
,
};
};
...
@@ -1806,6 +1914,30 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
...
@@ -1806,6 +1914,30 @@ inline void HasResultAndType(Op opcode, bool *hasResult, bool *hasResultType) {
case
OpTerminateRayNV
:
*
hasResult
=
false
;
*
hasResultType
=
false
;
break
;
case
OpTerminateRayNV
:
*
hasResult
=
false
;
*
hasResultType
=
false
;
break
;
case
OpTraceNV
:
*
hasResult
=
false
;
*
hasResultType
=
false
;
break
;
case
OpTraceNV
:
*
hasResult
=
false
;
*
hasResultType
=
false
;
break
;
case
OpTypeAccelerationStructureNV
:
*
hasResult
=
true
;
*
hasResultType
=
false
;
break
;
case
OpTypeAccelerationStructureNV
:
*
hasResult
=
true
;
*
hasResultType
=
false
;
break
;
case
OpTypeRayQueryProvisionalKHR
:
*
hasResult
=
true
;
*
hasResultType
=
false
;
break
;
case
OpRayQueryInitializeKHR
:
*
hasResult
=
false
;
*
hasResultType
=
false
;
break
;
case
OpRayQueryTerminateKHR
:
*
hasResult
=
false
;
*
hasResultType
=
false
;
break
;
case
OpRayQueryGenerateIntersectionKHR
:
*
hasResult
=
false
;
*
hasResultType
=
false
;
break
;
case
OpRayQueryConfirmIntersectionKHR
:
*
hasResult
=
false
;
*
hasResultType
=
false
;
break
;
case
OpRayQueryProceedKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionTypeKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetRayTMinKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetRayFlagsKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionTKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionInstanceCustomIndexKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionInstanceIdKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionGeometryIndexKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionPrimitiveIndexKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionBarycentricsKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionFrontFaceKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionCandidateAABBOpaqueKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionObjectRayDirectionKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionObjectRayOriginKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetWorldRayDirectionKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetWorldRayOriginKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionObjectToWorldKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpRayQueryGetIntersectionWorldToObjectKHR
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpExecuteCallableNV
:
*
hasResult
=
false
;
*
hasResultType
=
false
;
break
;
case
OpExecuteCallableNV
:
*
hasResult
=
false
;
*
hasResultType
=
false
;
break
;
case
OpTypeCooperativeMatrixNV
:
*
hasResult
=
true
;
*
hasResultType
=
false
;
break
;
case
OpTypeCooperativeMatrixNV
:
*
hasResult
=
true
;
*
hasResultType
=
false
;
break
;
case
OpCooperativeMatrixLoadNV
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
case
OpCooperativeMatrixLoadNV
:
*
hasResult
=
true
;
*
hasResultType
=
true
;
break
;
...
@@ -1974,6 +2106,7 @@ inline FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask
...
@@ -1974,6 +2106,7 @@ inline FunctionControlMask operator|(FunctionControlMask a, FunctionControlMask
inline
MemorySemanticsMask
operator
|
(
MemorySemanticsMask
a
,
MemorySemanticsMask
b
)
{
return
MemorySemanticsMask
(
unsigned
(
a
)
|
unsigned
(
b
));
}
inline
MemorySemanticsMask
operator
|
(
MemorySemanticsMask
a
,
MemorySemanticsMask
b
)
{
return
MemorySemanticsMask
(
unsigned
(
a
)
|
unsigned
(
b
));
}
inline
MemoryAccessMask
operator
|
(
MemoryAccessMask
a
,
MemoryAccessMask
b
)
{
return
MemoryAccessMask
(
unsigned
(
a
)
|
unsigned
(
b
));
}
inline
MemoryAccessMask
operator
|
(
MemoryAccessMask
a
,
MemoryAccessMask
b
)
{
return
MemoryAccessMask
(
unsigned
(
a
)
|
unsigned
(
b
));
}
inline
KernelProfilingInfoMask
operator
|
(
KernelProfilingInfoMask
a
,
KernelProfilingInfoMask
b
)
{
return
KernelProfilingInfoMask
(
unsigned
(
a
)
|
unsigned
(
b
));
}
inline
KernelProfilingInfoMask
operator
|
(
KernelProfilingInfoMask
a
,
KernelProfilingInfoMask
b
)
{
return
KernelProfilingInfoMask
(
unsigned
(
a
)
|
unsigned
(
b
));
}
inline
RayFlagsMask
operator
|
(
RayFlagsMask
a
,
RayFlagsMask
b
)
{
return
RayFlagsMask
(
unsigned
(
a
)
|
unsigned
(
b
));
}
}
// end namespace spv
}
// end namespace spv
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment