Project import/vulkan - Diff f5f6c8625f...55b5ef98c2

... ... --- a/.abf.yml
... ... +++ b/.abf.yml
... ... @@ -1,6 +1,5 @@
1 1
sources:
2
  Vulkan-Loader-sdk-1.1.92.0.tar.gz: e27eeedd08148392e010f1c38cd3317eabcea929
3
  Vulkan-Headers-sdk-1.1.92.0.tar.gz: 96a8697b8622dbc8cf292e283db731b35f167827
4
  Vulkan-Tools-sdk-1.1.92.0.tar.gz: b1a61c67b8690a7d7ae61af8fed2076ff59c88cd
5
2
  Vulkan-Headers-sdk-1.1.101.0.tar.gz: 45e71af9e6d4dd905b60237763fb6cbf5f364650
3
  Vulkan-Loader-sdk-1.1.101.0.tar.gz: 774c3718eb2a8fb8c20f363acdee1f628ed712ec
4
  Vulkan-Tools-sdk-1.1.101.0.tar.gz: 8fa78c8e57aeab562a1d0f135fc6572b1841edec
6 5
view file @ 55b5ef98c2
... ... --- a/GLSL.std.450.h
... ... +++ b/GLSL.std.450.h
... ... @@ -129,4 +129,3 @@ enum GLSLstd450 {
129 129
};
130 130
131 131
#endif  // #ifndef GLSLstd450_H
132
... ... --- a/spirv.h
... ... +++ b/spirv.h
... ... @@ -1,5 +1,5 @@
1 1
/*
2
** Copyright (c) 2014-2018 The Khronos Group Inc.
2
** Copyright (c) 2014-2019 The Khronos Group Inc.
3 3
** 
4 4
** Permission is hereby granted, free of charge, to any person obtaining a copy
5 5
** of this software and/or associated documentation files (the "Materials"),
... ... @@ -31,14 +31,16 @@
31 31
32 32
/*
33 33
** Enumeration tokens for SPIR-V, in various styles:
34
**   C, C++, C++11, JSON, Lua, Python, C#
34
**   C, C++, C++11, JSON, Lua, Python, C#, D
35 35
** 
36 36
** - C will have tokens with a "Spv" prefix, e.g.: SpvSourceLanguageGLSL
37 37
** - C++ will have tokens in the "spv" name space, e.g.: spv::SourceLanguageGLSL
38 38
** - C++11 will use enum classes in the spv namespace, e.g.: spv::SourceLanguage::GLSL
39 39
** - Lua will use tables, e.g.: spv.SourceLanguage.GLSL
40 40
** - Python will use dictionaries, e.g.: spv['SourceLanguage']['GLSL']
41
** - C# will use enum classes in the Specification class located in the "Spv" namespace, e.g.: Spv.Specification.SourceLanguage.GLSL
41
** - C# will use enum classes in the Specification class located in the "Spv" namespace,
42
**     e.g.: Spv.Specification.SourceLanguage.GLSL
43
** - D will have tokens under the "spv" module, e.g: spv.SourceLanguage.GLSL
42 44
** 
43 45
** Some tokens act like mask values, which can be OR'd together,
44 46
** while others are mutually exclusive.  The mask-like ones have
... ... @@ -52,11 +54,11 @@
54 54
typedef unsigned int SpvId;
55 55
56 56
#define SPV_VERSION 0x10300
57
#define SPV_REVISION 6
57
#define SPV_REVISION 7
58 58
59 59
static const unsigned int SpvMagicNumber = 0x07230203;
60 60
static const unsigned int SpvVersion = 0x00010300;
61
static const unsigned int SpvRevision = 6;
61
static const unsigned int SpvRevision = 7;
62 62
static const unsigned int SpvOpCodeMask = 0xffff;
63 63
static const unsigned int SpvWordCountShift = 16;
64 64
... ... @@ -93,6 +95,7 @@ typedef enum SpvAddressingModel_ {
95 95
    SpvAddressingModelLogical = 0,
96 96
    SpvAddressingModelPhysical32 = 1,
97 97
    SpvAddressingModelPhysical64 = 2,
98
    SpvAddressingModelPhysicalStorageBuffer64EXT = 5348,
98 99
    SpvAddressingModelMax = 0x7fffffff,
99 100
} SpvAddressingModel;
100 101
... ... @@ -178,6 +181,7 @@ typedef enum SpvStorageClass_ {
181 181
    SpvStorageClassHitAttributeNV = 5339,
182 182
    SpvStorageClassIncomingRayPayloadNV = 5342,
183 183
    SpvStorageClassShaderRecordBufferNV = 5343,
184
    SpvStorageClassPhysicalStorageBufferEXT = 5349,
184 185
    SpvStorageClassMax = 0x7fffffff,
185 186
} SpvStorageClass;
186 187
... ... @@ -438,6 +442,8 @@ typedef enum SpvDecoration_ {
442 442
    SpvDecorationPerTaskNV = 5273,
443 443
    SpvDecorationPerVertexNV = 5285,
444 444
    SpvDecorationNonUniformEXT = 5300,
445
    SpvDecorationRestrictPointerEXT = 5355,
446
    SpvDecorationAliasedPointerEXT = 5356,
445 447
    SpvDecorationHlslCounterBufferGOOGLE = 5634,
446 448
    SpvDecorationHlslSemanticGOOGLE = 5635,
447 449
    SpvDecorationMax = 0x7fffffff,
... ... @@ -807,10 +813,16 @@ typedef enum SpvCapability_ {
813 813
    SpvCapabilityRayTracingNV = 5340,
814 814
    SpvCapabilityVulkanMemoryModelKHR = 5345,
815 815
    SpvCapabilityVulkanMemoryModelDeviceScopeKHR = 5346,
816
    SpvCapabilityPhysicalStorageBufferAddressesEXT = 5347,
816 817
    SpvCapabilityComputeDerivativeGroupLinearNV = 5350,
818
    SpvCapabilityCooperativeMatrixNV = 5357,
817 819
    SpvCapabilitySubgroupShuffleINTEL = 5568,
818 820
    SpvCapabilitySubgroupBufferBlockIOINTEL = 5569,
819 821
    SpvCapabilitySubgroupImageBlockIOINTEL = 5570,
822
    SpvCapabilitySubgroupImageMediaBlockIOINTEL = 5579,
823
    SpvCapabilitySubgroupAvcMotionEstimationINTEL = 5696,
824
    SpvCapabilitySubgroupAvcMotionEstimationIntraINTEL = 5697,
825
    SpvCapabilitySubgroupAvcMotionEstimationChromaINTEL = 5698,
820 826
    SpvCapabilityMax = 0x7fffffff,
821 827
} SpvCapability;
822 828
... ... @@ -1180,6 +1192,11 @@ typedef enum SpvOp_ {
1192 1192
    SpvOpTraceNV = 5337,
1193 1193
    SpvOpTypeAccelerationStructureNV = 5341,
1194 1194
    SpvOpExecuteCallableNV = 5344,
1195
    SpvOpTypeCooperativeMatrixNV = 5358,
1196
    SpvOpCooperativeMatrixLoadNV = 5359,
1197
    SpvOpCooperativeMatrixStoreNV = 5360,
1198
    SpvOpCooperativeMatrixMulAddNV = 5361,
1199
    SpvOpCooperativeMatrixLengthNV = 5362,
1195 1200
    SpvOpSubgroupShuffleINTEL = 5571,
1196 1201
    SpvOpSubgroupShuffleDownINTEL = 5572,
1197 1202
    SpvOpSubgroupShuffleUpINTEL = 5573,
... ... @@ -1188,10 +1205,130 @@ typedef enum SpvOp_ {
1205 1205
    SpvOpSubgroupBlockWriteINTEL = 5576,
1206 1206
    SpvOpSubgroupImageBlockReadINTEL = 5577,
1207 1207
    SpvOpSubgroupImageBlockWriteINTEL = 5578,
1208
    SpvOpSubgroupImageMediaBlockReadINTEL = 5580,
1209
    SpvOpSubgroupImageMediaBlockWriteINTEL = 5581,
1208 1210
    SpvOpDecorateStringGOOGLE = 5632,
1209 1211
    SpvOpMemberDecorateStringGOOGLE = 5633,
1212
    SpvOpVmeImageINTEL = 5699,
1213
    SpvOpTypeVmeImageINTEL = 5700,
1214
    SpvOpTypeAvcImePayloadINTEL = 5701,
1215
    SpvOpTypeAvcRefPayloadINTEL = 5702,
1216
    SpvOpTypeAvcSicPayloadINTEL = 5703,
1217
    SpvOpTypeAvcMcePayloadINTEL = 5704,
1218
    SpvOpTypeAvcMceResultINTEL = 5705,
1219
    SpvOpTypeAvcImeResultINTEL = 5706,
1220
    SpvOpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707,
1221
    SpvOpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708,
1222
    SpvOpTypeAvcImeSingleReferenceStreaminINTEL = 5709,
1223
    SpvOpTypeAvcImeDualReferenceStreaminINTEL = 5710,
1224
    SpvOpTypeAvcRefResultINTEL = 5711,
1225
    SpvOpTypeAvcSicResultINTEL = 5712,
1226
    SpvOpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713,
1227
    SpvOpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714,
1228
    SpvOpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715,
1229
    SpvOpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716,
1230
    SpvOpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717,
1231
    SpvOpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718,
1232
    SpvOpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719,
1233
    SpvOpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720,
1234
    SpvOpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721,
1235
    SpvOpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722,
1236
    SpvOpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723,
1237
    SpvOpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724,
1238
    SpvOpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725,
1239
    SpvOpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726,
1240
    SpvOpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727,
1241
    SpvOpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728,
1242
    SpvOpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729,
1243
    SpvOpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730,
1244
    SpvOpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731,
1245
    SpvOpSubgroupAvcMceConvertToImePayloadINTEL = 5732,
1246
    SpvOpSubgroupAvcMceConvertToImeResultINTEL = 5733,
1247
    SpvOpSubgroupAvcMceConvertToRefPayloadINTEL = 5734,
1248
    SpvOpSubgroupAvcMceConvertToRefResultINTEL = 5735,
1249
    SpvOpSubgroupAvcMceConvertToSicPayloadINTEL = 5736,
1250
    SpvOpSubgroupAvcMceConvertToSicResultINTEL = 5737,
1251
    SpvOpSubgroupAvcMceGetMotionVectorsINTEL = 5738,
1252
    SpvOpSubgroupAvcMceGetInterDistortionsINTEL = 5739,
1253
    SpvOpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740,
1254
    SpvOpSubgroupAvcMceGetInterMajorShapeINTEL = 5741,
1255
    SpvOpSubgroupAvcMceGetInterMinorShapeINTEL = 5742,
1256
    SpvOpSubgroupAvcMceGetInterDirectionsINTEL = 5743,
1257
    SpvOpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744,
1258
    SpvOpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745,
1259
    SpvOpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746,
1260
    SpvOpSubgroupAvcImeInitializeINTEL = 5747,
1261
    SpvOpSubgroupAvcImeSetSingleReferenceINTEL = 5748,
1262
    SpvOpSubgroupAvcImeSetDualReferenceINTEL = 5749,
1263
    SpvOpSubgroupAvcImeRefWindowSizeINTEL = 5750,
1264
    SpvOpSubgroupAvcImeAdjustRefOffsetINTEL = 5751,
1265
    SpvOpSubgroupAvcImeConvertToMcePayloadINTEL = 5752,
1266
    SpvOpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753,
1267
    SpvOpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754,
1268
    SpvOpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755,
1269
    SpvOpSubgroupAvcImeSetWeightedSadINTEL = 5756,
1270
    SpvOpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757,
1271
    SpvOpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758,
1272
    SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759,
1273
    SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760,
1274
    SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761,
1275
    SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762,
1276
    SpvOpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763,
1277
    SpvOpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764,
1278
    SpvOpSubgroupAvcImeConvertToMceResultINTEL = 5765,
1279
    SpvOpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766,
1280
    SpvOpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767,
1281
    SpvOpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768,
1282
    SpvOpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769,
1283
    SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770,
1284
    SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771,
1285
    SpvOpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772,
1286
    SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773,
1287
    SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774,
1288
    SpvOpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775,
1289
    SpvOpSubgroupAvcImeGetBorderReachedINTEL = 5776,
1290
    SpvOpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777,
1291
    SpvOpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778,
1292
    SpvOpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779,
1293
    SpvOpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780,
1294
    SpvOpSubgroupAvcFmeInitializeINTEL = 5781,
1295
    SpvOpSubgroupAvcBmeInitializeINTEL = 5782,
1296
    SpvOpSubgroupAvcRefConvertToMcePayloadINTEL = 5783,
1297
    SpvOpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784,
1298
    SpvOpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785,
1299
    SpvOpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786,
1300
    SpvOpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787,
1301
    SpvOpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788,
1302
    SpvOpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789,
1303
    SpvOpSubgroupAvcRefConvertToMceResultINTEL = 5790,
1304
    SpvOpSubgroupAvcSicInitializeINTEL = 5791,
1305
    SpvOpSubgroupAvcSicConfigureSkcINTEL = 5792,
1306
    SpvOpSubgroupAvcSicConfigureIpeLumaINTEL = 5793,
1307
    SpvOpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794,
1308
    SpvOpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795,
1309
    SpvOpSubgroupAvcSicConvertToMcePayloadINTEL = 5796,
1310
    SpvOpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797,
1311
    SpvOpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798,
1312
    SpvOpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799,
1313
    SpvOpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800,
1314
    SpvOpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801,
1315
    SpvOpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802,
1316
    SpvOpSubgroupAvcSicEvaluateIpeINTEL = 5803,
1317
    SpvOpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804,
1318
    SpvOpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805,
1319
    SpvOpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806,
1320
    SpvOpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807,
1321
    SpvOpSubgroupAvcSicConvertToMceResultINTEL = 5808,
1322
    SpvOpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809,
1323
    SpvOpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810,
1324
    SpvOpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811,
1325
    SpvOpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812,
1326
    SpvOpSubgroupAvcSicGetIpeChromaModeINTEL = 5813,
1327
    SpvOpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814,
1328
    SpvOpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815,
1329
    SpvOpSubgroupAvcSicGetInterRawSadsINTEL = 5816,
1210 1330
    SpvOpMax = 0x7fffffff,
1211 1331
} SpvOp;
1212 1332
1213
#endif  // #ifndef spirv_H
1333
#endif
1214 1334
... ... --- a/vulkan.spec
... ... +++ b/vulkan.spec
... ... @@ -1,14 +1,17 @@
1 1
# [NB] We do not provide the validation layers here yet, for simplicity.
2 2
# The goal is to just let our users try Vulkan-based games, etc.
3 3
4
# Use bcond_without for even build.
5
%bcond_without vulkaninfo
6
4 7
%define	major 1
5 8
%define	libname %mklibname vulkan %{major}
6 9
%define	devname %mklibname vulkan -d
7 10
8 11
Summary:	Installable Client Driver (ICD) Loader
9 12
Name:		vulkan
10
Version:	1.1.92.0
11
Release:	2
13
Version:	1.1.101.0
14
Release:	4
12 15
License:	ASL 2.0
13 16
Group:		Graphics
14 17
Url:		https://github.com/KhronosGroup/
... ... @@ -27,7 +30,9 @@ BuildRequires: cmake
30 30
BuildRequires:	python3
31 31
BuildRequires:	pkgconfig(libsystemd)
32 32
BuildRequires:	pkgconfig(pciaccess)
33
%if %{with vulkaninfo}
33 34
BuildRequires:	pkgconfig(vulkan)
35
%endif
34 36
BuildRequires:	pkgconfig(wayland-client)
35 37
BuildRequires:	pkgconfig(wayland-cursor)
36 38
BuildRequires:	pkgconfig(wayland-server)
... ... @@ -46,11 +51,13 @@ devices from PCs and consoles to mobile phones and embedded platforms.
51 51
This package contains the common files and utilies for Vulkan.
52 52
53 53
%files
54
%doc LICENSE.txt COPYRIGHT.txt
54
%doc LICENSE.txt README.md
55 55
%doc README.md CONTRIBUTING.md
56 56
%dir %{_sysconfdir}/%{name}
57 57
%dir %{_sysconfdir}/%{name}/icd.d
58
%{_bindir}/%{name}info
58
%if %{with vulkaninfo}
59
%{_bindir}/vulkaninfo
60
%endif
59 61
%attr(0755,root,root) %{_datadir}/%{name}/registry/*.py
60 62
%{_datadir}/%{name}/registry/vk.xml
61 63
%{_datadir}/%{name}/registry/validusage.json
... ... @@ -99,20 +106,21 @@ pushd Vulkan-Headers-sdk-%{version}
106 106
%make
107 107
popd
108 108
109
%if %{with vulkaninfo}
109 110
pushd Vulkan-Tools-sdk-%{version}
110 111
%cmake \
111 112
	-DBUILD_CUBE=OFF \
112 113
	-DBUILD_ICD=OFF
113 114
%make
114 115
popd
116
%endif
115 117
116 118
%cmake \
117 119
	-DBUILD_TESTS=OFF \
118 120
	-DBUILD_WSI_XCB_SUPPORT=ON \
119 121
	-DBUILD_WSI_XLIB_SUPPORT=ON \
120 122
	-DBUILD_WSI_WAYLAND_SUPPORT=ON \
121
	-DBUILD_WSI_MIR_SUPPORT=OFF \
122
	-DCMAKE_INSTALL_SYSCONFDIR:PATH=%{_sysconfdir} \
123
	-DCMAKE_INSTALL_FULL_SYSCONFDIR:PATH=%{_sysconfdir} \
123 124
	-DVULKAN_HEADERS_INSTALL_DIR:PATH=Vulkan-Headers-sdk-%{version}
124 125
%make
125 126
... ... @@ -121,9 +129,11 @@ pushd Vulkan-Headers-sdk-%{version}
129 129
%makeinstall_std -C build
130 130
popd
131 131
132
%if %{with vulkaninfo}
132 133
pushd Vulkan-Tools-sdk-%{version}
133 134
%makeinstall_std -C build
134 135
popd
136
%endif
135 137
136 138
%makeinstall_std -C build
137 139