| /* |
| * |
| * Copyright (c) 2016 The Khronos Group Inc. |
| * Copyright (c) 2016 Valve Corporation |
| * Copyright (c) 2016 LunarG, Inc. |
| * |
| * Licensed under the Apache License, Version 2.0 (the "License"); |
| * you may not use this file except in compliance with the License. |
| * You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| * |
| * Author: Mark Young <marky@lunarg.com> |
| * |
| */ |
| |
| // This code is used to enable generic instance extensions which use a physical device |
| // as the first parameter. If the extension is already known by the loader, it will |
| // not use this code, but instead use the more direct route. However, if it is |
| // unknown to the loader, it will use this code. Technically, this is not trampoline |
| // code since we don't want to optimize it out. |
| |
| #include "vk_loader_platform.h" |
| #include "loader.h" |
| |
| #if defined(__GNUC__) && !defined(__clang__) |
| #pragma GCC optimize(3) // force gcc to use tail-calls |
| #endif |
| |
| // Trampoline function macro for unknown physical device extension command. |
| #define PhysDevExtTramp(num) \ |
| VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTramp##num(VkPhysicalDevice physical_device) { \ |
| const struct loader_instance_dispatch_table *disp; \ |
| disp = loader_get_instance_dispatch(physical_device); \ |
| disp->phys_dev_ext[num](loader_unwrap_physical_device(physical_device)); \ |
| } |
| |
| // Terminator function macro for unknown physical device extension command. |
| #define PhysDevExtTermin(num) \ |
| VKAPI_ATTR void VKAPI_CALL vkPhysDevExtTermin##num(VkPhysicalDevice physical_device) { \ |
| struct loader_physical_device_term *phys_dev_term = (struct loader_physical_device_term *)physical_device; \ |
| struct loader_icd_term *icd_term = phys_dev_term->this_icd_term; \ |
| struct loader_instance *inst = (struct loader_instance *)icd_term->this_instance; \ |
| if (NULL == icd_term->phys_dev_ext[num]) { \ |
| loader_log(inst, VK_DEBUG_REPORT_ERROR_BIT_EXT, 0, "Extension %s not supported for this physical device", \ |
| inst->phys_dev_ext_disp_hash[num].func_name); \ |
| } \ |
| icd_term->phys_dev_ext[num](phys_dev_term->phys_dev); \ |
| } |
| |
| // Disable clang-format for lists of macros |
| // clang-format off |
| |
| // Instantiations of the trampoline and terminator |
| PhysDevExtTramp(0) PhysDevExtTermin(0) |
| PhysDevExtTramp(1) PhysDevExtTermin(1) |
| PhysDevExtTramp(2) PhysDevExtTermin(2) |
| PhysDevExtTramp(3) PhysDevExtTermin(3) |
| PhysDevExtTramp(4) PhysDevExtTermin(4) |
| PhysDevExtTramp(5) PhysDevExtTermin(5) |
| PhysDevExtTramp(6) PhysDevExtTermin(6) |
| PhysDevExtTramp(7) PhysDevExtTermin(7) |
| PhysDevExtTramp(8) PhysDevExtTermin(8) |
| PhysDevExtTramp(9) PhysDevExtTermin(9) |
| PhysDevExtTramp(10) PhysDevExtTermin(10) |
| PhysDevExtTramp(11) PhysDevExtTermin(11) |
| PhysDevExtTramp(12) PhysDevExtTermin(12) |
| PhysDevExtTramp(13) PhysDevExtTermin(13) |
| PhysDevExtTramp(14) PhysDevExtTermin(14) |
| PhysDevExtTramp(15) PhysDevExtTermin(15) |
| PhysDevExtTramp(16) PhysDevExtTermin(16) |
| PhysDevExtTramp(17) PhysDevExtTermin(17) |
| PhysDevExtTramp(18) PhysDevExtTermin(18) |
| PhysDevExtTramp(19) PhysDevExtTermin(19) |
| PhysDevExtTramp(20) PhysDevExtTermin(20) |
| PhysDevExtTramp(21) PhysDevExtTermin(21) |
| PhysDevExtTramp(22) PhysDevExtTermin(22) |
| PhysDevExtTramp(23) PhysDevExtTermin(23) |
| PhysDevExtTramp(24) PhysDevExtTermin(24) |
| PhysDevExtTramp(25) PhysDevExtTermin(25) |
| PhysDevExtTramp(26) PhysDevExtTermin(26) |
| PhysDevExtTramp(27) PhysDevExtTermin(27) |
| PhysDevExtTramp(28) PhysDevExtTermin(28) |
| PhysDevExtTramp(29) PhysDevExtTermin(29) |
| PhysDevExtTramp(30) PhysDevExtTermin(30) |
| PhysDevExtTramp(31) PhysDevExtTermin(31) |
| PhysDevExtTramp(32) PhysDevExtTermin(32) |
| PhysDevExtTramp(33) PhysDevExtTermin(33) |
| PhysDevExtTramp(34) PhysDevExtTermin(34) |
| PhysDevExtTramp(35) PhysDevExtTermin(35) |
| PhysDevExtTramp(36) PhysDevExtTermin(36) |
| PhysDevExtTramp(37) PhysDevExtTermin(37) |
| PhysDevExtTramp(38) PhysDevExtTermin(38) |
| PhysDevExtTramp(39) PhysDevExtTermin(39) |
| PhysDevExtTramp(40) PhysDevExtTermin(40) |
| PhysDevExtTramp(41) PhysDevExtTermin(41) |
| PhysDevExtTramp(42) PhysDevExtTermin(42) |
| PhysDevExtTramp(43) PhysDevExtTermin(43) |
| PhysDevExtTramp(44) PhysDevExtTermin(44) |
| PhysDevExtTramp(45) PhysDevExtTermin(45) |
| PhysDevExtTramp(46) PhysDevExtTermin(46) |
| PhysDevExtTramp(47) PhysDevExtTermin(47) |
| PhysDevExtTramp(48) PhysDevExtTermin(48) |
| PhysDevExtTramp(49) PhysDevExtTermin(49) |
| PhysDevExtTramp(50) PhysDevExtTermin(50) |
| PhysDevExtTramp(51) PhysDevExtTermin(51) |
| PhysDevExtTramp(52) PhysDevExtTermin(52) |
| PhysDevExtTramp(53) PhysDevExtTermin(53) |
| PhysDevExtTramp(54) PhysDevExtTermin(54) |
| PhysDevExtTramp(55) PhysDevExtTermin(55) |
| PhysDevExtTramp(56) PhysDevExtTermin(56) |
| PhysDevExtTramp(57) PhysDevExtTermin(57) |
| PhysDevExtTramp(58) PhysDevExtTermin(58) |
| PhysDevExtTramp(59) PhysDevExtTermin(59) |
| PhysDevExtTramp(60) PhysDevExtTermin(60) |
| PhysDevExtTramp(61) PhysDevExtTermin(61) |
| PhysDevExtTramp(62) PhysDevExtTermin(62) |
| PhysDevExtTramp(63) PhysDevExtTermin(63) |
| PhysDevExtTramp(64) PhysDevExtTermin(64) |
| PhysDevExtTramp(65) PhysDevExtTermin(65) |
| PhysDevExtTramp(66) PhysDevExtTermin(66) |
| PhysDevExtTramp(67) PhysDevExtTermin(67) |
| PhysDevExtTramp(68) PhysDevExtTermin(68) |
| PhysDevExtTramp(69) PhysDevExtTermin(69) |
| PhysDevExtTramp(70) PhysDevExtTermin(70) |
| PhysDevExtTramp(71) PhysDevExtTermin(71) |
| PhysDevExtTramp(72) PhysDevExtTermin(72) |
| PhysDevExtTramp(73) PhysDevExtTermin(73) |
| PhysDevExtTramp(74) PhysDevExtTermin(74) |
| PhysDevExtTramp(75) PhysDevExtTermin(75) |
| PhysDevExtTramp(76) PhysDevExtTermin(76) |
| PhysDevExtTramp(77) PhysDevExtTermin(77) |
| PhysDevExtTramp(78) PhysDevExtTermin(78) |
| PhysDevExtTramp(79) PhysDevExtTermin(79) |
| PhysDevExtTramp(80) PhysDevExtTermin(80) |
| PhysDevExtTramp(81) PhysDevExtTermin(81) |
| PhysDevExtTramp(82) PhysDevExtTermin(82) |
| PhysDevExtTramp(83) PhysDevExtTermin(83) |
| PhysDevExtTramp(84) PhysDevExtTermin(84) |
| PhysDevExtTramp(85) PhysDevExtTermin(85) |
| PhysDevExtTramp(86) PhysDevExtTermin(86) |
| PhysDevExtTramp(87) PhysDevExtTermin(87) |
| PhysDevExtTramp(88) PhysDevExtTermin(88) |
| PhysDevExtTramp(89) PhysDevExtTermin(89) |
| PhysDevExtTramp(90) PhysDevExtTermin(90) |
| PhysDevExtTramp(91) PhysDevExtTermin(91) |
| PhysDevExtTramp(92) PhysDevExtTermin(92) |
| PhysDevExtTramp(93) PhysDevExtTermin(93) |
| PhysDevExtTramp(94) PhysDevExtTermin(94) |
| PhysDevExtTramp(95) PhysDevExtTermin(95) |
| PhysDevExtTramp(96) PhysDevExtTermin(96) |
| PhysDevExtTramp(97) PhysDevExtTermin(97) |
| PhysDevExtTramp(98) PhysDevExtTermin(98) |
| PhysDevExtTramp(99) PhysDevExtTermin(99) |
| PhysDevExtTramp(100) PhysDevExtTermin(100) |
| PhysDevExtTramp(101) PhysDevExtTermin(101) |
| PhysDevExtTramp(102) PhysDevExtTermin(102) |
| PhysDevExtTramp(103) PhysDevExtTermin(103) |
| PhysDevExtTramp(104) PhysDevExtTermin(104) |
| PhysDevExtTramp(105) PhysDevExtTermin(105) |
| PhysDevExtTramp(106) PhysDevExtTermin(106) |
| PhysDevExtTramp(107) PhysDevExtTermin(107) |
| PhysDevExtTramp(108) PhysDevExtTermin(108) |
| PhysDevExtTramp(109) PhysDevExtTermin(109) |
| PhysDevExtTramp(110) PhysDevExtTermin(110) |
| PhysDevExtTramp(111) PhysDevExtTermin(111) |
| PhysDevExtTramp(112) PhysDevExtTermin(112) |
| PhysDevExtTramp(113) PhysDevExtTermin(113) |
| PhysDevExtTramp(114) PhysDevExtTermin(114) |
| PhysDevExtTramp(115) PhysDevExtTermin(115) |
| PhysDevExtTramp(116) PhysDevExtTermin(116) |
| PhysDevExtTramp(117) PhysDevExtTermin(117) |
| PhysDevExtTramp(118) PhysDevExtTermin(118) |
| PhysDevExtTramp(119) PhysDevExtTermin(119) |
| PhysDevExtTramp(120) PhysDevExtTermin(120) |
| PhysDevExtTramp(121) PhysDevExtTermin(121) |
| PhysDevExtTramp(122) PhysDevExtTermin(122) |
| PhysDevExtTramp(123) PhysDevExtTermin(123) |
| PhysDevExtTramp(124) PhysDevExtTermin(124) |
| PhysDevExtTramp(125) PhysDevExtTermin(125) |
| PhysDevExtTramp(126) PhysDevExtTermin(126) |
| PhysDevExtTramp(127) PhysDevExtTermin(127) |
| PhysDevExtTramp(128) PhysDevExtTermin(128) |
| PhysDevExtTramp(129) PhysDevExtTermin(129) |
| PhysDevExtTramp(130) PhysDevExtTermin(130) |
| PhysDevExtTramp(131) PhysDevExtTermin(131) |
| PhysDevExtTramp(132) PhysDevExtTermin(132) |
| PhysDevExtTramp(133) PhysDevExtTermin(133) |
| PhysDevExtTramp(134) PhysDevExtTermin(134) |
| PhysDevExtTramp(135) PhysDevExtTermin(135) |
| PhysDevExtTramp(136) PhysDevExtTermin(136) |
| PhysDevExtTramp(137) PhysDevExtTermin(137) |
| PhysDevExtTramp(138) PhysDevExtTermin(138) |
| PhysDevExtTramp(139) PhysDevExtTermin(139) |
| PhysDevExtTramp(140) PhysDevExtTermin(140) |
| PhysDevExtTramp(141) PhysDevExtTermin(141) |
| PhysDevExtTramp(142) PhysDevExtTermin(142) |
| PhysDevExtTramp(143) PhysDevExtTermin(143) |
| PhysDevExtTramp(144) PhysDevExtTermin(144) |
| PhysDevExtTramp(145) PhysDevExtTermin(145) |
| PhysDevExtTramp(146) PhysDevExtTermin(146) |
| PhysDevExtTramp(147) PhysDevExtTermin(147) |
| PhysDevExtTramp(148) PhysDevExtTermin(148) |
| PhysDevExtTramp(149) PhysDevExtTermin(149) |
| PhysDevExtTramp(150) PhysDevExtTermin(150) |
| PhysDevExtTramp(151) PhysDevExtTermin(151) |
| PhysDevExtTramp(152) PhysDevExtTermin(152) |
| PhysDevExtTramp(153) PhysDevExtTermin(153) |
| PhysDevExtTramp(154) PhysDevExtTermin(154) |
| PhysDevExtTramp(155) PhysDevExtTermin(155) |
| PhysDevExtTramp(156) PhysDevExtTermin(156) |
| PhysDevExtTramp(157) PhysDevExtTermin(157) |
| PhysDevExtTramp(158) PhysDevExtTermin(158) |
| PhysDevExtTramp(159) PhysDevExtTermin(159) |
| PhysDevExtTramp(160) PhysDevExtTermin(160) |
| PhysDevExtTramp(161) PhysDevExtTermin(161) |
| PhysDevExtTramp(162) PhysDevExtTermin(162) |
| PhysDevExtTramp(163) PhysDevExtTermin(163) |
| PhysDevExtTramp(164) PhysDevExtTermin(164) |
| PhysDevExtTramp(165) PhysDevExtTermin(165) |
| PhysDevExtTramp(166) PhysDevExtTermin(166) |
| PhysDevExtTramp(167) PhysDevExtTermin(167) |
| PhysDevExtTramp(168) PhysDevExtTermin(168) |
| PhysDevExtTramp(169) PhysDevExtTermin(169) |
| PhysDevExtTramp(170) PhysDevExtTermin(170) |
| PhysDevExtTramp(171) PhysDevExtTermin(171) |
| PhysDevExtTramp(172) PhysDevExtTermin(172) |
| PhysDevExtTramp(173) PhysDevExtTermin(173) |
| PhysDevExtTramp(174) PhysDevExtTermin(174) |
| PhysDevExtTramp(175) PhysDevExtTermin(175) |
| PhysDevExtTramp(176) PhysDevExtTermin(176) |
| PhysDevExtTramp(177) PhysDevExtTermin(177) |
| PhysDevExtTramp(178) PhysDevExtTermin(178) |
| PhysDevExtTramp(179) PhysDevExtTermin(179) |
| PhysDevExtTramp(180) PhysDevExtTermin(180) |
| PhysDevExtTramp(181) PhysDevExtTermin(181) |
| PhysDevExtTramp(182) PhysDevExtTermin(182) |
| PhysDevExtTramp(183) PhysDevExtTermin(183) |
| PhysDevExtTramp(184) PhysDevExtTermin(184) |
| PhysDevExtTramp(185) PhysDevExtTermin(185) |
| PhysDevExtTramp(186) PhysDevExtTermin(186) |
| PhysDevExtTramp(187) PhysDevExtTermin(187) |
| PhysDevExtTramp(188) PhysDevExtTermin(188) |
| PhysDevExtTramp(189) PhysDevExtTermin(189) |
| PhysDevExtTramp(190) PhysDevExtTermin(190) |
| PhysDevExtTramp(191) PhysDevExtTermin(191) |
| PhysDevExtTramp(192) PhysDevExtTermin(192) |
| PhysDevExtTramp(193) PhysDevExtTermin(193) |
| PhysDevExtTramp(194) PhysDevExtTermin(194) |
| PhysDevExtTramp(195) PhysDevExtTermin(195) |
| PhysDevExtTramp(196) PhysDevExtTermin(196) |
| PhysDevExtTramp(197) PhysDevExtTermin(197) |
| PhysDevExtTramp(198) PhysDevExtTermin(198) |
| PhysDevExtTramp(199) PhysDevExtTermin(199) |
| PhysDevExtTramp(200) PhysDevExtTermin(200) |
| PhysDevExtTramp(201) PhysDevExtTermin(201) |
| PhysDevExtTramp(202) PhysDevExtTermin(202) |
| PhysDevExtTramp(203) PhysDevExtTermin(203) |
| PhysDevExtTramp(204) PhysDevExtTermin(204) |
| PhysDevExtTramp(205) PhysDevExtTermin(205) |
| PhysDevExtTramp(206) PhysDevExtTermin(206) |
| PhysDevExtTramp(207) PhysDevExtTermin(207) |
| PhysDevExtTramp(208) PhysDevExtTermin(208) |
| PhysDevExtTramp(209) PhysDevExtTermin(209) |
| PhysDevExtTramp(210) PhysDevExtTermin(210) |
| PhysDevExtTramp(211) PhysDevExtTermin(211) |
| PhysDevExtTramp(212) PhysDevExtTermin(212) |
| PhysDevExtTramp(213) PhysDevExtTermin(213) |
| PhysDevExtTramp(214) PhysDevExtTermin(214) |
| PhysDevExtTramp(215) PhysDevExtTermin(215) |
| PhysDevExtTramp(216) PhysDevExtTermin(216) |
| PhysDevExtTramp(217) PhysDevExtTermin(217) |
| PhysDevExtTramp(218) PhysDevExtTermin(218) |
| PhysDevExtTramp(219) PhysDevExtTermin(219) |
| PhysDevExtTramp(220) PhysDevExtTermin(220) |
| PhysDevExtTramp(221) PhysDevExtTermin(221) |
| PhysDevExtTramp(222) PhysDevExtTermin(222) |
| PhysDevExtTramp(223) PhysDevExtTermin(223) |
| PhysDevExtTramp(224) PhysDevExtTermin(224) |
| PhysDevExtTramp(225) PhysDevExtTermin(225) |
| PhysDevExtTramp(226) PhysDevExtTermin(226) |
| PhysDevExtTramp(227) PhysDevExtTermin(227) |
| PhysDevExtTramp(228) PhysDevExtTermin(228) |
| PhysDevExtTramp(229) PhysDevExtTermin(229) |
| PhysDevExtTramp(230) PhysDevExtTermin(230) |
| PhysDevExtTramp(231) PhysDevExtTermin(231) |
| PhysDevExtTramp(232) PhysDevExtTermin(232) |
| PhysDevExtTramp(233) PhysDevExtTermin(233) |
| PhysDevExtTramp(234) PhysDevExtTermin(234) |
| PhysDevExtTramp(235) PhysDevExtTermin(235) |
| PhysDevExtTramp(236) PhysDevExtTermin(236) |
| PhysDevExtTramp(237) PhysDevExtTermin(237) |
| PhysDevExtTramp(238) PhysDevExtTermin(238) |
| PhysDevExtTramp(239) PhysDevExtTermin(239) |
| PhysDevExtTramp(240) PhysDevExtTermin(240) |
| PhysDevExtTramp(241) PhysDevExtTermin(241) |
| PhysDevExtTramp(242) PhysDevExtTermin(242) |
| PhysDevExtTramp(243) PhysDevExtTermin(243) |
| PhysDevExtTramp(244) PhysDevExtTermin(244) |
| PhysDevExtTramp(245) PhysDevExtTermin(245) |
| PhysDevExtTramp(246) PhysDevExtTermin(246) |
| PhysDevExtTramp(247) PhysDevExtTermin(247) |
| PhysDevExtTramp(248) PhysDevExtTermin(248) |
| PhysDevExtTramp(249) PhysDevExtTermin(249) |
| |
| |
| void *loader_get_phys_dev_ext_tramp(uint32_t index) { |
| switch (index) { |
| #define TRAMP_CASE_HANDLE(num) case num: return vkPhysDevExtTramp##num |
| TRAMP_CASE_HANDLE(0); |
| TRAMP_CASE_HANDLE(1); |
| TRAMP_CASE_HANDLE(2); |
| TRAMP_CASE_HANDLE(3); |
| TRAMP_CASE_HANDLE(4); |
| TRAMP_CASE_HANDLE(5); |
| TRAMP_CASE_HANDLE(6); |
| TRAMP_CASE_HANDLE(7); |
| TRAMP_CASE_HANDLE(8); |
| TRAMP_CASE_HANDLE(9); |
| TRAMP_CASE_HANDLE(10); |
| TRAMP_CASE_HANDLE(11); |
| TRAMP_CASE_HANDLE(12); |
| TRAMP_CASE_HANDLE(13); |
| TRAMP_CASE_HANDLE(14); |
| TRAMP_CASE_HANDLE(15); |
| TRAMP_CASE_HANDLE(16); |
| TRAMP_CASE_HANDLE(17); |
| TRAMP_CASE_HANDLE(18); |
| TRAMP_CASE_HANDLE(19); |
| TRAMP_CASE_HANDLE(20); |
| TRAMP_CASE_HANDLE(21); |
| TRAMP_CASE_HANDLE(22); |
| TRAMP_CASE_HANDLE(23); |
| TRAMP_CASE_HANDLE(24); |
| TRAMP_CASE_HANDLE(25); |
| TRAMP_CASE_HANDLE(26); |
| TRAMP_CASE_HANDLE(27); |
| TRAMP_CASE_HANDLE(28); |
| TRAMP_CASE_HANDLE(29); |
| TRAMP_CASE_HANDLE(30); |
| TRAMP_CASE_HANDLE(31); |
| TRAMP_CASE_HANDLE(32); |
| TRAMP_CASE_HANDLE(33); |
| TRAMP_CASE_HANDLE(34); |
| TRAMP_CASE_HANDLE(35); |
| TRAMP_CASE_HANDLE(36); |
| TRAMP_CASE_HANDLE(37); |
| TRAMP_CASE_HANDLE(38); |
| TRAMP_CASE_HANDLE(39); |
| TRAMP_CASE_HANDLE(40); |
| TRAMP_CASE_HANDLE(41); |
| TRAMP_CASE_HANDLE(42); |
| TRAMP_CASE_HANDLE(43); |
| TRAMP_CASE_HANDLE(44); |
| TRAMP_CASE_HANDLE(45); |
| TRAMP_CASE_HANDLE(46); |
| TRAMP_CASE_HANDLE(47); |
| TRAMP_CASE_HANDLE(48); |
| TRAMP_CASE_HANDLE(49); |
| TRAMP_CASE_HANDLE(50); |
| TRAMP_CASE_HANDLE(51); |
| TRAMP_CASE_HANDLE(52); |
| TRAMP_CASE_HANDLE(53); |
| TRAMP_CASE_HANDLE(54); |
| TRAMP_CASE_HANDLE(55); |
| TRAMP_CASE_HANDLE(56); |
| TRAMP_CASE_HANDLE(57); |
| TRAMP_CASE_HANDLE(58); |
| TRAMP_CASE_HANDLE(59); |
| TRAMP_CASE_HANDLE(60); |
| TRAMP_CASE_HANDLE(61); |
| TRAMP_CASE_HANDLE(62); |
| TRAMP_CASE_HANDLE(63); |
| TRAMP_CASE_HANDLE(64); |
| TRAMP_CASE_HANDLE(65); |
| TRAMP_CASE_HANDLE(66); |
| TRAMP_CASE_HANDLE(67); |
| TRAMP_CASE_HANDLE(68); |
| TRAMP_CASE_HANDLE(69); |
| TRAMP_CASE_HANDLE(70); |
| TRAMP_CASE_HANDLE(71); |
| TRAMP_CASE_HANDLE(72); |
| TRAMP_CASE_HANDLE(73); |
| TRAMP_CASE_HANDLE(74); |
| TRAMP_CASE_HANDLE(75); |
| TRAMP_CASE_HANDLE(76); |
| TRAMP_CASE_HANDLE(77); |
| TRAMP_CASE_HANDLE(78); |
| TRAMP_CASE_HANDLE(79); |
| TRAMP_CASE_HANDLE(80); |
| TRAMP_CASE_HANDLE(81); |
| TRAMP_CASE_HANDLE(82); |
| TRAMP_CASE_HANDLE(83); |
| TRAMP_CASE_HANDLE(84); |
| TRAMP_CASE_HANDLE(85); |
| TRAMP_CASE_HANDLE(86); |
| TRAMP_CASE_HANDLE(87); |
| TRAMP_CASE_HANDLE(88); |
| TRAMP_CASE_HANDLE(89); |
| TRAMP_CASE_HANDLE(90); |
| TRAMP_CASE_HANDLE(91); |
| TRAMP_CASE_HANDLE(92); |
| TRAMP_CASE_HANDLE(93); |
| TRAMP_CASE_HANDLE(94); |
| TRAMP_CASE_HANDLE(95); |
| TRAMP_CASE_HANDLE(96); |
| TRAMP_CASE_HANDLE(97); |
| TRAMP_CASE_HANDLE(98); |
| TRAMP_CASE_HANDLE(99); |
| TRAMP_CASE_HANDLE(100); |
| TRAMP_CASE_HANDLE(101); |
| TRAMP_CASE_HANDLE(102); |
| TRAMP_CASE_HANDLE(103); |
| TRAMP_CASE_HANDLE(104); |
| TRAMP_CASE_HANDLE(105); |
| TRAMP_CASE_HANDLE(106); |
| TRAMP_CASE_HANDLE(107); |
| TRAMP_CASE_HANDLE(108); |
| TRAMP_CASE_HANDLE(109); |
| TRAMP_CASE_HANDLE(110); |
| TRAMP_CASE_HANDLE(111); |
| TRAMP_CASE_HANDLE(112); |
| TRAMP_CASE_HANDLE(113); |
| TRAMP_CASE_HANDLE(114); |
| TRAMP_CASE_HANDLE(115); |
| TRAMP_CASE_HANDLE(116); |
| TRAMP_CASE_HANDLE(117); |
| TRAMP_CASE_HANDLE(118); |
| TRAMP_CASE_HANDLE(119); |
| TRAMP_CASE_HANDLE(120); |
| TRAMP_CASE_HANDLE(121); |
| TRAMP_CASE_HANDLE(122); |
| TRAMP_CASE_HANDLE(123); |
| TRAMP_CASE_HANDLE(124); |
| TRAMP_CASE_HANDLE(125); |
| TRAMP_CASE_HANDLE(126); |
| TRAMP_CASE_HANDLE(127); |
| TRAMP_CASE_HANDLE(128); |
| TRAMP_CASE_HANDLE(129); |
| TRAMP_CASE_HANDLE(130); |
| TRAMP_CASE_HANDLE(131); |
| TRAMP_CASE_HANDLE(132); |
| TRAMP_CASE_HANDLE(133); |
| TRAMP_CASE_HANDLE(134); |
| TRAMP_CASE_HANDLE(135); |
| TRAMP_CASE_HANDLE(136); |
| TRAMP_CASE_HANDLE(137); |
| TRAMP_CASE_HANDLE(138); |
| TRAMP_CASE_HANDLE(139); |
| TRAMP_CASE_HANDLE(140); |
| TRAMP_CASE_HANDLE(141); |
| TRAMP_CASE_HANDLE(142); |
| TRAMP_CASE_HANDLE(143); |
| TRAMP_CASE_HANDLE(144); |
| TRAMP_CASE_HANDLE(145); |
| TRAMP_CASE_HANDLE(146); |
| TRAMP_CASE_HANDLE(147); |
| TRAMP_CASE_HANDLE(148); |
| TRAMP_CASE_HANDLE(149); |
| TRAMP_CASE_HANDLE(150); |
| TRAMP_CASE_HANDLE(151); |
| TRAMP_CASE_HANDLE(152); |
| TRAMP_CASE_HANDLE(153); |
| TRAMP_CASE_HANDLE(154); |
| TRAMP_CASE_HANDLE(155); |
| TRAMP_CASE_HANDLE(156); |
| TRAMP_CASE_HANDLE(157); |
| TRAMP_CASE_HANDLE(158); |
| TRAMP_CASE_HANDLE(159); |
| TRAMP_CASE_HANDLE(160); |
| TRAMP_CASE_HANDLE(161); |
| TRAMP_CASE_HANDLE(162); |
| TRAMP_CASE_HANDLE(163); |
| TRAMP_CASE_HANDLE(164); |
| TRAMP_CASE_HANDLE(165); |
| TRAMP_CASE_HANDLE(166); |
| TRAMP_CASE_HANDLE(167); |
| TRAMP_CASE_HANDLE(168); |
| TRAMP_CASE_HANDLE(169); |
| TRAMP_CASE_HANDLE(170); |
| TRAMP_CASE_HANDLE(171); |
| TRAMP_CASE_HANDLE(172); |
| TRAMP_CASE_HANDLE(173); |
| TRAMP_CASE_HANDLE(174); |
| TRAMP_CASE_HANDLE(175); |
| TRAMP_CASE_HANDLE(176); |
| TRAMP_CASE_HANDLE(177); |
| TRAMP_CASE_HANDLE(178); |
| TRAMP_CASE_HANDLE(179); |
| TRAMP_CASE_HANDLE(180); |
| TRAMP_CASE_HANDLE(181); |
| TRAMP_CASE_HANDLE(182); |
| TRAMP_CASE_HANDLE(183); |
| TRAMP_CASE_HANDLE(184); |
| TRAMP_CASE_HANDLE(185); |
| TRAMP_CASE_HANDLE(186); |
| TRAMP_CASE_HANDLE(187); |
| TRAMP_CASE_HANDLE(188); |
| TRAMP_CASE_HANDLE(189); |
| TRAMP_CASE_HANDLE(190); |
| TRAMP_CASE_HANDLE(191); |
| TRAMP_CASE_HANDLE(192); |
| TRAMP_CASE_HANDLE(193); |
| TRAMP_CASE_HANDLE(194); |
| TRAMP_CASE_HANDLE(195); |
| TRAMP_CASE_HANDLE(196); |
| TRAMP_CASE_HANDLE(197); |
| TRAMP_CASE_HANDLE(198); |
| TRAMP_CASE_HANDLE(199); |
| TRAMP_CASE_HANDLE(200); |
| TRAMP_CASE_HANDLE(201); |
| TRAMP_CASE_HANDLE(202); |
| TRAMP_CASE_HANDLE(203); |
| TRAMP_CASE_HANDLE(204); |
| TRAMP_CASE_HANDLE(205); |
| TRAMP_CASE_HANDLE(206); |
| TRAMP_CASE_HANDLE(207); |
| TRAMP_CASE_HANDLE(208); |
| TRAMP_CASE_HANDLE(209); |
| TRAMP_CASE_HANDLE(210); |
| TRAMP_CASE_HANDLE(211); |
| TRAMP_CASE_HANDLE(212); |
| TRAMP_CASE_HANDLE(213); |
| TRAMP_CASE_HANDLE(214); |
| TRAMP_CASE_HANDLE(215); |
| TRAMP_CASE_HANDLE(216); |
| TRAMP_CASE_HANDLE(217); |
| TRAMP_CASE_HANDLE(218); |
| TRAMP_CASE_HANDLE(219); |
| TRAMP_CASE_HANDLE(220); |
| TRAMP_CASE_HANDLE(221); |
| TRAMP_CASE_HANDLE(222); |
| TRAMP_CASE_HANDLE(223); |
| TRAMP_CASE_HANDLE(224); |
| TRAMP_CASE_HANDLE(225); |
| TRAMP_CASE_HANDLE(226); |
| TRAMP_CASE_HANDLE(227); |
| TRAMP_CASE_HANDLE(228); |
| TRAMP_CASE_HANDLE(229); |
| TRAMP_CASE_HANDLE(230); |
| TRAMP_CASE_HANDLE(231); |
| TRAMP_CASE_HANDLE(232); |
| TRAMP_CASE_HANDLE(233); |
| TRAMP_CASE_HANDLE(234); |
| TRAMP_CASE_HANDLE(235); |
| TRAMP_CASE_HANDLE(236); |
| TRAMP_CASE_HANDLE(237); |
| TRAMP_CASE_HANDLE(238); |
| TRAMP_CASE_HANDLE(239); |
| TRAMP_CASE_HANDLE(240); |
| TRAMP_CASE_HANDLE(241); |
| TRAMP_CASE_HANDLE(242); |
| TRAMP_CASE_HANDLE(243); |
| TRAMP_CASE_HANDLE(244); |
| TRAMP_CASE_HANDLE(245); |
| TRAMP_CASE_HANDLE(246); |
| TRAMP_CASE_HANDLE(247); |
| TRAMP_CASE_HANDLE(248); |
| TRAMP_CASE_HANDLE(249); |
| } |
| return NULL; |
| } |
| |
| void *loader_get_phys_dev_ext_termin(uint32_t index) { |
| switch (index) { |
| #define TERM_CASE_HANDLE(num) case num: return vkPhysDevExtTermin##num |
| TERM_CASE_HANDLE(0); |
| TERM_CASE_HANDLE(1); |
| TERM_CASE_HANDLE(2); |
| TERM_CASE_HANDLE(3); |
| TERM_CASE_HANDLE(4); |
| TERM_CASE_HANDLE(5); |
| TERM_CASE_HANDLE(6); |
| TERM_CASE_HANDLE(7); |
| TERM_CASE_HANDLE(8); |
| TERM_CASE_HANDLE(9); |
| TERM_CASE_HANDLE(10); |
| TERM_CASE_HANDLE(11); |
| TERM_CASE_HANDLE(12); |
| TERM_CASE_HANDLE(13); |
| TERM_CASE_HANDLE(14); |
| TERM_CASE_HANDLE(15); |
| TERM_CASE_HANDLE(16); |
| TERM_CASE_HANDLE(17); |
| TERM_CASE_HANDLE(18); |
| TERM_CASE_HANDLE(19); |
| TERM_CASE_HANDLE(20); |
| TERM_CASE_HANDLE(21); |
| TERM_CASE_HANDLE(22); |
| TERM_CASE_HANDLE(23); |
| TERM_CASE_HANDLE(24); |
| TERM_CASE_HANDLE(25); |
| TERM_CASE_HANDLE(26); |
| TERM_CASE_HANDLE(27); |
| TERM_CASE_HANDLE(28); |
| TERM_CASE_HANDLE(29); |
| TERM_CASE_HANDLE(30); |
| TERM_CASE_HANDLE(31); |
| TERM_CASE_HANDLE(32); |
| TERM_CASE_HANDLE(33); |
| TERM_CASE_HANDLE(34); |
| TERM_CASE_HANDLE(35); |
| TERM_CASE_HANDLE(36); |
| TERM_CASE_HANDLE(37); |
| TERM_CASE_HANDLE(38); |
| TERM_CASE_HANDLE(39); |
| TERM_CASE_HANDLE(40); |
| TERM_CASE_HANDLE(41); |
| TERM_CASE_HANDLE(42); |
| TERM_CASE_HANDLE(43); |
| TERM_CASE_HANDLE(44); |
| TERM_CASE_HANDLE(45); |
| TERM_CASE_HANDLE(46); |
| TERM_CASE_HANDLE(47); |
| TERM_CASE_HANDLE(48); |
| TERM_CASE_HANDLE(49); |
| TERM_CASE_HANDLE(50); |
| TERM_CASE_HANDLE(51); |
| TERM_CASE_HANDLE(52); |
| TERM_CASE_HANDLE(53); |
| TERM_CASE_HANDLE(54); |
| TERM_CASE_HANDLE(55); |
| TERM_CASE_HANDLE(56); |
| TERM_CASE_HANDLE(57); |
| TERM_CASE_HANDLE(58); |
| TERM_CASE_HANDLE(59); |
| TERM_CASE_HANDLE(60); |
| TERM_CASE_HANDLE(61); |
| TERM_CASE_HANDLE(62); |
| TERM_CASE_HANDLE(63); |
| TERM_CASE_HANDLE(64); |
| TERM_CASE_HANDLE(65); |
| TERM_CASE_HANDLE(66); |
| TERM_CASE_HANDLE(67); |
| TERM_CASE_HANDLE(68); |
| TERM_CASE_HANDLE(69); |
| TERM_CASE_HANDLE(70); |
| TERM_CASE_HANDLE(71); |
| TERM_CASE_HANDLE(72); |
| TERM_CASE_HANDLE(73); |
| TERM_CASE_HANDLE(74); |
| TERM_CASE_HANDLE(75); |
| TERM_CASE_HANDLE(76); |
| TERM_CASE_HANDLE(77); |
| TERM_CASE_HANDLE(78); |
| TERM_CASE_HANDLE(79); |
| TERM_CASE_HANDLE(80); |
| TERM_CASE_HANDLE(81); |
| TERM_CASE_HANDLE(82); |
| TERM_CASE_HANDLE(83); |
| TERM_CASE_HANDLE(84); |
| TERM_CASE_HANDLE(85); |
| TERM_CASE_HANDLE(86); |
| TERM_CASE_HANDLE(87); |
| TERM_CASE_HANDLE(88); |
| TERM_CASE_HANDLE(89); |
| TERM_CASE_HANDLE(90); |
| TERM_CASE_HANDLE(91); |
| TERM_CASE_HANDLE(92); |
| TERM_CASE_HANDLE(93); |
| TERM_CASE_HANDLE(94); |
| TERM_CASE_HANDLE(95); |
| TERM_CASE_HANDLE(96); |
| TERM_CASE_HANDLE(97); |
| TERM_CASE_HANDLE(98); |
| TERM_CASE_HANDLE(99); |
| TERM_CASE_HANDLE(100); |
| TERM_CASE_HANDLE(101); |
| TERM_CASE_HANDLE(102); |
| TERM_CASE_HANDLE(103); |
| TERM_CASE_HANDLE(104); |
| TERM_CASE_HANDLE(105); |
| TERM_CASE_HANDLE(106); |
| TERM_CASE_HANDLE(107); |
| TERM_CASE_HANDLE(108); |
| TERM_CASE_HANDLE(109); |
| TERM_CASE_HANDLE(110); |
| TERM_CASE_HANDLE(111); |
| TERM_CASE_HANDLE(112); |
| TERM_CASE_HANDLE(113); |
| TERM_CASE_HANDLE(114); |
| TERM_CASE_HANDLE(115); |
| TERM_CASE_HANDLE(116); |
| TERM_CASE_HANDLE(117); |
| TERM_CASE_HANDLE(118); |
| TERM_CASE_HANDLE(119); |
| TERM_CASE_HANDLE(120); |
| TERM_CASE_HANDLE(121); |
| TERM_CASE_HANDLE(122); |
| TERM_CASE_HANDLE(123); |
| TERM_CASE_HANDLE(124); |
| TERM_CASE_HANDLE(125); |
| TERM_CASE_HANDLE(126); |
| TERM_CASE_HANDLE(127); |
| TERM_CASE_HANDLE(128); |
| TERM_CASE_HANDLE(129); |
| TERM_CASE_HANDLE(130); |
| TERM_CASE_HANDLE(131); |
| TERM_CASE_HANDLE(132); |
| TERM_CASE_HANDLE(133); |
| TERM_CASE_HANDLE(134); |
| TERM_CASE_HANDLE(135); |
| TERM_CASE_HANDLE(136); |
| TERM_CASE_HANDLE(137); |
| TERM_CASE_HANDLE(138); |
| TERM_CASE_HANDLE(139); |
| TERM_CASE_HANDLE(140); |
| TERM_CASE_HANDLE(141); |
| TERM_CASE_HANDLE(142); |
| TERM_CASE_HANDLE(143); |
| TERM_CASE_HANDLE(144); |
| TERM_CASE_HANDLE(145); |
| TERM_CASE_HANDLE(146); |
| TERM_CASE_HANDLE(147); |
| TERM_CASE_HANDLE(148); |
| TERM_CASE_HANDLE(149); |
| TERM_CASE_HANDLE(150); |
| TERM_CASE_HANDLE(151); |
| TERM_CASE_HANDLE(152); |
| TERM_CASE_HANDLE(153); |
| TERM_CASE_HANDLE(154); |
| TERM_CASE_HANDLE(155); |
| TERM_CASE_HANDLE(156); |
| TERM_CASE_HANDLE(157); |
| TERM_CASE_HANDLE(158); |
| TERM_CASE_HANDLE(159); |
| TERM_CASE_HANDLE(160); |
| TERM_CASE_HANDLE(161); |
| TERM_CASE_HANDLE(162); |
| TERM_CASE_HANDLE(163); |
| TERM_CASE_HANDLE(164); |
| TERM_CASE_HANDLE(165); |
| TERM_CASE_HANDLE(166); |
| TERM_CASE_HANDLE(167); |
| TERM_CASE_HANDLE(168); |
| TERM_CASE_HANDLE(169); |
| TERM_CASE_HANDLE(170); |
| TERM_CASE_HANDLE(171); |
| TERM_CASE_HANDLE(172); |
| TERM_CASE_HANDLE(173); |
| TERM_CASE_HANDLE(174); |
| TERM_CASE_HANDLE(175); |
| TERM_CASE_HANDLE(176); |
| TERM_CASE_HANDLE(177); |
| TERM_CASE_HANDLE(178); |
| TERM_CASE_HANDLE(179); |
| TERM_CASE_HANDLE(180); |
| TERM_CASE_HANDLE(181); |
| TERM_CASE_HANDLE(182); |
| TERM_CASE_HANDLE(183); |
| TERM_CASE_HANDLE(184); |
| TERM_CASE_HANDLE(185); |
| TERM_CASE_HANDLE(186); |
| TERM_CASE_HANDLE(187); |
| TERM_CASE_HANDLE(188); |
| TERM_CASE_HANDLE(189); |
| TERM_CASE_HANDLE(190); |
| TERM_CASE_HANDLE(191); |
| TERM_CASE_HANDLE(192); |
| TERM_CASE_HANDLE(193); |
| TERM_CASE_HANDLE(194); |
| TERM_CASE_HANDLE(195); |
| TERM_CASE_HANDLE(196); |
| TERM_CASE_HANDLE(197); |
| TERM_CASE_HANDLE(198); |
| TERM_CASE_HANDLE(199); |
| TERM_CASE_HANDLE(200); |
| TERM_CASE_HANDLE(201); |
| TERM_CASE_HANDLE(202); |
| TERM_CASE_HANDLE(203); |
| TERM_CASE_HANDLE(204); |
| TERM_CASE_HANDLE(205); |
| TERM_CASE_HANDLE(206); |
| TERM_CASE_HANDLE(207); |
| TERM_CASE_HANDLE(208); |
| TERM_CASE_HANDLE(209); |
| TERM_CASE_HANDLE(210); |
| TERM_CASE_HANDLE(211); |
| TERM_CASE_HANDLE(212); |
| TERM_CASE_HANDLE(213); |
| TERM_CASE_HANDLE(214); |
| TERM_CASE_HANDLE(215); |
| TERM_CASE_HANDLE(216); |
| TERM_CASE_HANDLE(217); |
| TERM_CASE_HANDLE(218); |
| TERM_CASE_HANDLE(219); |
| TERM_CASE_HANDLE(220); |
| TERM_CASE_HANDLE(221); |
| TERM_CASE_HANDLE(222); |
| TERM_CASE_HANDLE(223); |
| TERM_CASE_HANDLE(224); |
| TERM_CASE_HANDLE(225); |
| TERM_CASE_HANDLE(226); |
| TERM_CASE_HANDLE(227); |
| TERM_CASE_HANDLE(228); |
| TERM_CASE_HANDLE(229); |
| TERM_CASE_HANDLE(230); |
| TERM_CASE_HANDLE(231); |
| TERM_CASE_HANDLE(232); |
| TERM_CASE_HANDLE(233); |
| TERM_CASE_HANDLE(234); |
| TERM_CASE_HANDLE(235); |
| TERM_CASE_HANDLE(236); |
| TERM_CASE_HANDLE(237); |
| TERM_CASE_HANDLE(238); |
| TERM_CASE_HANDLE(239); |
| TERM_CASE_HANDLE(240); |
| TERM_CASE_HANDLE(241); |
| TERM_CASE_HANDLE(242); |
| TERM_CASE_HANDLE(243); |
| TERM_CASE_HANDLE(244); |
| TERM_CASE_HANDLE(245); |
| TERM_CASE_HANDLE(246); |
| TERM_CASE_HANDLE(247); |
| TERM_CASE_HANDLE(248); |
| TERM_CASE_HANDLE(249); |
| } |
| return NULL; |
| } |