Lines Matching refs:std
42 // Parameter for validation test fixtures. The first std::string is a
44 // remainder assembly, and the std::vector at the end determines whether the
64 // std::vector of capabilities that make the remainder assembly succeed. So if
65 // the first-line capability exists in that std::vector, success is expected;
74 std::tuple<std::string, std::pair<std::string, std::vector<std::string>>>;
76 const std::string& Capability(const CapTestParameter& p) {
77 return std::get<0>(p);
79 const std::string& Remainder(const CapTestParameter& p) {
80 return std::get<1>(p).first;
82 const std::vector<std::string>& MustSucceed(const CapTestParameter& p) {
83 return std::get<1>(p).second;
87 std::string MakeAssembly(const CapTestParameter& p) {
88 std::ostringstream ss;
89 const std::string& capability = Capability(p);
136 const std::vector<std::string>& AllCapabilities() {
137 static const auto r = new std::vector<std::string>{
220 const std::vector<std::string>& AllSpirV15Capabilities() {
221 static const auto r = new std::vector<std::string>{
328 const std::vector<std::string>& AllSpirV10Capabilities() {
329 static const auto r = new std::vector<std::string>{
390 const std::vector<std::string>& AllVulkan10Capabilities() {
391 static const auto r = new std::vector<std::string>{
436 const std::vector<std::string>& AllVulkan11Capabilities() {
437 static const auto r = new std::vector<std::string>{
501 const std::vector<std::string>& AllVulkan12Capabilities() {
502 static const auto r = new std::vector<std::string>{
589 const std::vector<std::string>& MatrixDependencies() {
590 static const auto r = new std::vector<std::string>{
631 const std::vector<std::string>& ShaderDependencies() {
632 static const auto r = new std::vector<std::string>{
672 const std::vector<std::string>& TessellationDependencies() {
673 static const auto r = new std::vector<std::string>{
679 const std::vector<std::string>& GeometryDependencies() {
680 static const auto r = new std::vector<std::string>{
688 const std::vector<std::string>& GeometryTessellationDependencies() {
689 static const auto r = new std::vector<std::string>{
701 const std::vector<std::string>& KernelDependencies() {
702 static const auto r = new std::vector<std::string>{
718 const std::vector<std::string>& KernelAndGroupNonUniformDependencies() {
719 static const auto r = new std::vector<std::string>{
743 const std::vector<std::string>& AddressesDependencies() {
744 static const auto r = new std::vector<std::string>{
750 const std::vector<std::string>& Sampled1DDependencies() {
751 static const auto r = new std::vector<std::string>{
757 const std::vector<std::string>& SampledRectDependencies() {
758 static const auto r = new std::vector<std::string>{
764 const std::vector<std::string>& SampledBufferDependencies() {
765 static const auto r = new std::vector<std::string>{
798 std::make_pair(std::string(kOpenCLMemoryModel) +
800 std::string(kVoidFVoid), ShaderDependencies()),
801 std::make_pair(std::string(kOpenCLMemoryModel) +
803 std::string(kVoidFVoid), TessellationDependencies()),
804 std::make_pair(std::string(kOpenCLMemoryModel) +
806 std::string(kVoidFVoid), TessellationDependencies()),
807 std::make_pair(std::string(kOpenCLMemoryModel) +
811 std::string(kVoidFVoid), GeometryDependencies()),
812 std::make_pair(std::string(kOpenCLMemoryModel) +
815 std::string(kVoidFVoid), ShaderDependencies()),
816 std::make_pair(std::string(kOpenCLMemoryModel) +
818 std::string(kVoidFVoid), ShaderDependencies()),
819 std::make_pair(std::string(kGLSL450MemoryModel) +
821 std::string(kVoidFVoid), KernelDependencies())
828 std::make_pair(" OpCapability Shader"
831 std::string(kVoidFVoid), AllCapabilities()),
832 std::make_pair(" OpCapability Shader"
835 std::string(kVoidFVoid), AllCapabilities()),
836 std::make_pair(" OpCapability Kernel"
839 std::string(kVoidFVoid), AllCapabilities()),
840 std::make_pair(" OpCapability Shader"
843 std::string(kVoidFVoid), AddressesDependencies()),
844 std::make_pair(" OpCapability Shader"
847 std::string(kVoidFVoid), AddressesDependencies()),
848 std::make_pair(" OpCapability Kernel"
851 std::string(kVoidFVoid), AddressesDependencies()),
852 std::make_pair(" OpCapability Shader"
855 std::string(kVoidFVoid), AddressesDependencies()),
856 std::make_pair(" OpCapability Shader"
859 std::string(kVoidFVoid), AddressesDependencies()),
860 std::make_pair(" OpCapability Kernel"
863 std::string(kVoidFVoid), AddressesDependencies())
870 std::make_pair(std::string(kOpenCLMemoryModel) +
875 std::string(kVoidFVoid), GeometryDependencies()),
876 std::make_pair(std::string(kOpenCLMemoryModel) +
879 std::string(kVoidFVoid), TessellationDependencies()),
880 std::make_pair(std::string(kOpenCLMemoryModel) +
883 std::string(kVoidFVoid), TessellationDependencies()),
884 std::make_pair(std::string(kOpenCLMemoryModel) +
887 std::string(kVoidFVoid), TessellationDependencies()),
888 std::make_pair(std::string(kOpenCLMemoryModel) +
891 std::string(kVoidFVoid), TessellationDependencies()),
892 std::make_pair(std::string(kOpenCLMemoryModel) +
895 std::string(kVoidFVoid), TessellationDependencies()),
896 std::make_pair(std::string(kOpenCLMemoryModel) +
900 std::string(kVoidFVoid), ShaderDependencies()),
901 std::make_pair(std::string(kOpenCLMemoryModel) +
904 std::string(kVoidFVoid), ShaderDependencies()),
905 std::make_pair(std::string(kOpenCLMemoryModel) +
908 std::string(kVoidFVoid), ShaderDependencies()),
909 std::make_pair(std::string(kOpenCLMemoryModel) +
913 std::string(kVoidFVoid), ShaderDependencies()),
914 std::make_pair(std::string(kOpenCLMemoryModel) +
917 std::string(kVoidFVoid), TessellationDependencies()),
918 std::make_pair(std::string(kOpenCLMemoryModel) +
921 std::string(kVoidFVoid), std::vector<std::string>{"TransformFeedback"}),
922 std::make_pair(std::string(kOpenCLMemoryModel) +
926 std::string(kVoidFVoid), ShaderDependencies()),
927 std::make_pair(std::string(kOpenCLMemoryModel) +
931 std::string(kVoidFVoid), ShaderDependencies()),
932 std::make_pair(std::string(kOpenCLMemoryModel) +
936 std::string(kVoidFVoid), ShaderDependencies()),
937 std::make_pair(std::string(kOpenCLMemoryModel) +
941 std::string(kVoidFVoid), ShaderDependencies()),
942 std::make_pair(std::string(kOpenCLMemoryModel) +
945 std::string(kVoidFVoid), AllCapabilities()),
946 std::make_pair(std::string(kGLSL450MemoryModel) +
949 std::string(kVoidFVoid), KernelDependencies()),
950 std::make_pair(std::string(kOpenCLMemoryModel) +
954 std::string(kVoidFVoid), GeometryDependencies()),
955 std::make_pair(std::string(kOpenCLMemoryModel) +
959 std::string(kVoidFVoid), GeometryDependencies()),
960 std::make_pair(std::string(kOpenCLMemoryModel) +
964 std::string(kVoidFVoid), GeometryDependencies()),
965 std::make_pair(std::string(kOpenCLMemoryModel) +
969 std::string(kVoidFVoid), GeometryDependencies()),
970 std::make_pair(std::string(kOpenCLMemoryModel) +
973 std::string(kVoidFVoid), TessellationDependencies()),
974 std::make_pair(std::string(kOpenCLMemoryModel) +
978 std::string(kVoidFVoid), GeometryDependencies()),
979 std::make_pair(std::string(kOpenCLMemoryModel) +
982 std::string(kVoidFVoid), TessellationDependencies()),
983 std::make_pair(std::string(kOpenCLMemoryModel) +
986 std::string(kVoidFVoid), TessellationDependencies()),
987 std::make_pair(std::string(kOpenCLMemoryModel) +
992 std::string(kVoidFVoid), GeometryDependencies()),
993 std::make_pair(std::string(kOpenCLMemoryModel) +
996 std::string(kVoidFVoid), TessellationDependencies()),
997 std::make_pair(std::string(kOpenCLMemoryModel) +
1001 std::string(kVoidFVoid), GeometryDependencies()),
1002 std::make_pair(std::string(kOpenCLMemoryModel) +
1006 std::string(kVoidFVoid), GeometryDependencies()),
1007 std::make_pair(std::string(kOpenCLMemoryModel) +
1011 std::string(kVoidFVoid), GeometryDependencies()),
1012 std::make_pair(std::string(kGLSL450MemoryModel) +
1015 std::string(kVoidFVoid), KernelDependencies()),
1016 std::make_pair(std::string(kGLSL450MemoryModel) +
1019 std::string(kVoidFVoid), KernelDependencies()))));
1026 Values(std::make_pair(std::string(kOpenCLMemoryModel) +
1029 std::string(kVoidFVoid),
1030 std::vector<std::string>{"SubgroupDispatch"}),
1031 std::make_pair(
1032 std::string(kOpenCLMemoryModel) +
1035 std::string(kVoidFVoid),
1036 std::vector<std::string>{"SubgroupDispatch"}))));
1043 std::make_pair(std::string(kGLSL450MemoryModel) +
1047 " %var = OpVariable %ptrt UniformConstant\n" + std::string(kVoidFVoid),
1049 std::make_pair(std::string(kOpenCLMemoryModel) +
1053 " %var = OpVariable %ptrt Input\n" + std::string(kVoidFVoid),
1055 std::make_pair(std::string(kOpenCLMemoryModel) +
1059 " %var = OpVariable %ptrt Uniform\n" + std::string(kVoidFVoid),
1061 std::make_pair(std::string(kOpenCLMemoryModel) +
1065 " %var = OpVariable %ptrt Output\n" + std::string(kVoidFVoid),
1067 std::make_pair(std::string(kGLSL450MemoryModel) +
1071 " %var = OpVariable %ptrt Workgroup\n" + std::string(kVoidFVoid),
1073 std::make_pair(std::string(kGLSL450MemoryModel) +
1077 " %var = OpVariable %ptrt CrossWorkgroup\n" + std::string(kVoidFVoid),
1079 std::make_pair(std::string(kOpenCLMemoryModel) +
1083 " %var = OpVariable %ptrt Private\n" + std::string(kVoidFVoid),
1085 std::make_pair(std::string(kOpenCLMemoryModel) +
1089 " %var = OpVariable %ptrt PushConstant\n" + std::string(kVoidFVoid),
1091 std::make_pair(std::string(kGLSL450MemoryModel) +
1095 " %var = OpVariable %ptrt AtomicCounter\n" + std::string(kVoidFVoid),
1096 std::vector<std::string>{"AtomicStorage"}),
1097 std::make_pair(std::string(kGLSL450MemoryModel) +
1101 " %var = OpVariable %ptrt Image\n" + std::string(kVoidFVoid),
1109 std::make_pair(" OpCapability ImageBasic" +
1110 std::string(kOpenCLMemoryModel) +
1111 std::string(" OpEntryPoint Kernel %func \"compute\"") +
1113 " %imgt = OpTypeImage %voidt 1D 0 0 0 0 Unknown" + std::string(kVoidFVoid2),
1115 std::make_pair(" OpCapability ImageBasic" +
1116 std::string(kOpenCLMemoryModel) +
1117 std::string(" OpEntryPoint Kernel %func \"compute\"") +
1119 " %imgt = OpTypeImage %voidt 2D 0 0 0 0 Unknown" + std::string(kVoidFVoid2),
1121 std::make_pair(" OpCapability ImageBasic" +
1122 std::string(kOpenCLMemoryModel) +
1123 std::string(" OpEntryPoint Kernel %func \"compute\"") +
1125 " %imgt = OpTypeImage %voidt 3D 0 0 0 0 Unknown" + std::string(kVoidFVoid2),
1127 std::make_pair(" OpCapability ImageBasic" +
1128 std::string(kOpenCLMemoryModel) +
1129 std::string(" OpEntryPoint Kernel %func \"compute\"") +
1131 " %imgt = OpTypeImage %voidt Cube 0 0 0 0 Unknown" + std::string(kVoidFVoid2),
1133 std::make_pair(" OpCapability ImageBasic" +
1134 std::string(kOpenCLMemoryModel) +
1135 std::string(" OpEntryPoint Kernel %func \"compute\"") +
1137 " %imgt = OpTypeImage %voidt Rect 0 0 0 0 Unknown" + std::string(kVoidFVoid2),
1139 std::make_pair(" OpCapability ImageBasic" +
1140 std::string(kOpenCLMemoryModel) +
1141 std::string(" OpEntryPoint Kernel %func \"compute\"") +
1143 " %imgt = OpTypeImage %voidt Buffer 0 0 0 0 Unknown" + std::string(kVoidFVoid2),
1145 std::make_pair(" OpCapability ImageBasic" +
1146 std::string(kOpenCLMemoryModel) +
1147 std::string(" OpEntryPoint Kernel %func \"compute\"") +
1149 " %imgt = OpTypeImage %voidt SubpassData 0 0 0 2 Unknown" + std::string(kVoidFVoid2),
1150 std::vector<std::string>{"InputAttachment"})
1159 std::make_pair(std::string(kGLSL450MemoryModel) +
1163 std::string(kVoidFVoid),
1164 std::vector<std::string>{"LiteralSampler"}),
1165 std::make_pair(std::string(kGLSL450MemoryModel) +
1169 std::string(kVoidFVoid),
1170 std::vector<std::string>{"LiteralSampler"}),
1171 std::make_pair(std::string(kGLSL450MemoryModel) +
1175 std::string(kVoidFVoid),
1176 std::vector<std::string>{"LiteralSampler"}),
1177 std::make_pair(std::string(kGLSL450MemoryModel) +
1181 std::string(kVoidFVoid),
1182 std::vector<std::string>{"LiteralSampler"}),
1183 std::make_pair(std::string(kGLSL450MemoryModel) +
1187 std::string(kVoidFVoid),
1188 std::vector<std::string>{"LiteralSampler"})
1206 std::make_pair(std::string(kOpenCLMemoryModel) +
1211 "%var = OpVariable %ptr Private\n" + std::string(kVoidFVoid),
1213 std::make_pair(std::string(kOpenCLMemoryModel) +
1218 "%block = OpTypeStruct %intt\n" + std::string(kVoidFVoid),
1220 std::make_pair(std::string(kOpenCLMemoryModel) +
1225 "%block = OpTypeStruct %intt\n" + std::string(kVoidFVoid),
1227 std::make_pair(std::string(kOpenCLMemoryModel) +
1233 "%structt = OpTypeStruct %mat2x2\n" + std::string(kVoidFVoid),
1235 std::make_pair(std::string(kOpenCLMemoryModel) +
1241 "%structt = OpTypeStruct %mat2x2\n" + std::string(kVoidFVoid),
1243 std::make_pair(std::string(kOpenCLMemoryModel) +
1247 "%array = OpTypeRuntimeArray %intt\n" + std::string(kVoidFVoid),
1249 std::make_pair(std::string(kOpenCLMemoryModel) +
1255 "%structt = OpTypeStruct %mat2x2\n" + std::string(kVoidFVoid),
1257 std::make_pair(std::string(kOpenCLMemoryModel) +
1260 "%struct = OpTypeStruct\n" + std::string(kVoidFVoid),
1262 std::make_pair(std::string(kOpenCLMemoryModel) +
1265 "%struct = OpTypeStruct\n" + std::string(kVoidFVoid),
1267 std::make_pair(std::string(kGLSL450MemoryModel) +
1270 "%struct = OpTypeStruct\n" + std::string(kVoidFVoid),
1272 std::make_pair(std::string(kOpenCLMemoryModel) +
1277 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1279 std::make_pair(std::string(kOpenCLMemoryModel) +
1284 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1286 std::make_pair(std::string(kOpenCLMemoryModel) +
1291 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1293 std::make_pair(std::string(kOpenCLMemoryModel) +
1298 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1300 std::make_pair(std::string(kOpenCLMemoryModel) +
1305 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1306 std::vector<std::string>{"SampleRateShading"}),
1307 std::make_pair(std::string(kOpenCLMemoryModel) +
1312 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1314 std::make_pair(std::string(kOpenCLMemoryModel) +
1319 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1321 std::make_pair(std::string(kOpenCLMemoryModel) +
1326 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1328 std::make_pair(std::string(kOpenCLMemoryModel) +
1333 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1335 std::make_pair(std::string(kGLSL450MemoryModel) +
1340 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1342 std::make_pair(std::string(kOpenCLMemoryModel) +
1347 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1349 std::make_pair(std::string(kOpenCLMemoryModel) +
1357 + std::string(kVoidFVoid),
1359 std::make_pair(std::string(kOpenCLMemoryModel) +
1366 + std::string(kVoidFVoid),
1368 std::make_pair(std::string(kOpenCLMemoryModel) +
1374 + std::string(kVoidFVoid),
1376 std::make_pair(std::string(kGLSL450MemoryModel) +
1379 "%intt = OpTypeInt 32 0\n" + std::string(kVoidFVoid),
1381 std::make_pair(std::string(kOpenCLMemoryModel) +
1386 "%var = OpVariable %ptr Output\n" + std::string(kVoidFVoid),
1387 std::vector<std::string>{"GeometryStreams"}),
1388 std::make_pair(std::string(kOpenCLMemoryModel) +
1392 "%struct = OpTypeStruct %intt\n" + std::string(kVoidFVoid),
1394 std::make_pair(std::string(kOpenCLMemoryModel) +
1399 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1401 std::make_pair(std::string(kOpenCLMemoryModel) +
1406 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1408 std::make_pair(std::string(kOpenCLMemoryModel) +
1413 "%var = OpVariable %ptr Uniform\n" + std::string(kVoidFVoid),
1415 std::make_pair(std::string(kOpenCLMemoryModel) +
1420 "%var = OpVariable %ptr Uniform\n" + std::string(kVoidFVoid),
1422 std::make_pair(std::string(kOpenCLMemoryModel) +
1426 "%structt = OpTypeStruct %intt\n" + std::string(kVoidFVoid),
1428 std::make_pair(std::string(kOpenCLMemoryModel) +
1433 "%var = OpVariable %ptr Uniform\n" + std::string(kVoidFVoid),
1434 std::vector<std::string>{"TransformFeedback"}),
1435 std::make_pair(std::string(kOpenCLMemoryModel) +
1440 "%var = OpVariable %ptr Uniform\n" + std::string(kVoidFVoid),
1441 std::vector<std::string>{"TransformFeedback"}),
1442 std::make_pair(std::string(kGLSL450MemoryModel) +
1445 "%intt = OpTypeInt 32 0\n" + std::string(kVoidFVoid),
1447 std::make_pair(std::string(kGLSL450MemoryModel) +
1450 "%intt = OpTypeInt 32 0\n" + std::string(kVoidFVoid),
1452 std::make_pair(std::string(kOpenCLMemoryModel) +
1455 "%intt = OpTypeInt 32 0\n" + std::string(kVoidFVoid),
1456 std::vector<std::string>{"Linkage"}),
1457 std::make_pair(std::string(kOpenCLMemoryModel) +
1460 "%intt = OpTypeInt 32 0\n" + std::string(kVoidFVoid),
1462 std::make_pair(std::string(kOpenCLMemoryModel) +
1467 "%var = OpVariable %ptr UniformConstant\n" + std::string(kVoidFVoid),
1468 std::vector<std::string>{"InputAttachment"}),
1469 std::make_pair(std::string(kGLSL450MemoryModel) +
1472 "%intt = OpTypeInt 32 0\n" + std::string(kVoidFVoid),
1481 Values(std::make_pair(std::string(kOpenCLMemoryModel) +
1486 std::string(kVoidFVoid),
1492 Values(std::make_pair(std::string(kOpenCLMemoryModel) +
1498 std::string(kVoidFVoid),
1503 std::make_pair(
1504 std::string("OpMemoryModel Logical OpenCL "
1509 std::string(kVoidFVoid),
1511 std::make_pair(
1512 std::string("OpMemoryModel Logical Simple "
1517 std::string(kVoidFVoid),
1525 std::make_pair(std::string(kOpenCLMemoryModel) +
1530 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1535 std::make_pair(std::string(kOpenCLMemoryModel) +
1540 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1542 std::make_pair(std::string(kOpenCLMemoryModel) +
1547 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1549 std::make_pair(std::string(kOpenCLMemoryModel) +
1554 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1556 std::make_pair(std::string(kOpenCLMemoryModel) +
1561 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1563 std::make_pair(std::string(kOpenCLMemoryModel) +
1568 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1570 std::make_pair(std::string(kOpenCLMemoryModel) +
1575 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1577 std::make_pair(std::string(kOpenCLMemoryModel) +
1582 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1584 std::make_pair(std::string(kOpenCLMemoryModel) +
1589 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1591 std::make_pair(std::string(kOpenCLMemoryModel) +
1596 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1597 std::vector<std::string>{"MultiViewport"}),
1598 std::make_pair(std::string(kOpenCLMemoryModel) +
1603 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1605 std::make_pair(std::string(kOpenCLMemoryModel) +
1610 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1612 std::make_pair(std::string(kOpenCLMemoryModel) +
1617 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1619 std::make_pair(std::string(kOpenCLMemoryModel) +
1624 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1626 std::make_pair(std::string(kOpenCLMemoryModel) +
1631 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1633 std::make_pair(std::string(kOpenCLMemoryModel) +
1638 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1640 std::make_pair(std::string(kOpenCLMemoryModel) +
1645 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1647 std::make_pair(std::string(kOpenCLMemoryModel) +
1652 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1653 std::vector<std::string>{"SampleRateShading"}),
1654 std::make_pair(std::string(kOpenCLMemoryModel) +
1659 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1660 std::vector<std::string>{"SampleRateShading"}),
1661 std::make_pair(std::string(kOpenCLMemoryModel) +
1666 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1668 std::make_pair(std::string(kOpenCLMemoryModel) +
1673 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1675 std::make_pair(std::string(kOpenCLMemoryModel) +
1680 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1682 std::make_pair(std::string(kOpenCLMemoryModel) +
1687 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1689 std::make_pair(std::string(kOpenCLMemoryModel) +
1694 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1696 std::make_pair(std::string(kOpenCLMemoryModel) +
1701 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1703 std::make_pair(std::string(kOpenCLMemoryModel) +
1708 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1710 std::make_pair(std::string(kOpenCLMemoryModel) +
1715 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1717 std::make_pair(std::string(kOpenCLMemoryModel) +
1722 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1724 std::make_pair(std::string(kOpenCLMemoryModel) +
1729 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1731 std::make_pair(std::string(kGLSL450MemoryModel) +
1736 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1738 std::make_pair(std::string(kGLSL450MemoryModel) +
1743 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1745 std::make_pair(std::string(kGLSL450MemoryModel) +
1750 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1752 std::make_pair(std::string(kGLSL450MemoryModel) +
1757 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1759 std::make_pair(std::string(kGLSL450MemoryModel) +
1764 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1766 std::make_pair(std::string(kGLSL450MemoryModel) +
1771 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1773 std::make_pair(std::string(kGLSL450MemoryModel) +
1778 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1780 std::make_pair(std::string(kGLSL450MemoryModel) +
1785 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1787 std::make_pair(std::string(kGLSL450MemoryModel) +
1792 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1794 std::make_pair(std::string(kGLSL450MemoryModel) +
1799 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1801 std::make_pair(std::string(kGLSL450MemoryModel) +
1806 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1808 std::make_pair(std::string(kOpenCLMemoryModel) +
1813 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1815 std::make_pair(std::string(kOpenCLMemoryModel) +
1820 "%var = OpVariable %ptr Input\n" + std::string(kVoidFVoid),
1833 std::make_pair(std::string(kGLSL450MemoryModel) +
1838 "%var = OpVariable %ptr_output_float Output\n" + std::string(kVoidFVoid),
1841 std::make_pair(std::string(kGLSL450MemoryModel) +
1848 "%block = OpTypeStruct %f32arr4\n" + std::string(kVoidFVoid),
1850 std::make_pair(std::string(kGLSL450MemoryModel) +
1857 "%block = OpTypeStruct %f32arr4\n" + std::string(kVoidFVoid),
1866 std::make_pair(std::string(kGLSL450MemoryModel) +
1871 "%var = OpVariable %ptr_output_float Output\n" + std::string(kVoidFVoid),
1873 std::make_pair(std::string(kGLSL450MemoryModel) +
1881 "%var = OpVariable %ptr Output\n" + std::string(kVoidFVoid),
1883 std::make_pair(std::string(kGLSL450MemoryModel) +
1891 "%var = OpVariable %ptr Output\n" + std::string(kVoidFVoid),
1900 std::make_pair(std::string(kGLSL450MemoryModel) +
1905 "%var = OpVariable %ptr_output_float Output\n" + std::string(kVoidFVoid),
1907 std::make_pair(std::string(kGLSL450MemoryModel) +
1915 "%var = OpVariable %ptr Output\n" + std::string(kVoidFVoid),
1924 std::make_pair(std::string(kGLSL450MemoryModel) +
1929 "%var = OpVariable %ptr_output_float Output\n" + std::string(kVoidFVoid),
1931 std::make_pair(std::string(kGLSL450MemoryModel) +
1939 "%var = OpVariable %ptr Output\n" + std::string(kVoidFVoid),
1957 std::make_pair(std::string(kOpenCLMemoryModel) +
1961 "%mat33 = OpTypeMatrix %vec3 3\n" + std::string(kVoidFVoid),
1973 string ImageOperandsTemplate(const std::string& operands) {
2007 Values(std::make_pair(ImageOperandsTemplate("Bias|Lod %fzero %fzero"),
2009 std::make_pair(ImageOperandsTemplate("Lod|Offset %fzero %izero"),
2010 std::vector<std::string>{"ImageGatherExtended"}),
2011 std::make_pair(ImageOperandsTemplate("Sample|MinLod %izero %fzero"),
2012 std::vector<std::string>{"MinLod"}),
2013 std::make_pair(ImageOperandsTemplate("Lod|Sample %fzero %izero"),
2045 bool Exists(const std::string& capability, spv_target_env env) {
2054 const std::string capability = Capability(GetParam());
2066 const std::string test_code = MakeAssembly(GetParam());
2074 const std::string capability = Capability(GetParam());
2076 const std::string test_code = MakeAssembly(GetParam());
2085 const std::string capability = Capability(GetParam());
2087 const std::string test_code = MakeAssembly(GetParam());
2096 const std::string capability = Capability(GetParam());
2098 const std::string test_code = MakeAssembly(GetParam());
2107 const std::string capability = Capability(GetParam());
2109 const std::string test_code = MakeAssembly(GetParam());
2118 const std::string capability = Capability(GetParam());
2120 const std::string test_code = MakeAssembly(GetParam());
2171 const std::string spirv = R"(
2182 const std::string spirv = R"(
2196 const std::string spirv = R"(
2208 const std::string spirv = R"(
2223 const std::string spirv = R"(
2232 )" + std::string(kVoidFVoid);
2239 const std::string spirv = R"(
2246 )" + std::string(kVoidFVoid);
2257 const std::string spirv = R"(
2274 const std::string spirv = R"(
2282 )" + std::string(kVoidFVoid);
2289 const std::string spirv = R"(
2296 )" + std::string(kVoidFVoid);
2308 const std::string spirv = R"(
2326 const std::string spirv = R"(
2334 )" + std::string(kVoidFVoid);
2341 const std::string spirv = R"(
2348 )" + std::string(kVoidFVoid);
2359 const std::string spirv = R"(
2366 )" + std::string(kVoidFVoid);
2377 const std::string spirv = R"(
2391 const std::string spirv = R"(
2409 const std::string spirv = R"(
2417 )" + std::string(kVoidFVoid);
2424 const std::string spirv = R"(
2431 )" + std::string(kVoidFVoid);
2442 const std::string spirv = R"(
2459 const std::string spirv = R"(
2467 )" + std::string(kVoidFVoid);
2474 const std::string spirv = R"(
2481 )" + std::string(kVoidFVoid);
2492 const std::string spirv = R"(
2505 const std::string spirv = R"(
2522 const std::string spirv = R"(
2530 )" + std::string(kVoidFVoid);
2537 const std::string spirv = R"(
2544 )" + std::string(kVoidFVoid);
2556 const std::string spirv = R"(
2574 const std::string spirv = R"(
2582 )" + std::string(kVoidFVoid);
2589 const std::string spirv = R"(
2596 )" + std::string(kVoidFVoid);
2613 const std::string spirv = R"(
2617 )" + std::string(kVoidFVoid);
2629 const std::string spirv = R"(
2633 )" + std::string(kVoidFVoid);
2647 const std::string spirv = R"(
2671 const std::string spirv = R"(
2699 const std::string spirv = R"(
2727 const std::string spirv = R"(
2751 const std::string spirv = R"(
2765 const std::string spirv = R"(
2784 const std::string spirv = R"(
2812 std::string capability;
2813 std::string capability_new_name;
2814 std::string extension;
2823 std::string MinimalShaderModuleWithCapability(std::string cap) {
2824 std::string mem_model =
2826 std::string extra_cap = (cap.find("VulkanMemoryModelDeviceScope") == 0)
2829 return std::string("OpCapability ") + cap + extra_cap + R"(
2848 HasSubstr(std::string("1st operand of Capability: operand ") +
2852 HasSubstr(std::string("requires one of these extensions: ") +
2875 std::vector<CapabilityExtensionVersionCase> CapVersionCases1_5() {
2880 return std::vector<CapabilityExtensionVersionCase>{