Files
stgsharp/源代码/StgSharpGraphic/x64/Release/vulkan.cod
T

1689 lines
53 KiB
Plaintext

; Listing generated by Microsoft (R) Optimizing Compiler Version 19.37.32824.0
include listing.inc
INCLUDELIB OLDNAMES
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@_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@_0DF@FCIHEFHD@Vulkan?3?5Window?5surface?5creation@ ; `string'
PUBLIC ??_C@_0FO@KAELFDNN@Vulkan?3?5Window?5surface?5creation@ ; `string'
; 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@_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@_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@_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'
PUBLIC glfwCreateWindowSurface
PUBLIC glfwGetPhysicalDevicePresentationSupport
PUBLIC glfwGetInstanceProcAddress
PUBLIC glfwGetRequiredInstanceExtensions
PUBLIC glfwVulkanSupported
PUBLIC _glfwGetVulkanResultString
PUBLIC _glfwInitVulkan
PUBLIC _glfwTerminateVulkan
; COMDAT pdata
pdata SEGMENT
$pdata$glfwCreateWindowSurface DD imagerel $LN13
DD imagerel $LN13+187
DD imagerel $unwind$glfwCreateWindowSurface
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$glfwGetPhysicalDevicePresentationSupport DD imagerel $LN11
DD imagerel $LN11+153
DD imagerel $unwind$glfwGetPhysicalDevicePresentationSupport
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$glfwGetInstanceProcAddress DD imagerel $LN17
DD imagerel $LN17+150
DD imagerel $unwind$glfwGetInstanceProcAddress
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$glfwGetRequiredInstanceExtensions DD imagerel $LN12
DD imagerel $LN12+87
DD imagerel $unwind$glfwGetRequiredInstanceExtensions
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$glfwVulkanSupported DD imagerel $LN5
DD imagerel $LN5+46
DD imagerel $unwind$glfwVulkanSupported
pdata ENDS
; COMDAT pdata
pdata SEGMENT
$pdata$_glfwInitVulkan DD imagerel $LN99
DD imagerel $LN99+796
DD imagerel $unwind$_glfwInitVulkan
; COMDAT xdata
xdata SEGMENT
$unwind$_glfwInitVulkan DD 064919H
DD 097449H
DD 086444H
DD 030025206H
DD imagerel __GSHandlerCheck
DD 028H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$glfwVulkanSupported DD 010401H
DD 04204H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$glfwGetRequiredInstanceExtensions DD 020601H
DD 030023206H
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$glfwGetInstanceProcAddress DD 040a01H
DD 06340aH
DD 07006320aH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$glfwGetPhysicalDevicePresentationSupport DD 060f01H
DD 07640fH
DD 06340fH
DD 0700b320fH
xdata ENDS
; COMDAT xdata
xdata SEGMENT
$unwind$glfwCreateWindowSurface DD 081401H
DD 086414H
DD 075414H
DD 063414H
DD 070103214H
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\win32_module.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; COMDAT _glfwTerminateVulkan
_TEXT SEGMENT
_glfwTerminateVulkan PROC ; COMDAT
; 160 : if (_glfw.vk.handle)
00000 48 8b 0d 28 1b
00 00 mov rcx, QWORD PTR _glfw+6952
00007 48 85 c9 test rcx, rcx
0000a 74 07 je SHORT $LN4@glfwTermin
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\win32_module.c
; 44 : FreeLibrary((HMODULE)module);
0000c 48 ff 25 00 00
00 00 rex_jmp QWORD PTR __imp_FreeLibrary
$LN4@glfwTermin:
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; 162 : }
00013 c3 ret 0
_glfwTerminateVulkan ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\win32_module.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\win32_module.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\init.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\init.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\init.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; COMDAT _glfwInitVulkan
_TEXT SEGMENT
count$ = 32
__$ArrayPad$ = 40
mode$ = 64
_glfwInitVulkan PROC ; COMDAT
; 45 : {
$LN99:
00000 40 53 push rbx
00002 48 83 ec 30 sub rsp, 48 ; 00000030H
00006 48 8b 05 00 00
00 00 mov rax, QWORD PTR __security_cookie
0000d 48 33 c4 xor rax, rsp
00010 48 89 44 24 28 mov QWORD PTR __$ArrayPad$[rsp], rax
; 46 : VkResult err;
; 47 : VkExtensionProperties* ep;
; 48 : PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties;
; 49 : uint32_t i, count;
; 50 :
; 51 : if (_glfw.vk.available)
00015 83 3d 20 1b 00
00 00 cmp DWORD PTR _glfw+6944, 0
0001c 8b d9 mov ebx, ecx
0001e 74 18 je SHORT $LN5@glfwInitVu
; 52 : return GLFW_TRUE;
00020 b8 01 00 00 00 mov eax, 1
; 156 : }
00025 48 8b 4c 24 28 mov rcx, QWORD PTR __$ArrayPad$[rsp]
0002a 48 33 cc xor rcx, rsp
0002d e8 00 00 00 00 call __security_check_cookie
00032 48 83 c4 30 add rsp, 48 ; 00000030H
00036 5b pop rbx
00037 c3 ret 0
$LN5@glfwInitVu:
; 53 :
; 54 : if (_glfw.hints.init.vulkanLoader)
00038 48 8b 05 78 02
00 00 mov rax, QWORD PTR _glfw+632
0003f 48 89 74 24 40 mov QWORD PTR [rsp+64], rsi
00044 48 89 7c 24 48 mov QWORD PTR [rsp+72], rdi
00049 48 85 c0 test rax, rax
0004c 74 34 je SHORT $LN6@glfwInitVu
; 55 : _glfw.vk.GetInstanceProcAddr = _glfw.hints.init.vulkanLoader;
0004e 48 89 05 40 1b
00 00 mov QWORD PTR _glfw+6976, rax
$LN10@glfwInitVu:
; 84 : "Vulkan: Loader does not export vkGetInstanceProcAddr");
; 85 :
; 86 : _glfwTerminateVulkan();
; 87 : return GLFW_FALSE;
; 88 : }
; 89 : }
; 90 :
; 91 : vkEnumerateInstanceExtensionProperties = (PFN_vkEnumerateInstanceExtensionProperties)
00055 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CH@DNHGEPME@vkEnumerateInstanceExtensionPro@
0005c 33 c9 xor ecx, ecx
0005e ff d0 call rax
00060 48 8b f0 mov rsi, rax
; 92 : vkGetInstanceProcAddr(NULL, "vkEnumerateInstanceExtensionProperties");
; 93 : if (!vkEnumerateInstanceExtensionProperties)
00063 48 85 c0 test rax, rax
00066 0f 85 86 00 00
00 jne $LN11@glfwInitVu
; 94 : {
; 95 : _glfwInputError(GLFW_API_UNAVAILABLE,
0006c 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0EC@MCALKGHI@Vulkan?3?5Failed?5to?5retrieve?5vkEn@
00073 b9 06 00 01 00 mov ecx, 65542 ; 00010006H
00078 e8 00 00 00 00 call _glfwInputError
0007d e9 2e 01 00 00 jmp $LN59@glfwInitVu
$LN6@glfwInitVu:
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\win32_module.c
; 39 : return LoadLibraryA(path);
00082 48 8d 0d 00 00
00 00 lea rcx, OFFSET FLAT:??_C@_0N@IILPFLFM@vulkan?91?4dll@
00089 ff 15 00 00 00
00 call QWORD PTR __imp_LoadLibraryA
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; 61 : _glfw.vk.handle = _glfwPlatformLoadModule("vulkan-1.dll");
0008f 48 89 05 28 1b
00 00 mov QWORD PTR _glfw+6952, rax
00096 48 85 c0 test rax, 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)
00099 75 21 jne SHORT $LN8@glfwInitVu
; 72 : {
; 73 : if (mode == _GLFW_REQUIRE_LOADER)
0009b 83 fb 02 cmp ebx, 2
0009e 0f 85 1e 01 00
00 jne $LN64@glfwInitVu
; 74 : _glfwInputError(GLFW_API_UNAVAILABLE, "Vulkan: Loader not found");
000a4 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BJ@PGPMJKGJ@Vulkan?3?5Loader?5not?5found@
000ab b9 06 00 01 00 mov ecx, 65542 ; 00010006H
000b0 e8 00 00 00 00 call _glfwInputError
; 128 : return GLFW_FALSE;
000b5 33 c0 xor eax, eax
000b7 e9 43 02 00 00 jmp $LN96@glfwInitVu
$LN8@glfwInitVu:
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\win32_module.c
; 49 : return (GLFWproc)GetProcAddress((HMODULE)module, name);
000bc 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BG@HBCIDECD@vkGetInstanceProcAddr@
000c3 48 8b c8 mov rcx, rax
000c6 ff 15 00 00 00
00 call QWORD PTR __imp_GetProcAddress
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; 79 : _glfw.vk.GetInstanceProcAddr = (PFN_vkGetInstanceProcAddr)
000cc 48 89 05 40 1b
00 00 mov QWORD PTR _glfw+6976, rax
000d3 48 85 c0 test rax, rax
; 80 : _glfwPlatformGetModuleSymbol(_glfw.vk.handle, "vkGetInstanceProcAddr");
; 81 : if (!_glfw.vk.GetInstanceProcAddr)
000d6 0f 85 79 ff ff
ff jne $LN10@glfwInitVu
; 82 : {
; 83 : _glfwInputError(GLFW_API_UNAVAILABLE,
000dc 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0DF@FEPNJFGL@Vulkan?3?5Loader?5does?5not?5export?5@
000e3 b9 06 00 01 00 mov ecx, 65542 ; 00010006H
000e8 e8 00 00 00 00 call _glfwInputError
000ed e9 be 00 00 00 jmp $LN59@glfwInitVu
$LN11@glfwInitVu:
; 96 : "Vulkan: Failed to retrieve vkEnumerateInstanceExtensionProperties");
; 97 :
; 98 : _glfwTerminateVulkan();
; 99 : return GLFW_FALSE;
; 100 : }
; 101 :
; 102 : err = vkEnumerateInstanceExtensionProperties(NULL, &count, NULL);
000f2 45 33 c0 xor r8d, r8d
000f5 48 8d 54 24 20 lea rdx, QWORD PTR count$[rsp]
000fa 33 c9 xor ecx, ecx
000fc ff d6 call rsi
; 103 : if (err)
000fe 85 c0 test eax, eax
00100 74 29 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)
00102 83 fb 02 cmp ebx, 2
00105 0f 85 a5 00 00
00 jne $LN59@glfwInitVu
; 107 : {
; 108 : _glfwInputError(GLFW_API_UNAVAILABLE,
0010b 8b c8 mov ecx, eax
0010d e8 00 00 00 00 call _glfwGetVulkanResultString
00112 4c 8b c0 mov r8, rax
00115 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0DF@KADNFCFI@Vulkan?3?5Failed?5to?5query?5instanc@
0011c b9 06 00 01 00 mov ecx, 65542 ; 00010006H
00121 e8 00 00 00 00 call _glfwInputError
00126 e9 85 00 00 00 jmp $LN59@glfwInitVu
$LN12@glfwInitVu:
; 109 : "Vulkan: Failed to query instance extension count: %s",
; 110 : _glfwGetVulkanResultString(err));
; 111 : }
; 112 :
; 113 : _glfwTerminateVulkan();
; 114 : return GLFW_FALSE;
; 115 : }
; 116 :
; 117 : ep = _glfw_calloc(count, sizeof(VkExtensionProperties));
0012b 8b 44 24 20 mov eax, DWORD PTR count$[rsp]
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\init.c
; 273 : if (count && size)
0012f 48 85 c0 test rax, rax
00132 74 3a je SHORT $LN47@glfwInitVu
; 274 : {
; 275 : void* block;
; 276 :
; 277 : if (count > SIZE_MAX / size)
; 278 : {
; 279 : _glfwInputError(GLFW_INVALID_VALUE, "Allocation size overflow");
; 280 : return NULL;
; 281 : }
; 282 :
; 283 : block = _glfw.allocator.allocate(count * size, _glfw.allocator.user);
00134 48 8b 15 20 00
00 00 mov rdx, QWORD PTR _glfw+32
0013b 48 69 d8 04 01
00 00 imul rbx, rax, 260 ; 00000104H
00142 48 8b cb mov rcx, rbx
00145 ff 15 08 00 00
00 call QWORD PTR _glfw+8
; 284 : if (block)
0014b 48 85 c0 test rax, rax
0014e 74 12 je SHORT $LN50@glfwInitVu
; 285 : return memset(block, 0, count * size);
00150 4c 8b c3 mov r8, rbx
00153 33 d2 xor edx, edx
00155 48 8b c8 mov rcx, rax
00158 e8 00 00 00 00 call memset
0015d 48 8b f8 mov rdi, rax
00160 eb 0e jmp SHORT $LN48@glfwInitVu
$LN50@glfwInitVu:
; 286 : else
; 287 : {
; 288 : _glfwInputError(GLFW_OUT_OF_MEMORY, NULL);
00162 33 d2 xor edx, edx
00164 b9 05 00 01 00 mov ecx, 65541 ; 00010005H
00169 e8 00 00 00 00 call _glfwInputError
$LN47@glfwInitVu:
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; 119 : err = vkEnumerateInstanceExtensionProperties(NULL, &count, ep);
0016e 33 ff xor edi, edi
$LN48@glfwInitVu:
00170 4c 8b c7 mov r8, rdi
00173 48 8d 54 24 20 lea rdx, QWORD PTR count$[rsp]
00178 33 c9 xor ecx, ecx
0017a ff d6 call rsi
; 120 : if (err)
0017c 85 c0 test eax, eax
0017e 74 49 je SHORT $LN14@glfwInitVu
; 121 : {
; 122 : _glfwInputError(GLFW_API_UNAVAILABLE,
00180 8b c8 mov ecx, eax
00182 e8 00 00 00 00 call _glfwGetVulkanResultString
00187 4c 8b c0 mov r8, rax
0018a 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0DA@LIIDOJC@Vulkan?3?5Failed?5to?5query?5instanc@
00191 b9 06 00 01 00 mov ecx, 65542 ; 00010006H
00196 e8 00 00 00 00 call _glfwInputError
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\init.c
; 320 : if (block)
0019b 48 85 ff test rdi, rdi
0019e 74 10 je SHORT $LN59@glfwInitVu
; 321 : _glfw.allocator.deallocate(block, _glfw.allocator.user);
001a0 48 8b 15 20 00
00 00 mov rdx, QWORD PTR _glfw+32
001a7 48 8b cf mov rcx, rdi
001aa ff 15 18 00 00
00 call QWORD PTR _glfw+24
$LN59@glfwInitVu:
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; 128 : return GLFW_FALSE;
001b0 48 8b 0d 28 1b
00 00 mov rcx, QWORD PTR _glfw+6952
001b7 48 85 c9 test rcx, rcx
001ba 74 06 je SHORT $LN64@glfwInitVu
001bc ff 15 00 00 00
00 call QWORD PTR __imp_FreeLibrary
$LN64@glfwInitVu:
001c2 33 c0 xor eax, eax
001c4 e9 36 01 00 00 jmp $LN96@glfwInitVu
$LN14@glfwInitVu:
; 129 : }
; 130 :
; 131 : for (i = 0; i < count; i++)
001c9 8b 44 24 20 mov eax, DWORD PTR count$[rsp]
001cd 85 c0 test eax, eax
001cf 0f 84 f9 00 00
00 je $LN3@glfwInitVu
001d5 48 8b df mov rbx, rdi
001d8 8b f0 mov esi, eax
001da 66 0f 1f 44 00
00 npad 6
$LL4@glfwInitVu:
; 132 : {
; 133 : if (strcmp(ep[i].extensionName, "VK_KHR_surface") == 0)
001e0 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0P@IENCOMCD@VK_KHR_surface@
001e7 48 8b cb mov rcx, rbx
001ea e8 00 00 00 00 call strcmp
001ef 85 c0 test eax, eax
001f1 75 0f jne SHORT $LN15@glfwInitVu
; 134 : _glfw.vk.KHR_surface = GLFW_TRUE;
001f3 c7 05 48 1b 00
00 01 00 00 00 mov DWORD PTR _glfw+6984, 1
001fd e9 bb 00 00 00 jmp $LN2@glfwInitVu
$LN15@glfwInitVu:
; 135 : else if (strcmp(ep[i].extensionName, "VK_KHR_win32_surface") == 0)
00202 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BF@COCMEDFO@VK_KHR_win32_surface@
00209 48 8b cb mov rcx, rbx
0020c e8 00 00 00 00 call strcmp
00211 85 c0 test eax, eax
00213 75 0f jne SHORT $LN17@glfwInitVu
; 136 : _glfw.vk.KHR_win32_surface = GLFW_TRUE;
00215 c7 05 4c 1b 00
00 01 00 00 00 mov DWORD PTR _glfw+6988, 1
0021f e9 99 00 00 00 jmp $LN2@glfwInitVu
$LN17@glfwInitVu:
; 137 : else if (strcmp(ep[i].extensionName, "VK_MVK_macos_surface") == 0)
00224 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BF@DOIMLJHJ@VK_MVK_macos_surface@
0022b 48 8b cb mov rcx, rbx
0022e e8 00 00 00 00 call strcmp
00233 85 c0 test eax, eax
00235 75 0c jne SHORT $LN19@glfwInitVu
; 138 : _glfw.vk.MVK_macos_surface = GLFW_TRUE;
00237 c7 05 50 1b 00
00 01 00 00 00 mov DWORD PTR _glfw+6992, 1
00241 eb 7a jmp SHORT $LN2@glfwInitVu
$LN19@glfwInitVu:
; 139 : else if (strcmp(ep[i].extensionName, "VK_EXT_metal_surface") == 0)
00243 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BF@DMNOCJMB@VK_EXT_metal_surface@
0024a 48 8b cb mov rcx, rbx
0024d e8 00 00 00 00 call strcmp
00252 85 c0 test eax, eax
00254 75 0c jne SHORT $LN21@glfwInitVu
; 140 : _glfw.vk.EXT_metal_surface = GLFW_TRUE;
00256 c7 05 54 1b 00
00 01 00 00 00 mov DWORD PTR _glfw+6996, 1
00260 eb 5b jmp SHORT $LN2@glfwInitVu
$LN21@glfwInitVu:
; 141 : else if (strcmp(ep[i].extensionName, "VK_KHR_xlib_surface") == 0)
00262 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BE@EFOBHOAB@VK_KHR_xlib_surface@
00269 48 8b cb mov rcx, rbx
0026c e8 00 00 00 00 call strcmp
00271 85 c0 test eax, eax
00273 75 0c jne SHORT $LN23@glfwInitVu
; 142 : _glfw.vk.KHR_xlib_surface = GLFW_TRUE;
00275 c7 05 58 1b 00
00 01 00 00 00 mov DWORD PTR _glfw+7000, 1
0027f eb 3c jmp SHORT $LN2@glfwInitVu
$LN23@glfwInitVu:
; 143 : else if (strcmp(ep[i].extensionName, "VK_KHR_xcb_surface") == 0)
00281 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BD@DKPJMBMG@VK_KHR_xcb_surface@
00288 48 8b cb mov rcx, rbx
0028b e8 00 00 00 00 call strcmp
00290 85 c0 test eax, eax
00292 75 0c jne SHORT $LN25@glfwInitVu
; 144 : _glfw.vk.KHR_xcb_surface = GLFW_TRUE;
00294 c7 05 5c 1b 00
00 01 00 00 00 mov DWORD PTR _glfw+7004, 1
0029e eb 1d jmp SHORT $LN2@glfwInitVu
$LN25@glfwInitVu:
; 145 : else if (strcmp(ep[i].extensionName, "VK_KHR_wayland_surface") == 0)
002a0 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BH@FDAKHMHL@VK_KHR_wayland_surface@
002a7 48 8b cb mov rcx, rbx
002aa e8 00 00 00 00 call strcmp
002af 85 c0 test eax, eax
002b1 75 0a jne SHORT $LN2@glfwInitVu
; 146 : _glfw.vk.KHR_wayland_surface = GLFW_TRUE;
002b3 c7 05 60 1b 00
00 01 00 00 00 mov DWORD PTR _glfw+7008, 1
$LN2@glfwInitVu:
; 129 : }
; 130 :
; 131 : for (i = 0; i < count; i++)
002bd 48 81 c3 04 01
00 00 add rbx, 260 ; 00000104H
002c4 48 83 ee 01 sub rsi, 1
002c8 0f 85 12 ff ff
ff jne $LL4@glfwInitVu
$LN3@glfwInitVu:
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\init.c
; 320 : if (block)
002ce 48 85 ff test rdi, rdi
002d1 74 10 je SHORT $LN32@glfwInitVu
; 321 : _glfw.allocator.deallocate(block, _glfw.allocator.user);
002d3 48 8b 15 20 00
00 00 mov rdx, QWORD PTR _glfw+32
002da 48 8b cf mov rcx, rdi
002dd ff 15 18 00 00
00 call QWORD PTR _glfw+24
$LN32@glfwInitVu:
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; 153 : _glfw.platform.getRequiredInstanceExtensions(_glfw.vk.extensions);
002e3 48 8d 0d 30 1b
00 00 lea rcx, OFFSET FLAT:_glfw+6960
002ea c7 05 20 1b 00
00 01 00 00 00 mov DWORD PTR _glfw+6944, 1
002f4 ff 15 50 02 00
00 call QWORD PTR _glfw+592
; 154 :
; 155 : return GLFW_TRUE;
002fa b8 01 00 00 00 mov eax, 1
$LN96@glfwInitVu:
002ff 48 8b 74 24 40 mov rsi, QWORD PTR [rsp+64]
00304 48 8b 7c 24 48 mov rdi, QWORD PTR [rsp+72]
; 156 : }
00309 48 8b 4c 24 28 mov rcx, QWORD PTR __$ArrayPad$[rsp]
0030e 48 33 cc xor rcx, rsp
00311 e8 00 00 00 00 call __security_check_cookie
00316 48 83 c4 30 add rsp, 48 ; 00000030H
0031a 5b pop rbx
0031b c3 ret 0
_glfwInitVulkan ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; COMDAT _glfwGetVulkanResultString
_TEXT SEGMENT
result$ = 8
_glfwGetVulkanResultString PROC ; COMDAT
; 166 : switch (result)
00000 83 f9 f5 cmp ecx, -11
00003 7f 63 jg SHORT $LN29@glfwGetVul
00005 74 59 je SHORT $LN20@glfwGetVul
00007 81 f9 07 0b 65
c4 cmp ecx, -1000011001 ; ffffffffc4650b07H
0000d 74 49 je SHORT $LN26@glfwGetVul
0000f 81 f9 47 2a 65
c4 cmp ecx, -1000003001 ; ffffffffc4652a47H
00015 74 39 je SHORT $LN24@glfwGetVul
00017 81 f9 14 32 65
c4 cmp ecx, -1000001004 ; ffffffffc4653214H
0001d 74 29 je SHORT $LN23@glfwGetVul
0001f 81 f9 ff 35 65
c4 cmp ecx, -1000000001 ; ffffffffc46535ffH
00025 74 19 je SHORT $LN25@glfwGetVul
00027 81 f9 00 36 65
c4 cmp ecx, -1000000000 ; ffffffffc4653600H
0002d 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0CB@EJFBPGFM@A?5surface?5is?5no?5longer?5availabl@
00034 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0BM@OMEGJAIK@ERROR?3?5UNKNOWN?5VULKAN?5ERROR@
0003b 48 0f 44 c2 cmove rax, rdx
; 216 : }
; 217 : }
0003f c3 ret 0
$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";
00040 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0FN@PJBCJBIL@The?5requested?5window?5is?5already@
; 216 : }
; 217 : }
00047 c3 ret 0
$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";
00048 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0FH@FIPMKLID@A?5surface?5has?5changed?5in?5such?5a@
; 216 : }
; 217 : }
0004f c3 ret 0
$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";
00050 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0EP@OJIEDFOO@The?5display?5used?5by?5a?5swapchain@
; 216 : }
; 217 : }
00057 c3 ret 0
$LN26@glfwGetVul:
; 212 : case VK_ERROR_VALIDATION_FAILED_EXT:
; 213 : return "A validation layer found an error";
00058 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0CC@HDNEDJNI@A?5validation?5layer?5found?5an?5err@
; 216 : }
; 217 : }
0005f c3 ret 0
$LN20@glfwGetVul:
; 200 : case VK_ERROR_FORMAT_NOT_SUPPORTED:
; 201 : return "A requested format is not supported on this device";
00060 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0DD@OOKDLCED@A?5requested?5format?5is?5not?5suppo@
; 216 : }
; 217 : }
00067 c3 ret 0
$LN29@glfwGetVul:
; 166 : switch (result)
00068 81 f9 eb cd 9a
3b cmp ecx, 1000001003 ; 3b9acdebH
0006e 0f 8f b0 00 00
00 jg $LN30@glfwGetVul
00074 0f 84 a2 00 00
00 je $LN22@glfwGetVul
0007a 83 c1 0a add ecx, 10
0007d 83 f9 0f cmp ecx, 15
00080 0f 87 9e 00 00
00 ja $LN30@glfwGetVul
00086 48 63 c1 movsxd rax, ecx
00089 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:__ImageBase
00090 8b 8c 82 00 00
00 00 mov ecx, DWORD PTR $LN31@glfwGetVul[rdx+rax*4]
00097 48 03 ca add rcx, rdx
0009a ff e1 jmp rcx
$LN4@glfwGetVul:
; 167 : {
; 168 : case VK_SUCCESS:
; 169 : return "Success";
0009c 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_07PBILKAFL@Success@
; 216 : }
; 217 : }
000a3 c3 ret 0
$LN5@glfwGetVul:
; 170 : case VK_NOT_READY:
; 171 : return "A fence or query has not yet completed";
000a4 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0CH@GBHCOIGC@A?5fence?5or?5query?5has?5not?5yet?5co@
; 216 : }
; 217 : }
000ab c3 ret 0
$LN6@glfwGetVul:
; 172 : case VK_TIMEOUT:
; 173 : return "A wait operation has not completed in the specified time";
000ac 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0DJ@KAONABFK@A?5wait?5operation?5has?5not?5comple@
; 216 : }
; 217 : }
000b3 c3 ret 0
$LN7@glfwGetVul:
; 174 : case VK_EVENT_SET:
; 175 : return "An event is signaled";
000b4 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0BF@NEMNBLEB@An?5event?5is?5signaled@
; 216 : }
; 217 : }
000bb c3 ret 0
$LN8@glfwGetVul:
; 176 : case VK_EVENT_RESET:
; 177 : return "An event is unsignaled";
000bc 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0BH@MDCGBFEN@An?5event?5is?5unsignaled@
; 216 : }
; 217 : }
000c3 c3 ret 0
$LN9@glfwGetVul:
; 178 : case VK_INCOMPLETE:
; 179 : return "A return array was too small for the result";
000c4 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0CM@GKIHKJDL@A?5return?5array?5was?5too?5small?5fo@
; 216 : }
; 217 : }
000cb c3 ret 0
$LN10@glfwGetVul:
; 180 : case VK_ERROR_OUT_OF_HOST_MEMORY:
; 181 : return "A host memory allocation has failed";
000cc 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0CE@HKNBGEPI@A?5host?5memory?5allocation?5has?5fa@
; 216 : }
; 217 : }
000d3 c3 ret 0
$LN11@glfwGetVul:
; 182 : case VK_ERROR_OUT_OF_DEVICE_MEMORY:
; 183 : return "A device memory allocation has failed";
000d4 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0CG@CHEOMKGJ@A?5device?5memory?5allocation?5has?5@
; 216 : }
; 217 : }
000db c3 ret 0
$LN12@glfwGetVul:
; 184 : case VK_ERROR_INITIALIZATION_FAILED:
; 185 : return "Initialization of an object could not be completed for implementation-specific reasons";
000dc 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0FH@MCDKNJAI@Initialization?5of?5an?5object?5cou@
; 216 : }
; 217 : }
000e3 c3 ret 0
$LN13@glfwGetVul:
; 186 : case VK_ERROR_DEVICE_LOST:
; 187 : return "The logical or physical device has been lost";
000e4 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0CN@IHJGMBHI@The?5logical?5or?5physical?5device?5@
; 216 : }
; 217 : }
000eb c3 ret 0
$LN14@glfwGetVul:
; 188 : case VK_ERROR_MEMORY_MAP_FAILED:
; 189 : return "Mapping of a memory object has failed";
000ec 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0CG@CHGOPGBD@Mapping?5of?5a?5memory?5object?5has?5@
; 216 : }
; 217 : }
000f3 c3 ret 0
$LN15@glfwGetVul:
; 190 : case VK_ERROR_LAYER_NOT_PRESENT:
; 191 : return "A requested layer is not present or could not be loaded";
000f4 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0DI@GNLCAHHB@A?5requested?5layer?5is?5not?5presen@
; 216 : }
; 217 : }
000fb c3 ret 0
$LN16@glfwGetVul:
; 192 : case VK_ERROR_EXTENSION_NOT_PRESENT:
; 193 : return "A requested extension is not supported";
000fc 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0CH@NEGEBDM@A?5requested?5extension?5is?5not?5su@
; 216 : }
; 217 : }
00103 c3 ret 0
$LN17@glfwGetVul:
; 194 : case VK_ERROR_FEATURE_NOT_PRESENT:
; 195 : return "A requested feature is not supported";
00104 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0CF@OFADCJLJ@A?5requested?5feature?5is?5not?5supp@
; 216 : }
; 217 : }
0010b c3 ret 0
$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";
0010c 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0FM@BBONGFMN@The?5requested?5version?5of?5Vulkan@
; 216 : }
; 217 : }
00113 c3 ret 0
$LN19@glfwGetVul:
; 198 : case VK_ERROR_TOO_MANY_OBJECTS:
; 199 : return "Too many objects of the type have already been created";
00114 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0DH@EKEHMEFD@Too?5many?5objects?5of?5the?5type?5ha@
; 216 : }
; 217 : }
0011b c3 ret 0
$LN22@glfwGetVul:
; 202 : case VK_ERROR_SURFACE_LOST_KHR:
; 203 : return "A surface is no longer available";
; 204 : case VK_SUBOPTIMAL_KHR:
; 205 : return "A swapchain no longer matches the surface properties exactly, but can still be used";
0011c 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0FE@ILJLDKCD@A?5swapchain?5no?5longer?5matches?5t@
; 216 : }
; 217 : }
00123 c3 ret 0
$LN30@glfwGetVul:
; 214 : default:
; 215 : return "ERROR: UNKNOWN VULKAN ERROR";
00124 48 8d 05 00 00
00 00 lea rax, OFFSET FLAT:??_C@_0BM@OMEGJAIK@ERROR?3?5UNKNOWN?5VULKAN?5ERROR@
; 216 : }
; 217 : }
0012b c3 ret 0
$LN31@glfwGetVul:
0012c 00 00 00 00 DD $LN19@glfwGetVul
00130 00 00 00 00 DD $LN18@glfwGetVul
00134 00 00 00 00 DD $LN17@glfwGetVul
00138 00 00 00 00 DD $LN16@glfwGetVul
0013c 00 00 00 00 DD $LN15@glfwGetVul
00140 00 00 00 00 DD $LN14@glfwGetVul
00144 00 00 00 00 DD $LN13@glfwGetVul
00148 00 00 00 00 DD $LN12@glfwGetVul
0014c 00 00 00 00 DD $LN11@glfwGetVul
00150 00 00 00 00 DD $LN10@glfwGetVul
00154 00 00 00 00 DD $LN4@glfwGetVul
00158 00 00 00 00 DD $LN5@glfwGetVul
0015c 00 00 00 00 DD $LN6@glfwGetVul
00160 00 00 00 00 DD $LN7@glfwGetVul
00164 00 00 00 00 DD $LN8@glfwGetVul
00168 00 00 00 00 DD $LN9@glfwGetVul
_glfwGetVulkanResultString ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; COMDAT glfwVulkanSupported
_TEXT SEGMENT
glfwVulkanSupported PROC ; COMDAT
; 225 : {
$LN5:
00000 48 83 ec 28 sub rsp, 40 ; 00000028H
; 226 : _GLFW_REQUIRE_INIT_OR_RETURN(GLFW_FALSE);
00004 83 3d 00 00 00
00 00 cmp DWORD PTR _glfw, 0
0000b 75 13 jne SHORT $LN2@glfwVulkan
0000d 33 d2 xor edx, edx
0000f b9 01 00 01 00 mov ecx, 65537 ; 00010001H
00014 e8 00 00 00 00 call _glfwInputError
00019 33 c0 xor eax, eax
; 228 : }
0001b 48 83 c4 28 add rsp, 40 ; 00000028H
0001f c3 ret 0
$LN2@glfwVulkan:
; 227 : return _glfwInitVulkan(_GLFW_FIND_LOADER);
00020 b9 01 00 00 00 mov ecx, 1
; 228 : }
00025 48 83 c4 28 add rsp, 40 ; 00000028H
; 227 : return _glfwInitVulkan(_GLFW_FIND_LOADER);
00029 e9 00 00 00 00 jmp _glfwInitVulkan
glfwVulkanSupported ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; COMDAT glfwGetRequiredInstanceExtensions
_TEXT SEGMENT
count$ = 48
glfwGetRequiredInstanceExtensions PROC ; COMDAT
; 231 : {
$LN12:
00000 40 53 push rbx
00002 48 83 ec 20 sub rsp, 32 ; 00000020H
; 232 : assert(count != NULL);
; 233 :
; 234 : *count = 0;
00006 c7 01 00 00 00
00 mov DWORD PTR [rcx], 0
0000c 48 8b d9 mov rbx, rcx
; 235 :
; 236 : _GLFW_REQUIRE_INIT_OR_RETURN(NULL);
0000f 83 3d 00 00 00
00 00 cmp DWORD PTR _glfw, 0
00016 75 14 jne SHORT $LN2@glfwGetReq
00018 33 d2 xor edx, edx
0001a b9 01 00 01 00 mov ecx, 65537 ; 00010001H
0001f e8 00 00 00 00 call _glfwInputError
$LN6@glfwGetReq:
; 246 : }
00024 33 c0 xor eax, eax
00026 48 83 c4 20 add rsp, 32 ; 00000020H
0002a 5b pop rbx
0002b c3 ret 0
$LN2@glfwGetReq:
; 237 :
; 238 : if (!_glfwInitVulkan(_GLFW_REQUIRE_LOADER))
0002c b9 02 00 00 00 mov ecx, 2
00031 e8 00 00 00 00 call _glfwInitVulkan
00036 85 c0 test eax, eax
00038 74 ea je SHORT $LN6@glfwGetReq
; 239 : return NULL;
; 240 :
; 241 : if (!_glfw.vk.extensions[0])
0003a 48 83 3d 30 1b
00 00 00 cmp QWORD PTR _glfw+6960, 0
00042 74 e0 je SHORT $LN6@glfwGetReq
; 242 : return NULL;
; 243 :
; 244 : *count = 2;
00044 c7 03 02 00 00
00 mov DWORD PTR [rbx], 2
; 245 : return (const char**) _glfw.vk.extensions;
0004a 48 8d 05 30 1b
00 00 lea rax, OFFSET FLAT:_glfw+6960
; 246 : }
00051 48 83 c4 20 add rsp, 32 ; 00000020H
00055 5b pop rbx
00056 c3 ret 0
glfwGetRequiredInstanceExtensions ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\win32_module.c
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; COMDAT glfwGetInstanceProcAddress
_TEXT SEGMENT
instance$ = 48
procname$ = 56
glfwGetInstanceProcAddress PROC ; COMDAT
; 250 : {
$LN17:
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
00005 57 push rdi
00006 48 83 ec 20 sub rsp, 32 ; 00000020H
; 251 : GLFWvkproc proc;
; 252 : assert(procname != NULL);
; 253 :
; 254 : _GLFW_REQUIRE_INIT_OR_RETURN(NULL);
0000a 83 3d 00 00 00
00 00 cmp DWORD PTR _glfw, 0
00011 48 8b da mov rbx, rdx
00014 48 8b f9 mov rdi, rcx
00017 75 19 jne SHORT $LN2@glfwGetIns
00019 33 d2 xor edx, edx
0001b b9 01 00 01 00 mov ecx, 65537 ; 00010001H
00020 e8 00 00 00 00 call _glfwInputError
$LN15@glfwGetIns:
; 271 : }
00025 33 c0 xor eax, eax
00027 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
0002c 48 83 c4 20 add rsp, 32 ; 00000020H
00030 5f pop rdi
00031 c3 ret 0
$LN2@glfwGetIns:
; 255 :
; 256 : if (!_glfwInitVulkan(_GLFW_REQUIRE_LOADER))
00032 b9 02 00 00 00 mov ecx, 2
00037 e8 00 00 00 00 call _glfwInitVulkan
0003c 85 c0 test eax, eax
0003e 74 e5 je SHORT $LN15@glfwGetIns
; 257 : return NULL;
; 258 :
; 259 : // NOTE: Vulkan 1.0 and 1.1 vkGetInstanceProcAddr cannot return itself
; 260 : if (strcmp(procname, "vkGetInstanceProcAddr") == 0)
00040 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0BG@HBCIDECD@vkGetInstanceProcAddr@
00047 48 8b cb mov rcx, rbx
0004a e8 00 00 00 00 call strcmp
0004f 85 c0 test eax, eax
00051 75 12 jne SHORT $LN4@glfwGetIns
; 261 : return (GLFWvkproc) vkGetInstanceProcAddr;
00053 48 8b 05 40 1b
00 00 mov rax, QWORD PTR _glfw+6976
; 271 : }
0005a 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
0005f 48 83 c4 20 add rsp, 32 ; 00000020H
00063 5f pop rdi
00064 c3 ret 0
$LN4@glfwGetIns:
; 262 :
; 263 : proc = (GLFWvkproc) vkGetInstanceProcAddr(instance, procname);
00065 48 8b d3 mov rdx, rbx
00068 48 8b cf mov rcx, rdi
0006b ff 15 40 1b 00
00 call QWORD PTR _glfw+6976
; 264 : if (!proc)
00071 48 85 c0 test rax, rax
00074 75 15 jne SHORT $LN6@glfwGetIns
; 265 : {
; 266 : if (_glfw.vk.handle)
00076 48 8b 0d 28 1b
00 00 mov rcx, QWORD PTR _glfw+6952
0007d 48 85 c9 test rcx, rcx
00080 74 09 je SHORT $LN6@glfwGetIns
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\win32_module.c
; 49 : return (GLFWproc)GetProcAddress((HMODULE)module, name);
00082 48 8b d3 mov rdx, rbx
00085 ff 15 00 00 00
00 call QWORD PTR __imp_GetProcAddress
$LN6@glfwGetIns:
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; 271 : }
0008b 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
00090 48 83 c4 20 add rsp, 32 ; 00000020H
00094 5f pop rdi
00095 c3 ret 0
glfwGetInstanceProcAddress ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; COMDAT glfwGetPhysicalDevicePresentationSupport
_TEXT SEGMENT
instance$ = 48
device$ = 56
queuefamily$ = 64
glfwGetPhysicalDevicePresentationSupport PROC ; COMDAT
; 276 : {
$LN11:
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
00005 48 89 74 24 10 mov QWORD PTR [rsp+16], rsi
0000a 57 push rdi
0000b 48 83 ec 20 sub rsp, 32 ; 00000020H
; 277 : assert(instance != VK_NULL_HANDLE);
; 278 : assert(device != VK_NULL_HANDLE);
; 279 :
; 280 : _GLFW_REQUIRE_INIT_OR_RETURN(GLFW_FALSE);
0000f 83 3d 00 00 00
00 00 cmp DWORD PTR _glfw, 0
00016 41 8b d8 mov ebx, r8d
00019 48 8b fa mov rdi, rdx
0001c 48 8b f1 mov rsi, rcx
0001f 75 1e jne SHORT $LN2@glfwGetPhy
00021 33 d2 xor edx, edx
00023 b9 01 00 01 00 mov ecx, 65537 ; 00010001H
00028 e8 00 00 00 00 call _glfwInputError
$LN9@glfwGetPhy:
; 293 : device,
; 294 : queuefamily);
; 295 : }
0002d 33 c0 xor eax, eax
0002f 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
00034 48 8b 74 24 38 mov rsi, QWORD PTR [rsp+56]
00039 48 83 c4 20 add rsp, 32 ; 00000020H
0003d 5f pop rdi
0003e c3 ret 0
$LN2@glfwGetPhy:
; 281 :
; 282 : if (!_glfwInitVulkan(_GLFW_REQUIRE_LOADER))
0003f b9 02 00 00 00 mov ecx, 2
00044 e8 00 00 00 00 call _glfwInitVulkan
00049 85 c0 test eax, eax
0004b 74 e0 je SHORT $LN9@glfwGetPhy
; 283 : return GLFW_FALSE;
; 284 :
; 285 : if (!_glfw.vk.extensions[0])
0004d 48 83 3d 30 1b
00 00 00 cmp QWORD PTR _glfw+6960, 0
00055 75 23 jne SHORT $LN4@glfwGetPhy
; 286 : {
; 287 : _glfwInputError(GLFW_API_UNAVAILABLE,
00057 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0DF@FCIHEFHD@Vulkan?3?5Window?5surface?5creation@
0005e b9 06 00 01 00 mov ecx, 65542 ; 00010006H
00063 e8 00 00 00 00 call _glfwInputError
; 288 : "Vulkan: Window surface creation extensions not found");
; 289 : return GLFW_FALSE;
00068 33 c0 xor eax, eax
; 293 : device,
; 294 : queuefamily);
; 295 : }
0006a 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
0006f 48 8b 74 24 38 mov rsi, QWORD PTR [rsp+56]
00074 48 83 c4 20 add rsp, 32 ; 00000020H
00078 5f pop rdi
00079 c3 ret 0
$LN4@glfwGetPhy:
; 290 : }
; 291 :
; 292 : return _glfw.platform.getPhysicalDevicePresentationSupport(instance,
0007a 44 8b c3 mov r8d, ebx
0007d 48 8b d7 mov rdx, rdi
00080 48 8b ce mov rcx, rsi
; 293 : device,
; 294 : queuefamily);
; 295 : }
00083 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
00088 48 8b 74 24 38 mov rsi, QWORD PTR [rsp+56]
0008d 48 83 c4 20 add rsp, 32 ; 00000020H
00091 5f pop rdi
; 290 : }
; 291 :
; 292 : return _glfw.platform.getPhysicalDevicePresentationSupport(instance,
00092 48 ff 25 58 02
00 00 rex_jmp QWORD PTR _glfw+600
glfwGetPhysicalDevicePresentationSupport ENDP
_TEXT ENDS
; Function compile flags: /Ogtpy
; File D:\NitloadIndustry\Ñо¿ÏîÄ¿\1-Flagship\TH2020\ProjectFile\Ô´´úÂë\StgSharpGraphic\code\glfw\vulkan.c
; COMDAT glfwCreateWindowSurface
_TEXT SEGMENT
instance$ = 48
handle$ = 56
allocator$ = 64
surface$ = 72
glfwCreateWindowSurface PROC ; COMDAT
; 301 : {
$LN13:
00000 48 89 5c 24 08 mov QWORD PTR [rsp+8], rbx
00005 48 89 6c 24 10 mov QWORD PTR [rsp+16], rbp
0000a 48 89 74 24 18 mov QWORD PTR [rsp+24], rsi
0000f 57 push rdi
00010 48 83 ec 20 sub rsp, 32 ; 00000020H
; 302 : _GLFWwindow* window = (_GLFWwindow*) handle;
; 303 : assert(instance != VK_NULL_HANDLE);
; 304 : assert(window != NULL);
; 305 : assert(surface != NULL);
; 306 :
; 307 : *surface = VK_NULL_HANDLE;
00014 49 c7 01 00 00
00 00 mov QWORD PTR [r9], 0
0001b 49 8b f9 mov rdi, r9
; 308 :
; 309 : _GLFW_REQUIRE_INIT_OR_RETURN(VK_ERROR_INITIALIZATION_FAILED);
0001e 83 3d 00 00 00
00 00 cmp DWORD PTR _glfw, 0
00025 49 8b f0 mov rsi, r8
00028 48 8b da mov rbx, rdx
0002b 48 8b e9 mov rbp, rcx
0002e 75 13 jne SHORT $LN2@glfwCreate
00030 33 d2 xor edx, edx
00032 b9 01 00 01 00 mov ecx, 65537 ; 00010001H
00037 e8 00 00 00 00 call _glfwInputError
$LN11@glfwCreate:
; 329 : }
0003c b8 fd ff ff ff mov eax, -3
00041 eb 63 jmp SHORT $LN1@glfwCreate
$LN2@glfwCreate:
; 310 :
; 311 : if (!_glfwInitVulkan(_GLFW_REQUIRE_LOADER))
00043 b9 02 00 00 00 mov ecx, 2
00048 e8 00 00 00 00 call _glfwInitVulkan
0004d 85 c0 test eax, eax
0004f 74 eb je SHORT $LN11@glfwCreate
; 312 : return VK_ERROR_INITIALIZATION_FAILED;
; 313 :
; 314 : if (!_glfw.vk.extensions[0])
00051 48 83 3d 30 1b
00 00 00 cmp QWORD PTR _glfw+6960, 0
00059 75 18 jne SHORT $LN4@glfwCreate
; 315 : {
; 316 : _glfwInputError(GLFW_API_UNAVAILABLE,
0005b 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0DF@FCIHEFHD@Vulkan?3?5Window?5surface?5creation@
00062 b9 06 00 01 00 mov ecx, 65542 ; 00010006H
00067 e8 00 00 00 00 call _glfwInputError
; 317 : "Vulkan: Window surface creation extensions not found");
; 318 : return VK_ERROR_EXTENSION_NOT_PRESENT;
0006c b8 f9 ff ff ff mov eax, -7
00071 eb 33 jmp SHORT $LN1@glfwCreate
$LN4@glfwCreate:
; 319 : }
; 320 :
; 321 : if (window->context.client != GLFW_NO_API)
00073 83 bb 08 02 00
00 00 cmp DWORD PTR [rbx+520], 0
0007a 74 18 je SHORT $LN5@glfwCreate
; 322 : {
; 323 : _glfwInputError(GLFW_INVALID_VALUE,
0007c 48 8d 15 00 00
00 00 lea rdx, OFFSET FLAT:??_C@_0FO@KAELFDNN@Vulkan?3?5Window?5surface?5creation@
00083 b9 04 00 01 00 mov ecx, 65540 ; 00010004H
00088 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;
0008d b8 ff 35 65 c4 mov eax, -1000000001 ; ffffffffc46535ffH
00092 eb 12 jmp SHORT $LN1@glfwCreate
$LN5@glfwCreate:
; 326 : }
; 327 :
; 328 : return _glfw.platform.createWindowSurface(instance, window, allocator, surface);
00094 4c 8b cf mov r9, rdi
00097 4c 8b c6 mov r8, rsi
0009a 48 8b d3 mov rdx, rbx
0009d 48 8b cd mov rcx, rbp
000a0 ff 15 60 02 00
00 call QWORD PTR _glfw+608
$LN1@glfwCreate:
; 329 : }
000a6 48 8b 5c 24 30 mov rbx, QWORD PTR [rsp+48]
000ab 48 8b 6c 24 38 mov rbp, QWORD PTR [rsp+56]
000b0 48 8b 74 24 40 mov rsi, QWORD PTR [rsp+64]
000b5 48 83 c4 20 add rsp, 32 ; 00000020H
000b9 5f pop rdi
000ba c3 ret 0
glfwCreateWindowSurface ENDP
_TEXT ENDS
END