; Listing generated by Microsoft (R) Optimizing Compiler Version 19.37.32824.0 include listing.inc INCLUDELIB MSVCRTD INCLUDELIB OLDNAMES msvcjmc SEGMENT __9C03CD75_concurrencysal@h DB 01H __CA64BAF1_sal@h DB 01H __95655E73_vadefs@h DB 01H __1D560A45_vcruntime@h DB 01H __1B0272D9_corecrt@h DB 01H __13F5961F_stddef@h DB 01H __ED683015_stdint@h DB 01H __89F75FCD_ssgc_internal@h DB 01H __A5E73FD0_glfw3@h DB 01H __1D45B1A5_glfw_null_platform@h DB 01H __74484FB3_corecrt_wctype@h DB 01H __CBE172F9_wctype@h DB 01H __0ED14FEE_winpackagefamily@h DB 01H __F92EF742_winapifamily@h DB 01H __22E515EB_sdkddkver@h DB 01H __F214EFBF_excpt@h DB 01H __D9B78EDA_stdarg@h DB 01H __29F49F40_specstrings_undef@h DB 01H __D0F42932_specstrings_strict@h DB 01H __F00405FD_sdv_driverspecs@h DB 01H __173E09CA_driverspecs@h DB 01H __9A452361_specstrings@h DB 01H __1EC467ED_ctype@h DB 01H __98517906_kernelspecs@h DB 01H __D3497022_basetsd@h DB 01H __61CC25A1_errno@h DB 01H __7061C667_vcruntime_string@h DB 01H __E4C945B4_corecrt_memcpy_s@h DB 01H __8EAFF484_corecrt_memory@h DB 01H __6490AEC5_corecrt_wstring@h DB 01H __E8295E1E_string@h DB 01H __7FCB5136_guiddef@h DB 01H __FF8A9E11_pshpack4@h DB 01H __D5438902_poppack@h DB 01H __FB07E2A3_pshpack2@h DB 01H __F6906775_pshpack8@h DB 01H __F9415CFA_pshpack1@h DB 01H __E58C6F1C_apiset@h DB 01H __A5C52262_ktmtypes@h DB 01H __FBBA8F9D_winnt@h DB 01H __A32D3D2C_minwindef@h DB 01H __7D798299_windef@h DB 01H __9AE108E9_apisetcconv@h DB 01H __9CE53D2C_minwinbase@h DB 01H __5D0AA210_apiquery2@h DB 01H __4DD4E726_processenv@h DB 01H __3575CC96_fileapi@h DB 01H __8EA220E6_fileapifromapp@h DB 01H __BF9B31FE_debugapi@h DB 01H __C3AFE134_utilapiset@h DB 01H __76F69E51_handleapi@h DB 01H __7E63D784_errhandlingapi@h DB 01H __FFA7003C_fibersapi@h DB 01H __8971CECF_namedpipeapi@h DB 01H __46C9D8A6_profileapi@h DB 01H __98D4F0A3_heapapi@h DB 01H __50EF2A88_ioapiset@h DB 01H __92EA1464_synchapi@h DB 01H __A53D8AED_interlockedapi@h DB 01H __B506CAAF_processthreadsapi@h DB 01H __FF735694_sysinfoapi@h DB 01H __29589789_memoryapi@h DB 01H __E9C7A663_enclaveapi@h DB 01H __D035F9F7_threadpoollegacyapiset@h DB 01H __C899130C_threadpoolapiset@h DB 01H __E0441EE7_jobapi@h DB 01H __CEF86838_jobapi2@h DB 01H __35AC6B9A_wow64apiset@h DB 01H __C8AE41A5_libloaderapi@h DB 01H __CC9E232D_securitybaseapi@h DB 01H __C9D0C9B8_namespaceapi@h DB 01H __30FF9CAD_systemtopologyapi@h DB 01H __4D358795_processtopologyapi@h DB 01H __40446D10_securityappcontainer@h DB 01H __3A952EDF_realtimeapiset@h DB 01H __F4865F4B_winerror@h DB 01H __53C1BD93_timezoneapi@h DB 01H __1FFBEDBF_winbase@h DB 01H __43D3FA34_wingdi@h DB 01H __D24A7391_tvout@h DB 01H __7713A6C8_winuser@h DB 01H __0B345F71_datetimeapi@h DB 01H __9AC6960C_winnls@h DB 01H __973A40A8_stringapiset@h DB 01H __CC46FEE2_wincontypes@h DB 01H __97D70BE1_consoleapi@h DB 01H __27EC5E18_consoleapi2@h DB 01H __262E342F_consoleapi3@h DB 01H __641DCD70_wincon@h DB 01H __5A96C7A7_verrsrc@h DB 01H __B69C6FF2_winver@h DB 01H __7AEB8C37_reason@h DB 01H __59F1A8A9_winreg@h DB 01H __EE0E2B7F_wnnc@h DB 01H __DCDB7054_winnetwk@h DB 01H __81DDEDE3_stralign@h DB 01H __2134D1B4_winsvc@h DB 01H __11C07376_mcx@h DB 01H __577CE3E7_ime_cmodes@h DB 01H __1E72C31E_imm@h DB 01H __E15BF856_windows@h DB 01H __DF8704F0_rpcdcep@h DB 01H __5C6CA7BB_rpcdce@h DB 01H __853533C4_rpcnsi@h DB 01H __2D2406C3_rpcnterr@h DB 01H __64521D71_rpcasync@h DB 01H __AADCBA08_rpc@h DB 01H __1FE431C9_rpcnsip@h DB 01H __2B741F2D_rpcsal@h DB 01H __92623256_rpcndr@h DB 01H __45DED006_corecrt_malloc@h DB 01H __FD6DBD68_corecrt_search@h DB 01H __E2E33A61_corecrt_wstdlib@h DB 01H __531E1E2A_limits@h DB 01H __6E5ACABA_stdlib@h DB 01H __9C18532E_wtypesbase@h DB 01H __30B1AFDA_unknwnbase@h DB 01H __328C1996_objidlbase@h DB 01H __C4E06B6A_cguid@h DB 01H __434718C5_combaseapi@h DB 01H __EA2E1D6D_wtypes@h DB 01H __DE6FDEF1_unknwn@h DB 01H __CCE0BACC_objidl@h DB 01H __8C7011E5_oaidl@h DB 01H __2E0B7863_propidlbase@h DB 01H __BF4CF2EC_coml2api@h DB 01H __6D897344_oleidl@h DB 01H __1129FC2C_servprov@h DB 01H __757952E4_msxml@h DB 01H __B1191D53_urlmon@h DB 01H __404D1A47_propidl@h DB 01H __A1C63593_objbase@h DB 01H __9F7C87B7_dinput@h DB 01H __B468A3D3_xinput@h DB 01H __AD768F06_dbt@h DB 01H __D83367F8_glfw_win32_platform@h DB 01H __53CB9229_glfw_null_joystick@h DB 01H __96BD4474_glfw_win32_joystick@h DB 01H __7D74CEA8_glfw_win32_thread@h DB 01H __C7421531_glfw_win32_time@h DB 01H __43B1F397_glfw_platform@h DB 01H __A547227D_glfw_internal@h DB 01H __19139D6C_assert@h DB 01H __1388D7B6_vulkan@c DB 01H msvcjmc ENDS PUBLIC glfwVulkanSupported PUBLIC glfwGetRequiredInstanceExtensions PUBLIC _glfwInitVulkan PUBLIC _glfwTerminateVulkan PUBLIC _glfwGetVulkanResultString PUBLIC glfwGetInstanceProcAddress PUBLIC glfwGetPhysicalDevicePresentationSupport PUBLIC glfwCreateWindowSurface PUBLIC __JustMyCode_Default PUBLIC ??_C@_0N@IILPFLFM@vulkan?91?4dll@ ; `string' PUBLIC ??_C@_0BJ@PGPMJKGJ@Vulkan?3?5Loader?5not?5found@ ; `string' PUBLIC ??_C@_0BG@HBCIDECD@vkGetInstanceProcAddr@ ; `string' PUBLIC ??_C@_0DF@FEPNJFGL@Vulkan?3?5Loader?5does?5not?5export?5@ ; `string' PUBLIC ??_C@_0CH@DNHGEPME@vkEnumerateInstanceExtensionPro@ ; `string' PUBLIC ??_C@_0EC@MCALKGHI@Vulkan?3?5Failed?5to?5retrieve?5vkEn@ ; `string' PUBLIC ??_C@_0DF@KADNFCFI@Vulkan?3?5Failed?5to?5query?5instanc@ ; `string' PUBLIC ??_C@_0DA@LIIDOJC@Vulkan?3?5Failed?5to?5query?5instanc@ ; `string' PUBLIC ??_C@_0P@IENCOMCD@VK_KHR_surface@ ; `string' PUBLIC ??_C@_0BF@COCMEDFO@VK_KHR_win32_surface@ ; `string' PUBLIC ??_C@_0BF@DOIMLJHJ@VK_MVK_macos_surface@ ; `string' PUBLIC ??_C@_0BF@DMNOCJMB@VK_EXT_metal_surface@ ; `string' PUBLIC ??_C@_0BE@EFOBHOAB@VK_KHR_xlib_surface@ ; `string' PUBLIC ??_C@_0BD@DKPJMBMG@VK_KHR_xcb_surface@ ; `string' PUBLIC ??_C@_0BH@FDAKHMHL@VK_KHR_wayland_surface@ ; `string' PUBLIC ??_C@_07PBILKAFL@Success@ ; `string' PUBLIC ??_C@_0CH@GBHCOIGC@A?5fence?5or?5query?5has?5not?5yet?5co@ ; `string' PUBLIC ??_C@_0DJ@KAONABFK@A?5wait?5operation?5has?5not?5comple@ ; `string' PUBLIC ??_C@_0BF@NEMNBLEB@An?5event?5is?5signaled@ ; `string' PUBLIC ??_C@_0BH@MDCGBFEN@An?5event?5is?5unsignaled@ ; `string' PUBLIC ??_C@_0CM@GKIHKJDL@A?5return?5array?5was?5too?5small?5fo@ ; `string' PUBLIC ??_C@_0CE@HKNBGEPI@A?5host?5memory?5allocation?5has?5fa@ ; `string' PUBLIC ??_C@_0CG@CHEOMKGJ@A?5device?5memory?5allocation?5has?5@ ; `string' PUBLIC ??_C@_0FH@MCDKNJAI@Initialization?5of?5an?5object?5cou@ ; `string' PUBLIC ??_C@_0CN@IHJGMBHI@The?5logical?5or?5physical?5device?5@ ; `string' PUBLIC ??_C@_0CG@CHGOPGBD@Mapping?5of?5a?5memory?5object?5has?5@ ; `string' PUBLIC ??_C@_0DI@GNLCAHHB@A?5requested?5layer?5is?5not?5presen@ ; `string' PUBLIC ??_C@_0CH@NEGEBDM@A?5requested?5extension?5is?5not?5su@ ; `string' PUBLIC ??_C@_0CF@OFADCJLJ@A?5requested?5feature?5is?5not?5supp@ ; `string' PUBLIC ??_C@_0FM@BBONGFMN@The?5requested?5version?5of?5Vulkan@ ; `string' PUBLIC ??_C@_0DH@EKEHMEFD@Too?5many?5objects?5of?5the?5type?5ha@ ; `string' PUBLIC ??_C@_0DD@OOKDLCED@A?5requested?5format?5is?5not?5suppo@ ; `string' PUBLIC ??_C@_0CB@EJFBPGFM@A?5surface?5is?5no?5longer?5availabl@ ; `string' PUBLIC ??_C@_0FE@ILJLDKCD@A?5swapchain?5no?5longer?5matches?5t@ ; `string' PUBLIC ??_C@_0FH@FIPMKLID@A?5surface?5has?5changed?5in?5such?5a@ ; `string' PUBLIC ??_C@_0EP@OJIEDFOO@The?5display?5used?5by?5a?5swapchain@ ; `string' PUBLIC ??_C@_0FN@PJBCJBIL@The?5requested?5window?5is?5already@ ; `string' PUBLIC ??_C@_0CC@HDNEDJNI@A?5validation?5layer?5found?5an?5err@ ; `string' PUBLIC ??_C@_0BM@OMEGJAIK@ERROR?3?5UNKNOWN?5VULKAN?5ERROR@ ; `string' PUBLIC ??_C@_1LK@KEODBGDG@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ ; `string' PUBLIC ??_C@_1BM@HDJLENFO@?$AAc?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ ; `string' PUBLIC ??_C@_1CC@BJDHFMNM@?$AAp?$AAr?$AAo?$AAc?$AAn?$AAa?$AAm?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL@ ; `string' PUBLIC ??_C@_1DG@OGKBKBIO@?$AAi?$AAn?$AAs?$AAt?$AAa?$AAn?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAV?$AAK?$AA_@ ; `string' PUBLIC ??_C@_1DC@IAAODPOE@?$AAd?$AAe?$AAv?$AAi?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAV?$AAK?$AA_?$AAN?$AAU@ ; `string' PUBLIC ??_C@_0DF@FCIHEFHD@Vulkan?3?5Window?5surface?5creation@ ; `string' PUBLIC ??_C@_1BO@GACOJICA@?$AAw?$AAi?$AAn?$AAd?$AAo?$AAw?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ ; `string' PUBLIC ??_C@_1CA@PMLOLFHK@?$AAs?$AAu?$AAr?$AAf?$AAa?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ ; `string' PUBLIC ??_C@_0FO@KAELFDNN@Vulkan?3?5Window?5surface?5creation@ ; `string' EXTRN strcmp:PROC EXTRN _glfwPlatformLoadModule:PROC EXTRN _glfwPlatformFreeModule:PROC EXTRN _glfwPlatformGetModuleSymbol:PROC EXTRN _glfwInputError:PROC EXTRN _glfw_calloc:PROC EXTRN _glfw_free:PROC EXTRN __imp__wassert:PROC EXTRN _RTC_CheckStackVars:PROC EXTRN _RTC_InitBase:PROC EXTRN _RTC_Shutdown:PROC EXTRN __CheckForDebuggerJustMyCode:PROC EXTRN __GSHandlerCheck:PROC EXTRN __security_check_cookie:PROC EXTRN _glfw:BYTE EXTRN __ImageBase:BYTE EXTRN __security_cookie:QWORD ; COMDAT pdata pdata SEGMENT $pdata$glfwVulkanSupported DD imagerel $LN4 DD imagerel $LN4+72 DD imagerel $unwind$glfwVulkanSupported pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$glfwGetRequiredInstanceExtensions DD imagerel $LN7 DD imagerel $LN7+182 DD imagerel $unwind$glfwGetRequiredInstanceExtensions pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$_glfwInitVulkan DD imagerel $LN29 DD imagerel $LN29+955 DD imagerel $unwind$_glfwInitVulkan pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$_glfwTerminateVulkan DD imagerel $LN4 DD imagerel $LN4+59 DD imagerel $unwind$_glfwTerminateVulkan pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$_glfwGetVulkanResultString DD imagerel $LN32 DD imagerel $LN32+552 DD imagerel $unwind$_glfwGetVulkanResultString pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$glfwGetInstanceProcAddress DD imagerel $LN9 DD imagerel $LN9+227 DD imagerel $unwind$glfwGetInstanceProcAddress pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$glfwGetPhysicalDevicePresentationSupport DD imagerel $LN8 DD imagerel $LN8+241 DD imagerel $unwind$glfwGetPhysicalDevicePresentationSupport pdata ENDS ; COMDAT pdata pdata SEGMENT $pdata$glfwCreateWindowSurface DD imagerel $LN10 DD imagerel $LN10+359 DD imagerel $unwind$glfwCreateWindowSurface pdata ENDS ; COMDAT rtc$TMZ rtc$TMZ SEGMENT _RTC_Shutdown.rtc$TMZ DQ FLAT:_RTC_Shutdown rtc$TMZ ENDS ; COMDAT rtc$IMZ rtc$IMZ SEGMENT _RTC_InitBase.rtc$IMZ DQ FLAT:_RTC_InitBase rtc$IMZ ENDS ; COMDAT ??_C@_0FO@KAELFDNN@Vulkan?3?5Window?5surface?5creation@ CONST SEGMENT ??_C@_0FO@KAELFDNN@Vulkan?3?5Window?5surface?5creation@ DB 'Vulkan: Windo' DB 'w surface creation requires the window to have the client API' DB ' set to GLFW_NO_API', 00H ; `string' CONST ENDS ; COMDAT ??_C@_1CA@PMLOLFHK@?$AAs?$AAu?$AAr?$AAf?$AAa?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ CONST SEGMENT ??_C@_1CA@PMLOLFHK@?$AAs?$AAu?$AAr?$AAf?$AAa?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ DB 's' DB 00H, 'u', 00H, 'r', 00H, 'f', 00H, 'a', 00H, 'c', 00H, 'e', 00H DB ' ', 00H, '!', 00H, '=', 00H, ' ', 00H, 'N', 00H, 'U', 00H, 'L' DB 00H, 'L', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_1BO@GACOJICA@?$AAw?$AAi?$AAn?$AAd?$AAo?$AAw?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ CONST SEGMENT ??_C@_1BO@GACOJICA@?$AAw?$AAi?$AAn?$AAd?$AAo?$AAw?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ DB 'w' DB 00H, 'i', 00H, 'n', 00H, 'd', 00H, 'o', 00H, 'w', 00H, ' ', 00H DB '!', 00H, '=', 00H, ' ', 00H, 'N', 00H, 'U', 00H, 'L', 00H, 'L' DB 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0DF@FCIHEFHD@Vulkan?3?5Window?5surface?5creation@ CONST SEGMENT ??_C@_0DF@FCIHEFHD@Vulkan?3?5Window?5surface?5creation@ DB 'Vulkan: Windo' DB 'w surface creation extensions not found', 00H ; `string' CONST ENDS ; COMDAT ??_C@_1DC@IAAODPOE@?$AAd?$AAe?$AAv?$AAi?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAV?$AAK?$AA_?$AAN?$AAU@ CONST SEGMENT ??_C@_1DC@IAAODPOE@?$AAd?$AAe?$AAv?$AAi?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAV?$AAK?$AA_?$AAN?$AAU@ DB 'd' DB 00H, 'e', 00H, 'v', 00H, 'i', 00H, 'c', 00H, 'e', 00H, ' ', 00H DB '!', 00H, '=', 00H, ' ', 00H, 'V', 00H, 'K', 00H, '_', 00H, 'N' DB 00H, 'U', 00H, 'L', 00H, 'L', 00H, '_', 00H, 'H', 00H, 'A', 00H DB 'N', 00H, 'D', 00H, 'L', 00H, 'E', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_1DG@OGKBKBIO@?$AAi?$AAn?$AAs?$AAt?$AAa?$AAn?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAV?$AAK?$AA_@ CONST SEGMENT ??_C@_1DG@OGKBKBIO@?$AAi?$AAn?$AAs?$AAt?$AAa?$AAn?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAV?$AAK?$AA_@ DB 'i' DB 00H, 'n', 00H, 's', 00H, 't', 00H, 'a', 00H, 'n', 00H, 'c', 00H DB 'e', 00H, ' ', 00H, '!', 00H, '=', 00H, ' ', 00H, 'V', 00H, 'K' DB 00H, '_', 00H, 'N', 00H, 'U', 00H, 'L', 00H, 'L', 00H, '_', 00H DB 'H', 00H, 'A', 00H, 'N', 00H, 'D', 00H, 'L', 00H, 'E', 00H, 00H DB 00H ; `string' CONST ENDS ; COMDAT ??_C@_1CC@BJDHFMNM@?$AAp?$AAr?$AAo?$AAc?$AAn?$AAa?$AAm?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL@ CONST SEGMENT ??_C@_1CC@BJDHFMNM@?$AAp?$AAr?$AAo?$AAc?$AAn?$AAa?$AAm?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL@ DB 'p' DB 00H, 'r', 00H, 'o', 00H, 'c', 00H, 'n', 00H, 'a', 00H, 'm', 00H DB 'e', 00H, ' ', 00H, '!', 00H, '=', 00H, ' ', 00H, 'N', 00H, 'U' DB 00H, 'L', 00H, 'L', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_1BM@HDJLENFO@?$AAc?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ CONST SEGMENT ??_C@_1BM@HDJLENFO@?$AAc?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ DB 'c' DB 00H, 'o', 00H, 'u', 00H, 'n', 00H, 't', 00H, ' ', 00H, '!', 00H DB '=', 00H, ' ', 00H, 'N', 00H, 'U', 00H, 'L', 00H, 'L', 00H, 00H DB 00H ; `string' CONST ENDS ; COMDAT ??_C@_1LK@KEODBGDG@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ CONST SEGMENT ??_C@_1LK@KEODBGDG@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ DB 'D' DB 00H, ':', 00H, '\', 00H, 'N', 00H, 'i', 00H, 't', 00H, 'l', 00H DB 'o', 00H, 'a', 00H, 'd', 00H, 'I', 00H, 'n', 00H, 'd', 00H, 'u' DB 00H, 's', 00H, 't', 00H, 'r', 00H, 'y', 00H, '\', 00H, 014H, 'x' DB 'vzy', 098H, 0eeH, 'v\', 00H, '1', 00H, '-', 00H, 'F', 00H, 'l' DB 00H, 'a', 00H, 'g', 00H, 's', 00H, 'h', 00H, 'i', 00H, 'p', 00H DB '\', 00H, 'T', 00H, 'H', 00H, '2', 00H, '0', 00H, '2', 00H, '0' DB 00H, '\', 00H, 'P', 00H, 'r', 00H, 'o', 00H, 'j', 00H, 'e', 00H DB 'c', 00H, 't', 00H, 'F', 00H, 'i', 00H, 'l', 00H, 'e', 00H, '\' DB 00H, 090H, 'n', 0e3H, 'N', 01H, 'x\', 00H, 'S', 00H, 't', 00H, 'g' DB 00H, 'S', 00H, 'h', 00H, 'a', 00H, 'r', 00H, 'p', 00H, 'G', 00H DB 'r', 00H, 'a', 00H, 'p', 00H, 'h', 00H, 'i', 00H, 'c', 00H, '\' DB 00H, 'c', 00H, 'o', 00H, 'd', 00H, 'e', 00H, '\', 00H, 'g', 00H DB 'l', 00H, 'f', 00H, 'w', 00H, '\', 00H, 'v', 00H, 'u', 00H, 'l' DB 00H, 'k', 00H, 'a', 00H, 'n', 00H, '.', 00H, 'c', 00H, 00H, 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BM@OMEGJAIK@ERROR?3?5UNKNOWN?5VULKAN?5ERROR@ CONST SEGMENT ??_C@_0BM@OMEGJAIK@ERROR?3?5UNKNOWN?5VULKAN?5ERROR@ DB 'ERROR: UNKNOWN VU' DB 'LKAN ERROR', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CC@HDNEDJNI@A?5validation?5layer?5found?5an?5err@ CONST SEGMENT ??_C@_0CC@HDNEDJNI@A?5validation?5layer?5found?5an?5err@ DB 'A validation' DB ' layer found an error', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0FN@PJBCJBIL@The?5requested?5window?5is?5already@ CONST SEGMENT ??_C@_0FN@PJBCJBIL@The?5requested?5window?5is?5already@ DB 'The requested' DB ' window is already connected to a VkSurfaceKHR, or to some ot' DB 'her non-Vulkan API', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0EP@OJIEDFOO@The?5display?5used?5by?5a?5swapchain@ CONST SEGMENT ??_C@_0EP@OJIEDFOO@The?5display?5used?5by?5a?5swapchain@ DB 'The display ' DB 'used by a swapchain does not use the same presentable image l' DB 'ayout', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0FH@FIPMKLID@A?5surface?5has?5changed?5in?5such?5a@ CONST SEGMENT ??_C@_0FH@FIPMKLID@A?5surface?5has?5changed?5in?5such?5a@ DB 'A surface h' DB 'as changed in such a way that it is no longer compatible with' DB ' the swapchain', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0FE@ILJLDKCD@A?5swapchain?5no?5longer?5matches?5t@ CONST SEGMENT ??_C@_0FE@ILJLDKCD@A?5swapchain?5no?5longer?5matches?5t@ DB 'A swapchain ' DB 'no longer matches the surface properties exactly, but can sti' DB 'll be used', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CB@EJFBPGFM@A?5surface?5is?5no?5longer?5availabl@ CONST SEGMENT ??_C@_0CB@EJFBPGFM@A?5surface?5is?5no?5longer?5availabl@ DB 'A surface is' DB ' no longer available', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0DD@OOKDLCED@A?5requested?5format?5is?5not?5suppo@ CONST SEGMENT ??_C@_0DD@OOKDLCED@A?5requested?5format?5is?5not?5suppo@ DB 'A requested ' DB 'format is not supported on this device', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0DH@EKEHMEFD@Too?5many?5objects?5of?5the?5type?5ha@ CONST SEGMENT ??_C@_0DH@EKEHMEFD@Too?5many?5objects?5of?5the?5type?5ha@ DB 'Too many ob' DB 'jects of the type have already been created', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0FM@BBONGFMN@The?5requested?5version?5of?5Vulkan@ CONST SEGMENT ??_C@_0FM@BBONGFMN@The?5requested?5version?5of?5Vulkan@ DB 'The requested' DB ' version of Vulkan is not supported by the driver or is other' DB 'wise incompatible', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CF@OFADCJLJ@A?5requested?5feature?5is?5not?5supp@ CONST SEGMENT ??_C@_0CF@OFADCJLJ@A?5requested?5feature?5is?5not?5supp@ DB 'A requested ' DB 'feature is not supported', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CH@NEGEBDM@A?5requested?5extension?5is?5not?5su@ CONST SEGMENT ??_C@_0CH@NEGEBDM@A?5requested?5extension?5is?5not?5su@ DB 'A requested e' DB 'xtension is not supported', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0DI@GNLCAHHB@A?5requested?5layer?5is?5not?5presen@ CONST SEGMENT ??_C@_0DI@GNLCAHHB@A?5requested?5layer?5is?5not?5presen@ DB 'A requested ' DB 'layer is not present or could not be loaded', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CG@CHGOPGBD@Mapping?5of?5a?5memory?5object?5has?5@ CONST SEGMENT ??_C@_0CG@CHGOPGBD@Mapping?5of?5a?5memory?5object?5has?5@ DB 'Mapping of ' DB 'a memory object has failed', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CN@IHJGMBHI@The?5logical?5or?5physical?5device?5@ CONST SEGMENT ??_C@_0CN@IHJGMBHI@The?5logical?5or?5physical?5device?5@ DB 'The logical ' DB 'or physical device has been lost', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0FH@MCDKNJAI@Initialization?5of?5an?5object?5cou@ CONST SEGMENT ??_C@_0FH@MCDKNJAI@Initialization?5of?5an?5object?5cou@ DB 'Initializatio' DB 'n of an object could not be completed for implementation-spec' DB 'ific reasons', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CG@CHEOMKGJ@A?5device?5memory?5allocation?5has?5@ CONST SEGMENT ??_C@_0CG@CHEOMKGJ@A?5device?5memory?5allocation?5has?5@ DB 'A device mem' DB 'ory allocation has failed', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CE@HKNBGEPI@A?5host?5memory?5allocation?5has?5fa@ CONST SEGMENT ??_C@_0CE@HKNBGEPI@A?5host?5memory?5allocation?5has?5fa@ DB 'A host memor' DB 'y allocation has failed', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CM@GKIHKJDL@A?5return?5array?5was?5too?5small?5fo@ CONST SEGMENT ??_C@_0CM@GKIHKJDL@A?5return?5array?5was?5too?5small?5fo@ DB 'A return ar' DB 'ray was too small for the result', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BH@MDCGBFEN@An?5event?5is?5unsignaled@ CONST SEGMENT ??_C@_0BH@MDCGBFEN@An?5event?5is?5unsignaled@ DB 'An event is unsignaled', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BF@NEMNBLEB@An?5event?5is?5signaled@ CONST SEGMENT ??_C@_0BF@NEMNBLEB@An?5event?5is?5signaled@ DB 'An event is signaled', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0DJ@KAONABFK@A?5wait?5operation?5has?5not?5comple@ CONST SEGMENT ??_C@_0DJ@KAONABFK@A?5wait?5operation?5has?5not?5comple@ DB 'A wait opera' DB 'tion has not completed in the specified time', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CH@GBHCOIGC@A?5fence?5or?5query?5has?5not?5yet?5co@ CONST SEGMENT ??_C@_0CH@GBHCOIGC@A?5fence?5or?5query?5has?5not?5yet?5co@ DB 'A fence or' DB ' query has not yet completed', 00H ; `string' CONST ENDS ; COMDAT ??_C@_07PBILKAFL@Success@ CONST SEGMENT ??_C@_07PBILKAFL@Success@ DB 'Success', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BH@FDAKHMHL@VK_KHR_wayland_surface@ CONST SEGMENT ??_C@_0BH@FDAKHMHL@VK_KHR_wayland_surface@ DB 'VK_KHR_wayland_surface', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BD@DKPJMBMG@VK_KHR_xcb_surface@ CONST SEGMENT ??_C@_0BD@DKPJMBMG@VK_KHR_xcb_surface@ DB 'VK_KHR_xcb_surface', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BE@EFOBHOAB@VK_KHR_xlib_surface@ CONST SEGMENT ??_C@_0BE@EFOBHOAB@VK_KHR_xlib_surface@ DB 'VK_KHR_xlib_surface', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BF@DMNOCJMB@VK_EXT_metal_surface@ CONST SEGMENT ??_C@_0BF@DMNOCJMB@VK_EXT_metal_surface@ DB 'VK_EXT_metal_surface', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BF@DOIMLJHJ@VK_MVK_macos_surface@ CONST SEGMENT ??_C@_0BF@DOIMLJHJ@VK_MVK_macos_surface@ DB 'VK_MVK_macos_surface', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BF@COCMEDFO@VK_KHR_win32_surface@ CONST SEGMENT ??_C@_0BF@COCMEDFO@VK_KHR_win32_surface@ DB 'VK_KHR_win32_surface', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0P@IENCOMCD@VK_KHR_surface@ CONST SEGMENT ??_C@_0P@IENCOMCD@VK_KHR_surface@ DB 'VK_KHR_surface', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0DA@LIIDOJC@Vulkan?3?5Failed?5to?5query?5instanc@ CONST SEGMENT ??_C@_0DA@LIIDOJC@Vulkan?3?5Failed?5to?5query?5instanc@ DB 'Vulkan: Faile' DB 'd to query instance extensions: %s', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0DF@KADNFCFI@Vulkan?3?5Failed?5to?5query?5instanc@ CONST SEGMENT ??_C@_0DF@KADNFCFI@Vulkan?3?5Failed?5to?5query?5instanc@ DB 'Vulkan: Fail' DB 'ed to query instance extension count: %s', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0EC@MCALKGHI@Vulkan?3?5Failed?5to?5retrieve?5vkEn@ CONST SEGMENT ??_C@_0EC@MCALKGHI@Vulkan?3?5Failed?5to?5retrieve?5vkEn@ DB 'Vulkan: Fail' DB 'ed to retrieve vkEnumerateInstanceExtensionProperties', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0CH@DNHGEPME@vkEnumerateInstanceExtensionPro@ CONST SEGMENT ??_C@_0CH@DNHGEPME@vkEnumerateInstanceExtensionPro@ DB 'vkEnumerateInstan' DB 'ceExtensionProperties', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0DF@FEPNJFGL@Vulkan?3?5Loader?5does?5not?5export?5@ CONST SEGMENT ??_C@_0DF@FEPNJFGL@Vulkan?3?5Loader?5does?5not?5export?5@ DB 'Vulkan: Loa' DB 'der does not export vkGetInstanceProcAddr', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BG@HBCIDECD@vkGetInstanceProcAddr@ CONST SEGMENT ??_C@_0BG@HBCIDECD@vkGetInstanceProcAddr@ DB 'vkGetInstanceProcAddr', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0BJ@PGPMJKGJ@Vulkan?3?5Loader?5not?5found@ CONST SEGMENT ??_C@_0BJ@PGPMJKGJ@Vulkan?3?5Loader?5not?5found@ DB 'Vulkan: Loader not f' DB 'ound', 00H ; `string' CONST ENDS ; COMDAT ??_C@_0N@IILPFLFM@vulkan?91?4dll@ CONST SEGMENT ??_C@_0N@IILPFLFM@vulkan?91?4dll@ DB 'vulkan-1.dll', 00H ; `string' CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$glfwCreateWindowSurface DD 025052201H DD 011d2322H DD 070160021H DD 05015H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$glfwGetPhysicalDevicePresentationSupport DD 025051d01H DD 0118231dH DD 07011001dH DD 05010H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$glfwGetInstanceProcAddress DD 025051801H DD 01132318H DD 0700c0021H DD 0500bH xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$_glfwGetVulkanResultString DD 025051201H DD 010d2312H DD 07006001fH DD 05005H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$_glfwTerminateVulkan DD 025050f01H DD 010a230fH DD 07003001dH DD 05002H xdata ENDS ; COMDAT voltbl voltbl SEGMENT _volmd DW 034H DW 03a2H voltbl ENDS ; COMDAT xdata xdata SEGMENT $unwind$_glfwInitVulkan DD 025053b19H DD 010d2312H DD 070060031H DD 05005H DD imagerel __GSHandlerCheck DD 0178H xdata ENDS ; COMDAT CONST CONST SEGMENT _glfwInitVulkan$rtcName$0 DB 063H DB 06fH DB 075H DB 06eH DB 074H DB 00H ORG $+10 _glfwInitVulkan$rtcVarDesc DD 0a4H DD 04H DQ FLAT:_glfwInitVulkan$rtcName$0 ORG $+48 _glfwInitVulkan$rtcFrameData DD 01H DD 00H DQ FLAT:_glfwInitVulkan$rtcVarDesc CONST ENDS ; COMDAT xdata xdata SEGMENT $unwind$glfwGetRequiredInstanceExtensions DD 025051301H DD 010e2313H DD 07007001dH DD 05006H xdata ENDS ; COMDAT xdata xdata SEGMENT $unwind$glfwVulkanSupported DD 025050f01H DD 010a230fH DD 07003001dH DD 05002H xdata ENDS ; Function compile flags: /Odt ; COMDAT __JustMyCode_Default _TEXT SEGMENT __JustMyCode_Default PROC ; COMDAT 00000 c2 00 00 ret 0 __JustMyCode_Default ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\vulkan.c ; COMDAT glfwCreateWindowSurface _TEXT SEGMENT window$ = 8 instance$ = 256 handle$ = 264 allocator$ = 272 surface$ = 280 glfwCreateWindowSurface PROC ; COMDAT ; 301 : { $LN10: 00000 4c 89 4c 24 20 mov QWORD PTR [rsp+32], r9 00005 4c 89 44 24 18 mov QWORD PTR [rsp+24], r8 0000a 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000f 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00014 55 push rbp 00015 57 push rdi 00016 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H 0001d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00022 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__1388D7B6_vulkan@c 00029 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 302 : _GLFWwindow* window = (_GLFWwindow*) handle; 0002e 48 8b 85 08 01 00 00 mov rax, QWORD PTR handle$[rbp] 00035 48 89 45 08 mov QWORD PTR window$[rbp], rax ; 303 : assert(instance != VK_NULL_HANDLE); 00039 48 83 bd 00 01 00 00 00 cmp QWORD PTR instance$[rbp], 0 00041 75 1c jne SHORT $LN7@glfwCreate 00043 41 b8 2f 01 00 00 mov r8d, 303 ; 0000012fH 00049 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1LK@KEODBGDG@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00050 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1DG@OGKBKBIO@?$AAi?$AAn?$AAs?$AAt?$AAa?$AAn?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAV?$AAK?$AA_@ 00057 ff 15 00 00 00 00 call QWORD PTR __imp__wassert 0005d 33 c0 xor eax, eax $LN7@glfwCreate: ; 304 : assert(window != NULL); 0005f 48 83 7d 08 00 cmp QWORD PTR window$[rbp], 0 00064 75 1c jne SHORT $LN8@glfwCreate 00066 41 b8 30 01 00 00 mov r8d, 304 ; 00000130H 0006c 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1LK@KEODBGDG@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00073 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1BO@GACOJICA@?$AAw?$AAi?$AAn?$AAd?$AAo?$AAw?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ 0007a ff 15 00 00 00 00 call QWORD PTR __imp__wassert 00080 33 c0 xor eax, eax $LN8@glfwCreate: ; 305 : assert(surface != NULL); 00082 48 83 bd 18 01 00 00 00 cmp QWORD PTR surface$[rbp], 0 0008a 75 1c jne SHORT $LN9@glfwCreate 0008c 41 b8 31 01 00 00 mov r8d, 305 ; 00000131H 00092 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1LK@KEODBGDG@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00099 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1CA@PMLOLFHK@?$AAs?$AAu?$AAr?$AAf?$AAa?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ 000a0 ff 15 00 00 00 00 call QWORD PTR __imp__wassert 000a6 33 c0 xor eax, eax $LN9@glfwCreate: ; 306 : ; 307 : *surface = VK_NULL_HANDLE; 000a8 48 8b 85 18 01 00 00 mov rax, QWORD PTR surface$[rbp] 000af 48 c7 00 00 00 00 00 mov QWORD PTR [rax], 0 ; 308 : ; 309 : _GLFW_REQUIRE_INIT_OR_RETURN(VK_ERROR_INITIALIZATION_FAILED); 000b6 83 3d 00 00 00 00 00 cmp DWORD PTR _glfw, 0 000bd 75 16 jne SHORT $LN2@glfwCreate 000bf 33 d2 xor edx, edx 000c1 b9 01 00 01 00 mov ecx, 65537 ; 00010001H 000c6 e8 00 00 00 00 call _glfwInputError 000cb b8 fd ff ff ff mov eax, -3 000d0 e9 88 00 00 00 jmp $LN1@glfwCreate $LN2@glfwCreate: ; 310 : ; 311 : if (!_glfwInitVulkan(_GLFW_REQUIRE_LOADER)) 000d5 b9 02 00 00 00 mov ecx, 2 000da e8 00 00 00 00 call _glfwInitVulkan 000df 85 c0 test eax, eax 000e1 75 07 jne SHORT $LN3@glfwCreate ; 312 : return VK_ERROR_INITIALIZATION_FAILED; 000e3 b8 fd ff ff ff mov eax, -3 000e8 eb 73 jmp SHORT $LN1@glfwCreate $LN3@glfwCreate: ; 313 : ; 314 : if (!_glfw.vk.extensions[0]) 000ea b8 08 00 00 00 mov eax, 8 000ef 48 6b c0 00 imul rax, rax, 0 000f3 48 8d 0d 30 1b 00 00 lea rcx, OFFSET FLAT:_glfw+6960 000fa 48 83 3c 01 00 cmp QWORD PTR [rcx+rax], 0 000ff 75 18 jne SHORT $LN4@glfwCreate ; 315 : { ; 316 : _glfwInputError(GLFW_API_UNAVAILABLE, 00101 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0DF@FCIHEFHD@Vulkan?3?5Window?5surface?5creation@ 00108 b9 06 00 01 00 mov ecx, 65542 ; 00010006H 0010d e8 00 00 00 00 call _glfwInputError ; 317 : "Vulkan: Window surface creation extensions not found"); ; 318 : return VK_ERROR_EXTENSION_NOT_PRESENT; 00112 b8 f9 ff ff ff mov eax, -7 00117 eb 44 jmp SHORT $LN1@glfwCreate $LN4@glfwCreate: ; 319 : } ; 320 : ; 321 : if (window->context.client != GLFW_NO_API) 00119 48 8b 45 08 mov rax, QWORD PTR window$[rbp] 0011d 83 b8 08 02 00 00 00 cmp DWORD PTR [rax+520], 0 00124 74 18 je SHORT $LN5@glfwCreate ; 322 : { ; 323 : _glfwInputError(GLFW_INVALID_VALUE, 00126 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0FO@KAELFDNN@Vulkan?3?5Window?5surface?5creation@ 0012d b9 04 00 01 00 mov ecx, 65540 ; 00010004H 00132 e8 00 00 00 00 call _glfwInputError ; 324 : "Vulkan: Window surface creation requires the window to have the client API set to GLFW_NO_API"); ; 325 : return VK_ERROR_NATIVE_WINDOW_IN_USE_KHR; 00137 b8 ff 35 65 c4 mov eax, -1000000001 ; ffffffffc46535ffH 0013c eb 1f jmp SHORT $LN1@glfwCreate $LN5@glfwCreate: ; 326 : } ; 327 : ; 328 : return _glfw.platform.createWindowSurface(instance, window, allocator, surface); 0013e 4c 8b 8d 18 01 00 00 mov r9, QWORD PTR surface$[rbp] 00145 4c 8b 85 10 01 00 00 mov r8, QWORD PTR allocator$[rbp] 0014c 48 8b 55 08 mov rdx, QWORD PTR window$[rbp] 00150 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR instance$[rbp] 00157 ff 15 60 02 00 00 call QWORD PTR _glfw+608 $LN1@glfwCreate: ; 329 : } 0015d 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 00164 5f pop rdi 00165 5d pop rbp 00166 c3 ret 0 glfwCreateWindowSurface ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\vulkan.c ; COMDAT glfwGetPhysicalDevicePresentationSupport _TEXT SEGMENT instance$ = 224 device$ = 232 queuefamily$ = 240 glfwGetPhysicalDevicePresentationSupport PROC ; COMDAT ; 276 : { $LN8: 00000 44 89 44 24 18 mov DWORD PTR [rsp+24], r8d 00005 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 0000a 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000f 55 push rbp 00010 57 push rdi 00011 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 00018 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0001d 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__1388D7B6_vulkan@c 00024 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 277 : assert(instance != VK_NULL_HANDLE); 00029 48 83 bd e0 00 00 00 00 cmp QWORD PTR instance$[rbp], 0 00031 75 1c jne SHORT $LN6@glfwGetPhy 00033 41 b8 15 01 00 00 mov r8d, 277 ; 00000115H 00039 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1LK@KEODBGDG@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00040 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1DG@OGKBKBIO@?$AAi?$AAn?$AAs?$AAt?$AAa?$AAn?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAV?$AAK?$AA_@ 00047 ff 15 00 00 00 00 call QWORD PTR __imp__wassert 0004d 33 c0 xor eax, eax $LN6@glfwGetPhy: ; 278 : assert(device != VK_NULL_HANDLE); 0004f 48 83 bd e8 00 00 00 00 cmp QWORD PTR device$[rbp], 0 00057 75 1c jne SHORT $LN7@glfwGetPhy 00059 41 b8 16 01 00 00 mov r8d, 278 ; 00000116H 0005f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1LK@KEODBGDG@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00066 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1DC@IAAODPOE@?$AAd?$AAe?$AAv?$AAi?$AAc?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAV?$AAK?$AA_?$AAN?$AAU@ 0006d ff 15 00 00 00 00 call QWORD PTR __imp__wassert 00073 33 c0 xor eax, eax $LN7@glfwGetPhy: ; 279 : ; 280 : _GLFW_REQUIRE_INIT_OR_RETURN(GLFW_FALSE); 00075 83 3d 00 00 00 00 00 cmp DWORD PTR _glfw, 0 0007c 75 10 jne SHORT $LN2@glfwGetPhy 0007e 33 d2 xor edx, edx 00080 b9 01 00 01 00 mov ecx, 65537 ; 00010001H 00085 e8 00 00 00 00 call _glfwInputError 0008a 33 c0 xor eax, eax 0008c eb 59 jmp SHORT $LN1@glfwGetPhy $LN2@glfwGetPhy: ; 281 : ; 282 : if (!_glfwInitVulkan(_GLFW_REQUIRE_LOADER)) 0008e b9 02 00 00 00 mov ecx, 2 00093 e8 00 00 00 00 call _glfwInitVulkan 00098 85 c0 test eax, eax 0009a 75 04 jne SHORT $LN3@glfwGetPhy ; 283 : return GLFW_FALSE; 0009c 33 c0 xor eax, eax 0009e eb 47 jmp SHORT $LN1@glfwGetPhy $LN3@glfwGetPhy: ; 284 : ; 285 : if (!_glfw.vk.extensions[0]) 000a0 b8 08 00 00 00 mov eax, 8 000a5 48 6b c0 00 imul rax, rax, 0 000a9 48 8d 0d 30 1b 00 00 lea rcx, OFFSET FLAT:_glfw+6960 000b0 48 83 3c 01 00 cmp QWORD PTR [rcx+rax], 0 000b5 75 15 jne SHORT $LN4@glfwGetPhy ; 286 : { ; 287 : _glfwInputError(GLFW_API_UNAVAILABLE, 000b7 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0DF@FCIHEFHD@Vulkan?3?5Window?5surface?5creation@ 000be b9 06 00 01 00 mov ecx, 65542 ; 00010006H 000c3 e8 00 00 00 00 call _glfwInputError ; 288 : "Vulkan: Window surface creation extensions not found"); ; 289 : return GLFW_FALSE; 000c8 33 c0 xor eax, eax 000ca eb 1b jmp SHORT $LN1@glfwGetPhy $LN4@glfwGetPhy: ; 290 : } ; 291 : ; 292 : return _glfw.platform.getPhysicalDevicePresentationSupport(instance, 000cc 44 8b 85 f0 00 00 00 mov r8d, DWORD PTR queuefamily$[rbp] 000d3 48 8b 95 e8 00 00 00 mov rdx, QWORD PTR device$[rbp] 000da 48 8b 8d e0 00 00 00 mov rcx, QWORD PTR instance$[rbp] 000e1 ff 15 58 02 00 00 call QWORD PTR _glfw+600 $LN1@glfwGetPhy: ; 293 : device, ; 294 : queuefamily); ; 295 : } 000e7 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 000ee 5f pop rdi 000ef 5d pop rbp 000f0 c3 ret 0 glfwGetPhysicalDevicePresentationSupport ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\vulkan.c ; COMDAT glfwGetInstanceProcAddress _TEXT SEGMENT proc$ = 8 instance$ = 256 procname$ = 264 glfwGetInstanceProcAddress PROC ; COMDAT ; 250 : { $LN9: 00000 48 89 54 24 10 mov QWORD PTR [rsp+16], rdx 00005 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 0000a 55 push rbp 0000b 57 push rdi 0000c 48 81 ec 08 01 00 00 sub rsp, 264 ; 00000108H 00013 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00018 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__1388D7B6_vulkan@c 0001f e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 251 : GLFWvkproc proc; ; 252 : assert(procname != NULL); 00024 48 83 bd 08 01 00 00 00 cmp QWORD PTR procname$[rbp], 0 0002c 75 1c jne SHORT $LN8@glfwGetIns 0002e 41 b8 fc 00 00 00 mov r8d, 252 ; 000000fcH 00034 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1LK@KEODBGDG@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 0003b 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1CC@BJDHFMNM@?$AAp?$AAr?$AAo?$AAc?$AAn?$AAa?$AAm?$AAe?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL@ 00042 ff 15 00 00 00 00 call QWORD PTR __imp__wassert 00048 33 c0 xor eax, eax $LN8@glfwGetIns: ; 253 : ; 254 : _GLFW_REQUIRE_INIT_OR_RETURN(NULL); 0004a 83 3d 00 00 00 00 00 cmp DWORD PTR _glfw, 0 00051 75 10 jne SHORT $LN2@glfwGetIns 00053 33 d2 xor edx, edx 00055 b9 01 00 01 00 mov ecx, 65537 ; 00010001H 0005a e8 00 00 00 00 call _glfwInputError 0005f 33 c0 xor eax, eax 00061 eb 76 jmp SHORT $LN1@glfwGetIns $LN2@glfwGetIns: ; 255 : ; 256 : if (!_glfwInitVulkan(_GLFW_REQUIRE_LOADER)) 00063 b9 02 00 00 00 mov ecx, 2 00068 e8 00 00 00 00 call _glfwInitVulkan 0006d 85 c0 test eax, eax 0006f 75 04 jne SHORT $LN3@glfwGetIns ; 257 : return NULL; 00071 33 c0 xor eax, eax 00073 eb 64 jmp SHORT $LN1@glfwGetIns $LN3@glfwGetIns: ; 258 : ; 259 : // NOTE: Vulkan 1.0 and 1.1 vkGetInstanceProcAddr cannot return itself ; 260 : if (strcmp(procname, "vkGetInstanceProcAddr") == 0) 00075 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BG@HBCIDECD@vkGetInstanceProcAddr@ 0007c 48 8b 8d 08 01 00 00 mov rcx, QWORD PTR procname$[rbp] 00083 e8 00 00 00 00 call strcmp 00088 85 c0 test eax, eax 0008a 75 09 jne SHORT $LN4@glfwGetIns ; 261 : return (GLFWvkproc) vkGetInstanceProcAddr; 0008c 48 8b 05 40 1b 00 00 mov rax, QWORD PTR _glfw+6976 00093 eb 44 jmp SHORT $LN1@glfwGetIns $LN4@glfwGetIns: ; 262 : ; 263 : proc = (GLFWvkproc) vkGetInstanceProcAddr(instance, procname); 00095 48 8b 95 08 01 00 00 mov rdx, QWORD PTR procname$[rbp] 0009c 48 8b 8d 00 01 00 00 mov rcx, QWORD PTR instance$[rbp] 000a3 ff 15 40 1b 00 00 call QWORD PTR _glfw+6976 000a9 48 89 45 08 mov QWORD PTR proc$[rbp], rax ; 264 : if (!proc) 000ad 48 83 7d 08 00 cmp QWORD PTR proc$[rbp], 0 000b2 75 21 jne SHORT $LN5@glfwGetIns ; 265 : { ; 266 : if (_glfw.vk.handle) 000b4 48 83 3d 28 1b 00 00 00 cmp QWORD PTR _glfw+6952, 0 000bc 74 17 je SHORT $LN6@glfwGetIns ; 267 : proc = (GLFWvkproc) _glfwPlatformGetModuleSymbol(_glfw.vk.handle, procname); 000be 48 8b 95 08 01 00 00 mov rdx, QWORD PTR procname$[rbp] 000c5 48 8b 0d 28 1b 00 00 mov rcx, QWORD PTR _glfw+6952 000cc e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 000d1 48 89 45 08 mov QWORD PTR proc$[rbp], rax $LN6@glfwGetIns: $LN5@glfwGetIns: ; 268 : } ; 269 : ; 270 : return proc; 000d5 48 8b 45 08 mov rax, QWORD PTR proc$[rbp] $LN1@glfwGetIns: ; 271 : } 000d9 48 8d a5 e8 00 00 00 lea rsp, QWORD PTR [rbp+232] 000e0 5f pop rdi 000e1 5d pop rbp 000e2 c3 ret 0 glfwGetInstanceProcAddress ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\vulkan.c ; COMDAT _glfwGetVulkanResultString _TEXT SEGMENT tv64 = 192 result$ = 240 _glfwGetVulkanResultString PROC ; COMDAT ; 165 : { $LN32: 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00004 55 push rbp 00005 57 push rdi 00006 48 81 ec f8 00 00 00 sub rsp, 248 ; 000000f8H 0000d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00012 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__1388D7B6_vulkan@c 00019 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 166 : switch (result) 0001e 8b 85 f0 00 00 00 mov eax, DWORD PTR result$[rbp] 00024 89 85 c0 00 00 00 mov DWORD PTR tv64[rbp], eax 0002a 83 bd c0 00 00 00 f5 cmp DWORD PTR tv64[rbp], -11 00031 7f 62 jg SHORT $LN29@glfwGetVul 00033 83 bd c0 00 00 00 f5 cmp DWORD PTR tv64[rbp], -11 0003a 0f 84 57 01 00 00 je $LN20@glfwGetVul 00040 81 bd c0 00 00 00 07 0b 65 c4 cmp DWORD PTR tv64[rbp], -1000011001 ; ffffffffc4650b07H 0004a 0f 84 7d 01 00 00 je $LN26@glfwGetVul 00050 81 bd c0 00 00 00 47 2a 65 c4 cmp DWORD PTR tv64[rbp], -1000003001 ; ffffffffc4652a47H 0005a 0f 84 5b 01 00 00 je $LN24@glfwGetVul 00060 81 bd c0 00 00 00 14 32 65 c4 cmp DWORD PTR tv64[rbp], -1000001004 ; ffffffffc4653214H 0006a 0f 84 42 01 00 00 je $LN23@glfwGetVul 00070 81 bd c0 00 00 00 ff 35 65 c4 cmp DWORD PTR tv64[rbp], -1000000001 ; ffffffffc46535ffH 0007a 0f 84 44 01 00 00 je $LN25@glfwGetVul 00080 81 bd c0 00 00 00 00 36 65 c4 cmp DWORD PTR tv64[rbp], -1000000000 ; ffffffffc4653600H 0008a 0f 84 10 01 00 00 je $LN21@glfwGetVul 00090 e9 41 01 00 00 jmp $LN27@glfwGetVul $LN29@glfwGetVul: 00095 81 bd c0 00 00 00 eb cd 9a 3b cmp DWORD PTR tv64[rbp], 1000001003 ; 3b9acdebH 0009f 7f 46 jg SHORT $LN30@glfwGetVul 000a1 81 bd c0 00 00 00 eb cd 9a 3b cmp DWORD PTR tv64[rbp], 1000001003 ; 3b9acdebH 000ab 0f 84 f8 00 00 00 je $LN22@glfwGetVul 000b1 8b 85 c0 00 00 00 mov eax, DWORD PTR tv64[rbp] 000b7 83 c0 0a add eax, 10 000ba 89 85 c0 00 00 00 mov DWORD PTR tv64[rbp], eax 000c0 83 bd c0 00 00 00 0f cmp DWORD PTR tv64[rbp], 15 000c7 0f 87 09 01 00 00 ja $LN27@glfwGetVul 000cd 48 63 85 c0 00 00 00 movsxd rax, DWORD PTR tv64[rbp] 000d4 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__ImageBase 000db 8b 84 81 00 00 00 00 mov eax, DWORD PTR $LN31@glfwGetVul[rcx+rax*4] 000e2 48 03 c1 add rax, rcx 000e5 ff e0 jmp rax $LN30@glfwGetVul: 000e7 e9 ea 00 00 00 jmp $LN27@glfwGetVul $LN4@glfwGetVul: ; 167 : { ; 168 : case VK_SUCCESS: ; 169 : return "Success"; 000ec 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_07PBILKAFL@Success@ 000f3 e9 e5 00 00 00 jmp $LN1@glfwGetVul $LN5@glfwGetVul: ; 170 : case VK_NOT_READY: ; 171 : return "A fence or query has not yet completed"; 000f8 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0CH@GBHCOIGC@A?5fence?5or?5query?5has?5not?5yet?5co@ 000ff e9 d9 00 00 00 jmp $LN1@glfwGetVul $LN6@glfwGetVul: ; 172 : case VK_TIMEOUT: ; 173 : return "A wait operation has not completed in the specified time"; 00104 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0DJ@KAONABFK@A?5wait?5operation?5has?5not?5comple@ 0010b e9 cd 00 00 00 jmp $LN1@glfwGetVul $LN7@glfwGetVul: ; 174 : case VK_EVENT_SET: ; 175 : return "An event is signaled"; 00110 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0BF@NEMNBLEB@An?5event?5is?5signaled@ 00117 e9 c1 00 00 00 jmp $LN1@glfwGetVul $LN8@glfwGetVul: ; 176 : case VK_EVENT_RESET: ; 177 : return "An event is unsignaled"; 0011c 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0BH@MDCGBFEN@An?5event?5is?5unsignaled@ 00123 e9 b5 00 00 00 jmp $LN1@glfwGetVul $LN9@glfwGetVul: ; 178 : case VK_INCOMPLETE: ; 179 : return "A return array was too small for the result"; 00128 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0CM@GKIHKJDL@A?5return?5array?5was?5too?5small?5fo@ 0012f e9 a9 00 00 00 jmp $LN1@glfwGetVul $LN10@glfwGetVul: ; 180 : case VK_ERROR_OUT_OF_HOST_MEMORY: ; 181 : return "A host memory allocation has failed"; 00134 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0CE@HKNBGEPI@A?5host?5memory?5allocation?5has?5fa@ 0013b e9 9d 00 00 00 jmp $LN1@glfwGetVul $LN11@glfwGetVul: ; 182 : case VK_ERROR_OUT_OF_DEVICE_MEMORY: ; 183 : return "A device memory allocation has failed"; 00140 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0CG@CHEOMKGJ@A?5device?5memory?5allocation?5has?5@ 00147 e9 91 00 00 00 jmp $LN1@glfwGetVul $LN12@glfwGetVul: ; 184 : case VK_ERROR_INITIALIZATION_FAILED: ; 185 : return "Initialization of an object could not be completed for implementation-specific reasons"; 0014c 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0FH@MCDKNJAI@Initialization?5of?5an?5object?5cou@ 00153 e9 85 00 00 00 jmp $LN1@glfwGetVul $LN13@glfwGetVul: ; 186 : case VK_ERROR_DEVICE_LOST: ; 187 : return "The logical or physical device has been lost"; 00158 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0CN@IHJGMBHI@The?5logical?5or?5physical?5device?5@ 0015f eb 7c jmp SHORT $LN1@glfwGetVul $LN14@glfwGetVul: ; 188 : case VK_ERROR_MEMORY_MAP_FAILED: ; 189 : return "Mapping of a memory object has failed"; 00161 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0CG@CHGOPGBD@Mapping?5of?5a?5memory?5object?5has?5@ 00168 eb 73 jmp SHORT $LN1@glfwGetVul $LN15@glfwGetVul: ; 190 : case VK_ERROR_LAYER_NOT_PRESENT: ; 191 : return "A requested layer is not present or could not be loaded"; 0016a 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0DI@GNLCAHHB@A?5requested?5layer?5is?5not?5presen@ 00171 eb 6a jmp SHORT $LN1@glfwGetVul $LN16@glfwGetVul: ; 192 : case VK_ERROR_EXTENSION_NOT_PRESENT: ; 193 : return "A requested extension is not supported"; 00173 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0CH@NEGEBDM@A?5requested?5extension?5is?5not?5su@ 0017a eb 61 jmp SHORT $LN1@glfwGetVul $LN17@glfwGetVul: ; 194 : case VK_ERROR_FEATURE_NOT_PRESENT: ; 195 : return "A requested feature is not supported"; 0017c 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0CF@OFADCJLJ@A?5requested?5feature?5is?5not?5supp@ 00183 eb 58 jmp SHORT $LN1@glfwGetVul $LN18@glfwGetVul: ; 196 : case VK_ERROR_INCOMPATIBLE_DRIVER: ; 197 : return "The requested version of Vulkan is not supported by the driver or is otherwise incompatible"; 00185 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0FM@BBONGFMN@The?5requested?5version?5of?5Vulkan@ 0018c eb 4f jmp SHORT $LN1@glfwGetVul $LN19@glfwGetVul: ; 198 : case VK_ERROR_TOO_MANY_OBJECTS: ; 199 : return "Too many objects of the type have already been created"; 0018e 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0DH@EKEHMEFD@Too?5many?5objects?5of?5the?5type?5ha@ 00195 eb 46 jmp SHORT $LN1@glfwGetVul $LN20@glfwGetVul: ; 200 : case VK_ERROR_FORMAT_NOT_SUPPORTED: ; 201 : return "A requested format is not supported on this device"; 00197 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0DD@OOKDLCED@A?5requested?5format?5is?5not?5suppo@ 0019e eb 3d jmp SHORT $LN1@glfwGetVul $LN21@glfwGetVul: ; 202 : case VK_ERROR_SURFACE_LOST_KHR: ; 203 : return "A surface is no longer available"; 001a0 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0CB@EJFBPGFM@A?5surface?5is?5no?5longer?5availabl@ 001a7 eb 34 jmp SHORT $LN1@glfwGetVul $LN22@glfwGetVul: ; 204 : case VK_SUBOPTIMAL_KHR: ; 205 : return "A swapchain no longer matches the surface properties exactly, but can still be used"; 001a9 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0FE@ILJLDKCD@A?5swapchain?5no?5longer?5matches?5t@ 001b0 eb 2b jmp SHORT $LN1@glfwGetVul $LN23@glfwGetVul: ; 206 : case VK_ERROR_OUT_OF_DATE_KHR: ; 207 : return "A surface has changed in such a way that it is no longer compatible with the swapchain"; 001b2 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0FH@FIPMKLID@A?5surface?5has?5changed?5in?5such?5a@ 001b9 eb 22 jmp SHORT $LN1@glfwGetVul $LN24@glfwGetVul: ; 208 : case VK_ERROR_INCOMPATIBLE_DISPLAY_KHR: ; 209 : return "The display used by a swapchain does not use the same presentable image layout"; 001bb 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0EP@OJIEDFOO@The?5display?5used?5by?5a?5swapchain@ 001c2 eb 19 jmp SHORT $LN1@glfwGetVul $LN25@glfwGetVul: ; 210 : case VK_ERROR_NATIVE_WINDOW_IN_USE_KHR: ; 211 : return "The requested window is already connected to a VkSurfaceKHR, or to some other non-Vulkan API"; 001c4 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0FN@PJBCJBIL@The?5requested?5window?5is?5already@ 001cb eb 10 jmp SHORT $LN1@glfwGetVul $LN26@glfwGetVul: ; 212 : case VK_ERROR_VALIDATION_FAILED_EXT: ; 213 : return "A validation layer found an error"; 001cd 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0CC@HDNEDJNI@A?5validation?5layer?5found?5an?5err@ 001d4 eb 07 jmp SHORT $LN1@glfwGetVul $LN27@glfwGetVul: ; 214 : default: ; 215 : return "ERROR: UNKNOWN VULKAN ERROR"; 001d6 48 8d 05 00 00 00 00 lea rax, OFFSET FLAT:??_C@_0BM@OMEGJAIK@ERROR?3?5UNKNOWN?5VULKAN?5ERROR@ $LN1@glfwGetVul: ; 216 : } ; 217 : } 001dd 48 8d a5 d8 00 00 00 lea rsp, QWORD PTR [rbp+216] 001e4 5f pop rdi 001e5 5d pop rbp 001e6 c3 ret 0 001e7 90 npad 1 $LN31@glfwGetVul: 001e8 00 00 00 00 DD $LN19@glfwGetVul 001ec 00 00 00 00 DD $LN18@glfwGetVul 001f0 00 00 00 00 DD $LN17@glfwGetVul 001f4 00 00 00 00 DD $LN16@glfwGetVul 001f8 00 00 00 00 DD $LN15@glfwGetVul 001fc 00 00 00 00 DD $LN14@glfwGetVul 00200 00 00 00 00 DD $LN13@glfwGetVul 00204 00 00 00 00 DD $LN12@glfwGetVul 00208 00 00 00 00 DD $LN11@glfwGetVul 0020c 00 00 00 00 DD $LN10@glfwGetVul 00210 00 00 00 00 DD $LN4@glfwGetVul 00214 00 00 00 00 DD $LN5@glfwGetVul 00218 00 00 00 00 DD $LN6@glfwGetVul 0021c 00 00 00 00 DD $LN7@glfwGetVul 00220 00 00 00 00 DD $LN8@glfwGetVul 00224 00 00 00 00 DD $LN9@glfwGetVul _glfwGetVulkanResultString ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\vulkan.c ; COMDAT _glfwTerminateVulkan _TEXT SEGMENT _glfwTerminateVulkan PROC ; COMDAT ; 159 : { $LN4: 00000 40 55 push rbp 00002 57 push rdi 00003 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0000f 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__1388D7B6_vulkan@c 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 160 : if (_glfw.vk.handle) 0001b 48 83 3d 28 1b 00 00 00 cmp QWORD PTR _glfw+6952, 0 00023 74 0c je SHORT $LN2@glfwTermin ; 161 : _glfwPlatformFreeModule(_glfw.vk.handle); 00025 48 8b 0d 28 1b 00 00 mov rcx, QWORD PTR _glfw+6952 0002c e8 00 00 00 00 call _glfwPlatformFreeModule $LN2@glfwTermin: ; 162 : } 00031 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00038 5f pop rdi 00039 5d pop rbp 0003a c3 ret 0 _glfwTerminateVulkan ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\vulkan.c ; COMDAT _glfwInitVulkan _TEXT SEGMENT err$ = 4 ep$ = 40 vkEnumerateInstanceExtensionProperties$ = 72 i$ = 100 count$ = 132 __$ArrayPad$ = 344 mode$ = 384 _glfwInitVulkan PROC ; COMDAT ; 45 : { $LN29: 00000 89 4c 24 08 mov DWORD PTR [rsp+8], ecx 00004 55 push rbp 00005 57 push rdi 00006 48 81 ec 88 01 00 00 sub rsp, 392 ; 00000188H 0000d 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00012 48 8d 7c 24 20 lea rdi, QWORD PTR [rsp+32] 00017 b9 2a 00 00 00 mov ecx, 42 ; 0000002aH 0001c b8 cc cc cc cc mov eax, -858993460 ; ccccccccH 00021 f3 ab rep stosd 00023 8b 8c 24 a8 01 00 00 mov ecx, DWORD PTR [rsp+424] 0002a 48 8b 05 00 00 00 00 mov rax, QWORD PTR __security_cookie 00031 48 33 c5 xor rax, rbp 00034 48 89 85 58 01 00 00 mov QWORD PTR __$ArrayPad$[rbp], rax 0003b 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__1388D7B6_vulkan@c 00042 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 46 : VkResult err; ; 47 : VkExtensionProperties* ep; ; 48 : PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties; ; 49 : uint32_t i, count; ; 50 : ; 51 : if (_glfw.vk.available) 00047 83 3d 20 1b 00 00 00 cmp DWORD PTR _glfw+6944, 0 0004e 74 0a je SHORT $LN5@glfwInitVu ; 52 : return GLFW_TRUE; 00050 b8 01 00 00 00 mov eax, 1 00055 e9 32 03 00 00 jmp $LN1@glfwInitVu $LN5@glfwInitVu: ; 53 : ; 54 : if (_glfw.hints.init.vulkanLoader) 0005a 48 83 3d 78 02 00 00 00 cmp QWORD PTR _glfw+632, 0 00062 74 10 je SHORT $LN6@glfwInitVu ; 55 : _glfw.vk.GetInstanceProcAddr = _glfw.hints.init.vulkanLoader; 00064 48 8b 05 78 02 00 00 mov rax, QWORD PTR _glfw+632 0006b 48 89 05 40 1b 00 00 mov QWORD PTR _glfw+6976, rax 00072 eb 7f jmp SHORT $LN7@glfwInitVu $LN6@glfwInitVu: ; 56 : else ; 57 : { ; 58 : #if defined(_GLFW_VULKAN_LIBRARY) ; 59 : _glfw.vk.handle = _glfwPlatformLoadModule(_GLFW_VULKAN_LIBRARY); ; 60 : #elif defined(_GLFW_WIN32) ; 61 : _glfw.vk.handle = _glfwPlatformLoadModule("vulkan-1.dll"); 00074 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_0N@IILPFLFM@vulkan?91?4dll@ 0007b e8 00 00 00 00 call _glfwPlatformLoadModule 00080 48 89 05 28 1b 00 00 mov QWORD PTR _glfw+6952, rax ; 62 : #elif defined(_GLFW_COCOA) ; 63 : _glfw.vk.handle = _glfwPlatformLoadModule("libvulkan.1.dylib"); ; 64 : if (!_glfw.vk.handle) ; 65 : _glfw.vk.handle = _glfwLoadLocalVulkanLoaderCocoa(); ; 66 : #elif defined(__OpenBSD__) || defined(__NetBSD__) ; 67 : _glfw.vk.handle = _glfwPlatformLoadModule("libvulkan.so"); ; 68 : #else ; 69 : _glfw.vk.handle = _glfwPlatformLoadModule("libvulkan.so.1"); ; 70 : #endif ; 71 : if (!_glfw.vk.handle) 00087 48 83 3d 28 1b 00 00 00 cmp QWORD PTR _glfw+6952, 0 0008f 75 21 jne SHORT $LN8@glfwInitVu ; 72 : { ; 73 : if (mode == _GLFW_REQUIRE_LOADER) 00091 83 bd 80 01 00 00 02 cmp DWORD PTR mode$[rbp], 2 00098 75 11 jne SHORT $LN9@glfwInitVu ; 74 : _glfwInputError(GLFW_API_UNAVAILABLE, "Vulkan: Loader not found"); 0009a 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BJ@PGPMJKGJ@Vulkan?3?5Loader?5not?5found@ 000a1 b9 06 00 01 00 mov ecx, 65542 ; 00010006H 000a6 e8 00 00 00 00 call _glfwInputError $LN9@glfwInitVu: ; 75 : ; 76 : return GLFW_FALSE; 000ab 33 c0 xor eax, eax 000ad e9 da 02 00 00 jmp $LN1@glfwInitVu $LN8@glfwInitVu: ; 77 : } ; 78 : ; 79 : _glfw.vk.GetInstanceProcAddr = (PFN_vkGetInstanceProcAddr) 000b2 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BG@HBCIDECD@vkGetInstanceProcAddr@ 000b9 48 8b 0d 28 1b 00 00 mov rcx, QWORD PTR _glfw+6952 000c0 e8 00 00 00 00 call _glfwPlatformGetModuleSymbol 000c5 48 89 05 40 1b 00 00 mov QWORD PTR _glfw+6976, rax ; 80 : _glfwPlatformGetModuleSymbol(_glfw.vk.handle, "vkGetInstanceProcAddr"); ; 81 : if (!_glfw.vk.GetInstanceProcAddr) 000cc 48 83 3d 40 1b 00 00 00 cmp QWORD PTR _glfw+6976, 0 000d4 75 1d jne SHORT $LN10@glfwInitVu ; 82 : { ; 83 : _glfwInputError(GLFW_API_UNAVAILABLE, 000d6 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0DF@FEPNJFGL@Vulkan?3?5Loader?5does?5not?5export?5@ 000dd b9 06 00 01 00 mov ecx, 65542 ; 00010006H 000e2 e8 00 00 00 00 call _glfwInputError ; 84 : "Vulkan: Loader does not export vkGetInstanceProcAddr"); ; 85 : ; 86 : _glfwTerminateVulkan(); 000e7 e8 00 00 00 00 call _glfwTerminateVulkan ; 87 : return GLFW_FALSE; 000ec 33 c0 xor eax, eax 000ee e9 99 02 00 00 jmp $LN1@glfwInitVu $LN10@glfwInitVu: $LN7@glfwInitVu: ; 88 : } ; 89 : } ; 90 : ; 91 : vkEnumerateInstanceExtensionProperties = (PFN_vkEnumerateInstanceExtensionProperties) 000f3 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0CH@DNHGEPME@vkEnumerateInstanceExtensionPro@ 000fa 33 c9 xor ecx, ecx 000fc ff 15 40 1b 00 00 call QWORD PTR _glfw+6976 00102 48 89 45 48 mov QWORD PTR vkEnumerateInstanceExtensionProperties$[rbp], rax ; 92 : vkGetInstanceProcAddr(NULL, "vkEnumerateInstanceExtensionProperties"); ; 93 : if (!vkEnumerateInstanceExtensionProperties) 00106 48 83 7d 48 00 cmp QWORD PTR vkEnumerateInstanceExtensionProperties$[rbp], 0 0010b 75 1d jne SHORT $LN11@glfwInitVu ; 94 : { ; 95 : _glfwInputError(GLFW_API_UNAVAILABLE, 0010d 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0EC@MCALKGHI@Vulkan?3?5Failed?5to?5retrieve?5vkEn@ 00114 b9 06 00 01 00 mov ecx, 65542 ; 00010006H 00119 e8 00 00 00 00 call _glfwInputError ; 96 : "Vulkan: Failed to retrieve vkEnumerateInstanceExtensionProperties"); ; 97 : ; 98 : _glfwTerminateVulkan(); 0011e e8 00 00 00 00 call _glfwTerminateVulkan ; 99 : return GLFW_FALSE; 00123 33 c0 xor eax, eax 00125 e9 62 02 00 00 jmp $LN1@glfwInitVu $LN11@glfwInitVu: ; 100 : } ; 101 : ; 102 : err = vkEnumerateInstanceExtensionProperties(NULL, &count, NULL); 0012a 45 33 c0 xor r8d, r8d 0012d 48 8d 95 84 00 00 00 lea rdx, QWORD PTR count$[rbp] 00134 33 c9 xor ecx, ecx 00136 ff 55 48 call QWORD PTR vkEnumerateInstanceExtensionProperties$[rbp] 00139 89 45 04 mov DWORD PTR err$[rbp], eax ; 103 : if (err) 0013c 83 7d 04 00 cmp DWORD PTR err$[rbp], 0 00140 74 31 je SHORT $LN12@glfwInitVu ; 104 : { ; 105 : // NOTE: This happens on systems with a loader but without any Vulkan ICD ; 106 : if (mode == _GLFW_REQUIRE_LOADER) 00142 83 bd 80 01 00 00 02 cmp DWORD PTR mode$[rbp], 2 00149 75 1c jne SHORT $LN13@glfwInitVu ; 107 : { ; 108 : _glfwInputError(GLFW_API_UNAVAILABLE, 0014b 8b 4d 04 mov ecx, DWORD PTR err$[rbp] 0014e e8 00 00 00 00 call _glfwGetVulkanResultString 00153 4c 8b c0 mov r8, rax 00156 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0DF@KADNFCFI@Vulkan?3?5Failed?5to?5query?5instanc@ 0015d b9 06 00 01 00 mov ecx, 65542 ; 00010006H 00162 e8 00 00 00 00 call _glfwInputError $LN13@glfwInitVu: ; 109 : "Vulkan: Failed to query instance extension count: %s", ; 110 : _glfwGetVulkanResultString(err)); ; 111 : } ; 112 : ; 113 : _glfwTerminateVulkan(); 00167 e8 00 00 00 00 call _glfwTerminateVulkan ; 114 : return GLFW_FALSE; 0016c 33 c0 xor eax, eax 0016e e9 19 02 00 00 jmp $LN1@glfwInitVu $LN12@glfwInitVu: ; 115 : } ; 116 : ; 117 : ep = _glfw_calloc(count, sizeof(VkExtensionProperties)); 00173 8b 85 84 00 00 00 mov eax, DWORD PTR count$[rbp] 00179 ba 04 01 00 00 mov edx, 260 ; 00000104H 0017e 8b c8 mov ecx, eax 00180 e8 00 00 00 00 call _glfw_calloc 00185 48 89 45 28 mov QWORD PTR ep$[rbp], rax ; 118 : ; 119 : err = vkEnumerateInstanceExtensionProperties(NULL, &count, ep); 00189 4c 8b 45 28 mov r8, QWORD PTR ep$[rbp] 0018d 48 8d 95 84 00 00 00 lea rdx, QWORD PTR count$[rbp] 00194 33 c9 xor ecx, ecx 00196 ff 55 48 call QWORD PTR vkEnumerateInstanceExtensionProperties$[rbp] 00199 89 45 04 mov DWORD PTR err$[rbp], eax ; 120 : if (err) 0019c 83 7d 04 00 cmp DWORD PTR err$[rbp], 0 001a0 74 31 je SHORT $LN14@glfwInitVu ; 121 : { ; 122 : _glfwInputError(GLFW_API_UNAVAILABLE, 001a2 8b 4d 04 mov ecx, DWORD PTR err$[rbp] 001a5 e8 00 00 00 00 call _glfwGetVulkanResultString 001aa 4c 8b c0 mov r8, rax 001ad 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0DA@LIIDOJC@Vulkan?3?5Failed?5to?5query?5instanc@ 001b4 b9 06 00 01 00 mov ecx, 65542 ; 00010006H 001b9 e8 00 00 00 00 call _glfwInputError ; 123 : "Vulkan: Failed to query instance extensions: %s", ; 124 : _glfwGetVulkanResultString(err)); ; 125 : ; 126 : _glfw_free(ep); 001be 48 8b 4d 28 mov rcx, QWORD PTR ep$[rbp] 001c2 e8 00 00 00 00 call _glfw_free ; 127 : _glfwTerminateVulkan(); 001c7 e8 00 00 00 00 call _glfwTerminateVulkan ; 128 : return GLFW_FALSE; 001cc 33 c0 xor eax, eax 001ce e9 b9 01 00 00 jmp $LN1@glfwInitVu $LN14@glfwInitVu: ; 129 : } ; 130 : ; 131 : for (i = 0; i < count; i++) 001d3 c7 45 64 00 00 00 00 mov DWORD PTR i$[rbp], 0 001da eb 08 jmp SHORT $LN4@glfwInitVu $LN2@glfwInitVu: 001dc 8b 45 64 mov eax, DWORD PTR i$[rbp] 001df ff c0 inc eax 001e1 89 45 64 mov DWORD PTR i$[rbp], eax $LN4@glfwInitVu: 001e4 8b 85 84 00 00 00 mov eax, DWORD PTR count$[rbp] 001ea 39 45 64 cmp DWORD PTR i$[rbp], eax 001ed 0f 83 74 01 00 00 jae $LN3@glfwInitVu ; 132 : { ; 133 : if (strcmp(ep[i].extensionName, "VK_KHR_surface") == 0) 001f3 8b 45 64 mov eax, DWORD PTR i$[rbp] 001f6 48 69 c0 04 01 00 00 imul rax, rax, 260 ; 00000104H 001fd 48 8b 4d 28 mov rcx, QWORD PTR ep$[rbp] 00201 48 03 c8 add rcx, rax 00204 48 8b c1 mov rax, rcx 00207 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0P@IENCOMCD@VK_KHR_surface@ 0020e 48 8b c8 mov rcx, rax 00211 e8 00 00 00 00 call strcmp 00216 85 c0 test eax, eax 00218 75 0f jne SHORT $LN15@glfwInitVu ; 134 : _glfw.vk.KHR_surface = GLFW_TRUE; 0021a c7 05 48 1b 00 00 01 00 00 00 mov DWORD PTR _glfw+6984, 1 00224 e9 39 01 00 00 jmp $LN16@glfwInitVu $LN15@glfwInitVu: ; 135 : else if (strcmp(ep[i].extensionName, "VK_KHR_win32_surface") == 0) 00229 8b 45 64 mov eax, DWORD PTR i$[rbp] 0022c 48 69 c0 04 01 00 00 imul rax, rax, 260 ; 00000104H 00233 48 8b 4d 28 mov rcx, QWORD PTR ep$[rbp] 00237 48 03 c8 add rcx, rax 0023a 48 8b c1 mov rax, rcx 0023d 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BF@COCMEDFO@VK_KHR_win32_surface@ 00244 48 8b c8 mov rcx, rax 00247 e8 00 00 00 00 call strcmp 0024c 85 c0 test eax, eax 0024e 75 0f jne SHORT $LN17@glfwInitVu ; 136 : _glfw.vk.KHR_win32_surface = GLFW_TRUE; 00250 c7 05 4c 1b 00 00 01 00 00 00 mov DWORD PTR _glfw+6988, 1 0025a e9 03 01 00 00 jmp $LN18@glfwInitVu $LN17@glfwInitVu: ; 137 : else if (strcmp(ep[i].extensionName, "VK_MVK_macos_surface") == 0) 0025f 8b 45 64 mov eax, DWORD PTR i$[rbp] 00262 48 69 c0 04 01 00 00 imul rax, rax, 260 ; 00000104H 00269 48 8b 4d 28 mov rcx, QWORD PTR ep$[rbp] 0026d 48 03 c8 add rcx, rax 00270 48 8b c1 mov rax, rcx 00273 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BF@DOIMLJHJ@VK_MVK_macos_surface@ 0027a 48 8b c8 mov rcx, rax 0027d e8 00 00 00 00 call strcmp 00282 85 c0 test eax, eax 00284 75 0f jne SHORT $LN19@glfwInitVu ; 138 : _glfw.vk.MVK_macos_surface = GLFW_TRUE; 00286 c7 05 50 1b 00 00 01 00 00 00 mov DWORD PTR _glfw+6992, 1 00290 e9 cd 00 00 00 jmp $LN20@glfwInitVu $LN19@glfwInitVu: ; 139 : else if (strcmp(ep[i].extensionName, "VK_EXT_metal_surface") == 0) 00295 8b 45 64 mov eax, DWORD PTR i$[rbp] 00298 48 69 c0 04 01 00 00 imul rax, rax, 260 ; 00000104H 0029f 48 8b 4d 28 mov rcx, QWORD PTR ep$[rbp] 002a3 48 03 c8 add rcx, rax 002a6 48 8b c1 mov rax, rcx 002a9 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BF@DMNOCJMB@VK_EXT_metal_surface@ 002b0 48 8b c8 mov rcx, rax 002b3 e8 00 00 00 00 call strcmp 002b8 85 c0 test eax, eax 002ba 75 0f jne SHORT $LN21@glfwInitVu ; 140 : _glfw.vk.EXT_metal_surface = GLFW_TRUE; 002bc c7 05 54 1b 00 00 01 00 00 00 mov DWORD PTR _glfw+6996, 1 002c6 e9 97 00 00 00 jmp $LN22@glfwInitVu $LN21@glfwInitVu: ; 141 : else if (strcmp(ep[i].extensionName, "VK_KHR_xlib_surface") == 0) 002cb 8b 45 64 mov eax, DWORD PTR i$[rbp] 002ce 48 69 c0 04 01 00 00 imul rax, rax, 260 ; 00000104H 002d5 48 8b 4d 28 mov rcx, QWORD PTR ep$[rbp] 002d9 48 03 c8 add rcx, rax 002dc 48 8b c1 mov rax, rcx 002df 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BE@EFOBHOAB@VK_KHR_xlib_surface@ 002e6 48 8b c8 mov rcx, rax 002e9 e8 00 00 00 00 call strcmp 002ee 85 c0 test eax, eax 002f0 75 0c jne SHORT $LN23@glfwInitVu ; 142 : _glfw.vk.KHR_xlib_surface = GLFW_TRUE; 002f2 c7 05 58 1b 00 00 01 00 00 00 mov DWORD PTR _glfw+7000, 1 002fc eb 64 jmp SHORT $LN24@glfwInitVu $LN23@glfwInitVu: ; 143 : else if (strcmp(ep[i].extensionName, "VK_KHR_xcb_surface") == 0) 002fe 8b 45 64 mov eax, DWORD PTR i$[rbp] 00301 48 69 c0 04 01 00 00 imul rax, rax, 260 ; 00000104H 00308 48 8b 4d 28 mov rcx, QWORD PTR ep$[rbp] 0030c 48 03 c8 add rcx, rax 0030f 48 8b c1 mov rax, rcx 00312 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BD@DKPJMBMG@VK_KHR_xcb_surface@ 00319 48 8b c8 mov rcx, rax 0031c e8 00 00 00 00 call strcmp 00321 85 c0 test eax, eax 00323 75 0c jne SHORT $LN25@glfwInitVu ; 144 : _glfw.vk.KHR_xcb_surface = GLFW_TRUE; 00325 c7 05 5c 1b 00 00 01 00 00 00 mov DWORD PTR _glfw+7004, 1 0032f eb 31 jmp SHORT $LN26@glfwInitVu $LN25@glfwInitVu: ; 145 : else if (strcmp(ep[i].extensionName, "VK_KHR_wayland_surface") == 0) 00331 8b 45 64 mov eax, DWORD PTR i$[rbp] 00334 48 69 c0 04 01 00 00 imul rax, rax, 260 ; 00000104H 0033b 48 8b 4d 28 mov rcx, QWORD PTR ep$[rbp] 0033f 48 03 c8 add rcx, rax 00342 48 8b c1 mov rax, rcx 00345 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_0BH@FDAKHMHL@VK_KHR_wayland_surface@ 0034c 48 8b c8 mov rcx, rax 0034f e8 00 00 00 00 call strcmp 00354 85 c0 test eax, eax 00356 75 0a jne SHORT $LN27@glfwInitVu ; 146 : _glfw.vk.KHR_wayland_surface = GLFW_TRUE; 00358 c7 05 60 1b 00 00 01 00 00 00 mov DWORD PTR _glfw+7008, 1 $LN27@glfwInitVu: $LN26@glfwInitVu: $LN24@glfwInitVu: $LN22@glfwInitVu: $LN20@glfwInitVu: $LN18@glfwInitVu: $LN16@glfwInitVu: ; 147 : } 00362 e9 75 fe ff ff jmp $LN2@glfwInitVu $LN3@glfwInitVu: ; 148 : ; 149 : _glfw_free(ep); 00367 48 8b 4d 28 mov rcx, QWORD PTR ep$[rbp] 0036b e8 00 00 00 00 call _glfw_free ; 150 : ; 151 : _glfw.vk.available = GLFW_TRUE; 00370 c7 05 20 1b 00 00 01 00 00 00 mov DWORD PTR _glfw+6944, 1 ; 152 : ; 153 : _glfw.platform.getRequiredInstanceExtensions(_glfw.vk.extensions); 0037a 48 8d 0d 30 1b 00 00 lea rcx, OFFSET FLAT:_glfw+6960 00381 ff 15 50 02 00 00 call QWORD PTR _glfw+592 ; 154 : ; 155 : return GLFW_TRUE; 00387 b8 01 00 00 00 mov eax, 1 $LN1@glfwInitVu: ; 156 : } 0038c 48 8b f8 mov rdi, rax 0038f 48 8d 4d e0 lea rcx, QWORD PTR [rbp-32] 00393 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:_glfwInitVulkan$rtcFrameData 0039a e8 00 00 00 00 call _RTC_CheckStackVars 0039f 48 8b c7 mov rax, rdi 003a2 48 8b 8d 58 01 00 00 mov rcx, QWORD PTR __$ArrayPad$[rbp] 003a9 48 33 cd xor rcx, rbp 003ac e8 00 00 00 00 call __security_check_cookie 003b1 48 8d a5 68 01 00 00 lea rsp, QWORD PTR [rbp+360] 003b8 5f pop rdi 003b9 5d pop rbp 003ba c3 ret 0 _glfwInitVulkan ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\vulkan.c ; COMDAT glfwGetRequiredInstanceExtensions _TEXT SEGMENT count$ = 224 glfwGetRequiredInstanceExtensions PROC ; COMDAT ; 231 : { $LN7: 00000 48 89 4c 24 08 mov QWORD PTR [rsp+8], rcx 00005 55 push rbp 00006 57 push rdi 00007 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 0000e 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 00013 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__1388D7B6_vulkan@c 0001a e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 232 : assert(count != NULL); 0001f 48 83 bd e0 00 00 00 00 cmp QWORD PTR count$[rbp], 0 00027 75 1c jne SHORT $LN6@glfwGetReq 00029 41 b8 e8 00 00 00 mov r8d, 232 ; 000000e8H 0002f 48 8d 15 00 00 00 00 lea rdx, OFFSET FLAT:??_C@_1LK@KEODBGDG@?$AAD?$AA?3?$AA?2?$AAN?$AAi?$AAt?$AAl?$AAo?$AAa?$AAd?$AAI?$AAn?$AAd?$AAu?$AAs@ 00036 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:??_C@_1BM@HDJLENFO@?$AAc?$AAo?$AAu?$AAn?$AAt?$AA?5?$AA?$CB?$AA?$DN?$AA?5?$AAN?$AAU?$AAL?$AAL@ 0003d ff 15 00 00 00 00 call QWORD PTR __imp__wassert 00043 33 c0 xor eax, eax $LN6@glfwGetReq: ; 233 : ; 234 : *count = 0; 00045 48 8b 85 e0 00 00 00 mov rax, QWORD PTR count$[rbp] 0004c c7 00 00 00 00 00 mov DWORD PTR [rax], 0 ; 235 : ; 236 : _GLFW_REQUIRE_INIT_OR_RETURN(NULL); 00052 83 3d 00 00 00 00 00 cmp DWORD PTR _glfw, 0 00059 75 10 jne SHORT $LN2@glfwGetReq 0005b 33 d2 xor edx, edx 0005d b9 01 00 01 00 mov ecx, 65537 ; 00010001H 00062 e8 00 00 00 00 call _glfwInputError 00067 33 c0 xor eax, eax 00069 eb 41 jmp SHORT $LN1@glfwGetReq $LN2@glfwGetReq: ; 237 : ; 238 : if (!_glfwInitVulkan(_GLFW_REQUIRE_LOADER)) 0006b b9 02 00 00 00 mov ecx, 2 00070 e8 00 00 00 00 call _glfwInitVulkan 00075 85 c0 test eax, eax 00077 75 04 jne SHORT $LN3@glfwGetReq ; 239 : return NULL; 00079 33 c0 xor eax, eax 0007b eb 2f jmp SHORT $LN1@glfwGetReq $LN3@glfwGetReq: ; 240 : ; 241 : if (!_glfw.vk.extensions[0]) 0007d b8 08 00 00 00 mov eax, 8 00082 48 6b c0 00 imul rax, rax, 0 00086 48 8d 0d 30 1b 00 00 lea rcx, OFFSET FLAT:_glfw+6960 0008d 48 83 3c 01 00 cmp QWORD PTR [rcx+rax], 0 00092 75 04 jne SHORT $LN4@glfwGetReq ; 242 : return NULL; 00094 33 c0 xor eax, eax 00096 eb 14 jmp SHORT $LN1@glfwGetReq $LN4@glfwGetReq: ; 243 : ; 244 : *count = 2; 00098 48 8b 85 e0 00 00 00 mov rax, QWORD PTR count$[rbp] 0009f c7 00 02 00 00 00 mov DWORD PTR [rax], 2 ; 245 : return (const char**) _glfw.vk.extensions; 000a5 48 8d 05 30 1b 00 00 lea rax, OFFSET FLAT:_glfw+6960 $LN1@glfwGetReq: ; 246 : } 000ac 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 000b3 5f pop rdi 000b4 5d pop rbp 000b5 c3 ret 0 glfwGetRequiredInstanceExtensions ENDP _TEXT ENDS ; Function compile flags: /Odtp /RTCsu /ZI ; File D:\NitloadIndustry\研究项目\1-Flagship\TH2020\ProjectFile\源代码\StgSharpGraphic\code\glfw\vulkan.c ; COMDAT glfwVulkanSupported _TEXT SEGMENT glfwVulkanSupported PROC ; COMDAT ; 225 : { $LN4: 00000 40 55 push rbp 00002 57 push rdi 00003 48 81 ec e8 00 00 00 sub rsp, 232 ; 000000e8H 0000a 48 8d 6c 24 20 lea rbp, QWORD PTR [rsp+32] 0000f 48 8d 0d 00 00 00 00 lea rcx, OFFSET FLAT:__1388D7B6_vulkan@c 00016 e8 00 00 00 00 call __CheckForDebuggerJustMyCode ; 226 : _GLFW_REQUIRE_INIT_OR_RETURN(GLFW_FALSE); 0001b 83 3d 00 00 00 00 00 cmp DWORD PTR _glfw, 0 00022 75 10 jne SHORT $LN2@glfwVulkan 00024 33 d2 xor edx, edx 00026 b9 01 00 01 00 mov ecx, 65537 ; 00010001H 0002b e8 00 00 00 00 call _glfwInputError 00030 33 c0 xor eax, eax 00032 eb 0a jmp SHORT $LN1@glfwVulkan $LN2@glfwVulkan: ; 227 : return _glfwInitVulkan(_GLFW_FIND_LOADER); 00034 b9 01 00 00 00 mov ecx, 1 00039 e8 00 00 00 00 call _glfwInitVulkan $LN1@glfwVulkan: ; 228 : } 0003e 48 8d a5 c8 00 00 00 lea rsp, QWORD PTR [rbp+200] 00045 5f pop rdi 00046 5d pop rbp 00047 c3 ret 0 glfwVulkanSupported ENDP _TEXT ENDS END