Lines Matching defs:icd_phys_devs_array
798 struct loader_icd_physical_devices *icd_phys_devs_array) {
813 // Take a pointer to the last element of icd_phys_devs_array to simplify usage
814 struct loader_icd_physical_devices *next_icd_phys_devs = &icd_phys_devs_array[*icd_phys_devs_array_count];
844 if (count == icd_phys_devs_array[j].device_count) {
846 for (uint32_t k = 0; k < icd_phys_devs_array[j].device_count; k++) {
847 if (icd_phys_devs_array[j].physical_devices[k] != next_icd_phys_devs->physical_devices[k]) {
873 struct loader_icd_physical_devices *icd_phys_devs_array) {
879 if ((icd_phys_devs_array[i].windows_adapter_luid.HighPart != icd_phys_devs_array[j].windows_adapter_luid.HighPart) ||
880 (icd_phys_devs_array[i].windows_adapter_luid.LowPart != icd_phys_devs_array[j].windows_adapter_luid.LowPart)) {
893 for (uint32_t k = 0; k < icd_phys_devs_array[i].device_count; k++) {
895 icd_phys_devs_array[i].icd_term->dispatch.GetPhysicalDeviceProperties(icd_phys_devs_array[i].physical_devices[k],
903 GetPhysDevProps2 = icd_phys_devs_array[i].icd_term->dispatch.GetPhysicalDeviceProperties2;
905 GetPhysDevProps2 = (PFN_vkGetPhysicalDeviceProperties2)icd_phys_devs_array[i]
909 GetPhysDevProps2(icd_phys_devs_array[i].physical_devices[k], &props2);
917 struct loader_icd_physical_devices swap_icd = icd_phys_devs_array[i];
918 icd_phys_devs_array[i] = icd_phys_devs_array[j];
919 icd_phys_devs_array[j] = swap_icd;
925 // This function allocates icd_phys_devs_array which must be freed by the caller if not null
927 struct loader_icd_physical_devices **icd_phys_devs_array) {
939 *icd_phys_devs_array = loader_instance_heap_calloc(inst, icd_phys_devs_array_size * sizeof(struct loader_icd_physical_devices),
941 if (*icd_phys_devs_array == NULL) {
967 *icd_phys_devs_array = loader_instance_heap_realloc(inst, *icd_phys_devs_array, old_size, 2 * old_size,
969 if (*icd_phys_devs_array == NULL) {
976 (*icd_phys_devs_array)[*icd_phys_devs_array_count].device_count = 0;
977 (*icd_phys_devs_array)[*icd_phys_devs_array_count].physical_devices = NULL;
987 *icd_phys_devs_array);
999 sort_physical_devices_with_same_luid(inst, *icd_phys_devs_array_count, *icd_phys_devs_array);
1002 if (*icd_phys_devs_array_count == 0 && *icd_phys_devs_array != NULL) {
1003 loader_instance_heap_free(inst, *icd_phys_devs_array);
1004 *icd_phys_devs_array = NULL;