GSL/asm/Visual Studio 2017_17_MSVC_x86_Release/span_compile_only.asm

1118 lines
37 KiB
NASM
Raw Normal View History

; Listing generated by Microsoft (R) Optimizing Compiler Version 19.16.27026.1
TITLE C:\projects\gsl\tests\span_compile_only.cpp
.686P
.XMM
include listing.inc
.model flat
INCLUDELIB MSVCRT
INCLUDELIB OLDNAMES
PUBLIC ??0exception@std@@QAE@ABV01@@Z ; std::exception::exception
PUBLIC ??1exception@std@@UAE@XZ ; std::exception::~exception
PUBLIC ?what@exception@std@@UBEPBDXZ ; std::exception::what
PUBLIC ??_Gexception@std@@UAEPAXI@Z ; std::exception::`scalar deleting destructor'
PUBLIC ??0logic_error@std@@QAE@ABV01@@Z ; std::logic_error::logic_error
PUBLIC ??_Glogic_error@std@@UAEPAXI@Z ; std::logic_error::`scalar deleting destructor'
PUBLIC ??1fail_fast@gsl@@UAE@XZ ; gsl::fail_fast::~fail_fast
PUBLIC ??0fail_fast@gsl@@QAE@ABU01@@Z ; gsl::fail_fast::fail_fast
PUBLIC ??0fail_fast@gsl@@QAE@$$QAU01@@Z ; gsl::fail_fast::fail_fast
PUBLIC ??_Gfail_fast@gsl@@UAEPAXI@Z ; gsl::fail_fast::`scalar deleting destructor'
PUBLIC ??$throw_exception@Ufail_fast@gsl@@@details@gsl@@YAX$$QAUfail_fast@1@@Z ; gsl::details::throw_exception<gsl::fail_fast>
PUBLIC ?foo@@YA_NXZ ; foo
PUBLIC ??$forward@Ufail_fast@gsl@@@std@@YA$$QAUfail_fast@gsl@@AAU12@@Z ; std::forward<gsl::fail_fast>
PUBLIC ??_7exception@std@@6B@ ; std::exception::`vftable'
PUBLIC ??_C@_0BC@EOODALEL@Unknown?5exception@ ; `string'
PUBLIC ??_7logic_error@std@@6B@ ; std::logic_error::`vftable'
PUBLIC ??_7fail_fast@gsl@@6B@ ; gsl::fail_fast::`vftable'
PUBLIC ??_R0?AVexception@std@@@8 ; std::exception `RTTI Type Descriptor'
PUBLIC __CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
PUBLIC __TI3?AUfail_fast@gsl@@
PUBLIC __CTA3?AUfail_fast@gsl@@
PUBLIC ??_R0?AUfail_fast@gsl@@@8 ; gsl::fail_fast `RTTI Type Descriptor'
PUBLIC __CT??_R0?AUfail_fast@gsl@@@8??0fail_fast@gsl@@QAE@ABU01@@Z12
PUBLIC ??_R0?AVlogic_error@std@@@8 ; std::logic_error `RTTI Type Descriptor'
PUBLIC __CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z12
PUBLIC ??_R4exception@std@@6B@ ; std::exception::`RTTI Complete Object Locator'
PUBLIC ??_R3exception@std@@8 ; std::exception::`RTTI Class Hierarchy Descriptor'
PUBLIC ??_R2exception@std@@8 ; std::exception::`RTTI Base Class Array'
PUBLIC ??_R1A@?0A@EA@exception@std@@8 ; std::exception::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC ??_R4logic_error@std@@6B@ ; std::logic_error::`RTTI Complete Object Locator'
PUBLIC ??_R3logic_error@std@@8 ; std::logic_error::`RTTI Class Hierarchy Descriptor'
PUBLIC ??_R2logic_error@std@@8 ; std::logic_error::`RTTI Base Class Array'
PUBLIC ??_R1A@?0A@EA@logic_error@std@@8 ; std::logic_error::`RTTI Base Class Descriptor at (0,-1,0,64)'
PUBLIC ??_R4fail_fast@gsl@@6B@ ; gsl::fail_fast::`RTTI Complete Object Locator'
PUBLIC ??_R3fail_fast@gsl@@8 ; gsl::fail_fast::`RTTI Class Hierarchy Descriptor'
PUBLIC ??_R2fail_fast@gsl@@8 ; gsl::fail_fast::`RTTI Base Class Array'
PUBLIC ??_R1A@?0A@EA@fail_fast@gsl@@8 ; gsl::fail_fast::`RTTI Base Class Descriptor at (0,-1,0,64)'
EXTRN ??3@YAXPAXI@Z:PROC ; operator delete
EXTRN ___std_terminate:PROC
EXTRN ___std_exception_copy:PROC
EXTRN ___std_exception_destroy:PROC
EXTRN ??_Eexception@std@@UAEPAXI@Z:PROC ; std::exception::`vector deleting destructor'
EXTRN ??_Elogic_error@std@@UAEPAXI@Z:PROC ; std::logic_error::`vector deleting destructor'
EXTRN ??_Efail_fast@gsl@@UAEPAXI@Z:PROC ; gsl::fail_fast::`vector deleting destructor'
EXTRN @__security_check_cookie@4:PROC
EXTRN __CxxThrowException@8:PROC
EXTRN ___CxxFrameHandler3:PROC
EXTRN ??_7type_info@@6B@:QWORD ; type_info::`vftable'
EXTRN ___security_cookie:DWORD
; COMDAT ??_R1A@?0A@EA@fail_fast@gsl@@8
rdata$r SEGMENT
??_R1A@?0A@EA@fail_fast@gsl@@8 DD FLAT:??_R0?AUfail_fast@gsl@@@8 ; gsl::fail_fast::`RTTI Base Class Descriptor at (0,-1,0,64)'
DD 02H
DD 00H
DD 0ffffffffH
DD 00H
DD 040H
DD FLAT:??_R3fail_fast@gsl@@8
rdata$r ENDS
; COMDAT ??_R2fail_fast@gsl@@8
rdata$r SEGMENT
??_R2fail_fast@gsl@@8 DD FLAT:??_R1A@?0A@EA@fail_fast@gsl@@8 ; gsl::fail_fast::`RTTI Base Class Array'
DD FLAT:??_R1A@?0A@EA@logic_error@std@@8
DD FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r ENDS
; COMDAT ??_R3fail_fast@gsl@@8
rdata$r SEGMENT
??_R3fail_fast@gsl@@8 DD 00H ; gsl::fail_fast::`RTTI Class Hierarchy Descriptor'
DD 00H
DD 03H
DD FLAT:??_R2fail_fast@gsl@@8
rdata$r ENDS
; COMDAT ??_R4fail_fast@gsl@@6B@
rdata$r SEGMENT
??_R4fail_fast@gsl@@6B@ DD 00H ; gsl::fail_fast::`RTTI Complete Object Locator'
DD 00H
DD 00H
DD FLAT:??_R0?AUfail_fast@gsl@@@8
DD FLAT:??_R3fail_fast@gsl@@8
rdata$r ENDS
; COMDAT ??_R1A@?0A@EA@logic_error@std@@8
rdata$r SEGMENT
??_R1A@?0A@EA@logic_error@std@@8 DD FLAT:??_R0?AVlogic_error@std@@@8 ; std::logic_error::`RTTI Base Class Descriptor at (0,-1,0,64)'
DD 01H
DD 00H
DD 0ffffffffH
DD 00H
DD 040H
DD FLAT:??_R3logic_error@std@@8
rdata$r ENDS
; COMDAT ??_R2logic_error@std@@8
rdata$r SEGMENT
??_R2logic_error@std@@8 DD FLAT:??_R1A@?0A@EA@logic_error@std@@8 ; std::logic_error::`RTTI Base Class Array'
DD FLAT:??_R1A@?0A@EA@exception@std@@8
rdata$r ENDS
; COMDAT ??_R3logic_error@std@@8
rdata$r SEGMENT
??_R3logic_error@std@@8 DD 00H ; std::logic_error::`RTTI Class Hierarchy Descriptor'
DD 00H
DD 02H
DD FLAT:??_R2logic_error@std@@8
rdata$r ENDS
; COMDAT ??_R4logic_error@std@@6B@
rdata$r SEGMENT
??_R4logic_error@std@@6B@ DD 00H ; std::logic_error::`RTTI Complete Object Locator'
DD 00H
DD 00H
DD FLAT:??_R0?AVlogic_error@std@@@8
DD FLAT:??_R3logic_error@std@@8
rdata$r ENDS
; COMDAT ??_R1A@?0A@EA@exception@std@@8
rdata$r SEGMENT
??_R1A@?0A@EA@exception@std@@8 DD FLAT:??_R0?AVexception@std@@@8 ; std::exception::`RTTI Base Class Descriptor at (0,-1,0,64)'
DD 00H
DD 00H
DD 0ffffffffH
DD 00H
DD 040H
DD FLAT:??_R3exception@std@@8
rdata$r ENDS
; COMDAT ??_R2exception@std@@8
rdata$r SEGMENT
??_R2exception@std@@8 DD FLAT:??_R1A@?0A@EA@exception@std@@8 ; std::exception::`RTTI Base Class Array'
rdata$r ENDS
; COMDAT ??_R3exception@std@@8
rdata$r SEGMENT
??_R3exception@std@@8 DD 00H ; std::exception::`RTTI Class Hierarchy Descriptor'
DD 00H
DD 01H
DD FLAT:??_R2exception@std@@8
rdata$r ENDS
; COMDAT ??_R4exception@std@@6B@
rdata$r SEGMENT
??_R4exception@std@@6B@ DD 00H ; std::exception::`RTTI Complete Object Locator'
DD 00H
DD 00H
DD FLAT:??_R0?AVexception@std@@@8
DD FLAT:??_R3exception@std@@8
rdata$r ENDS
; COMDAT __CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z12
xdata$x SEGMENT
__CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z12 DD 00H
DD FLAT:??_R0?AVlogic_error@std@@@8
DD 00H
DD 0ffffffffH
ORG $+4
DD 0cH
DD FLAT:??0logic_error@std@@QAE@ABV01@@Z
xdata$x ENDS
; COMDAT ??_R0?AVlogic_error@std@@@8
data$r SEGMENT
??_R0?AVlogic_error@std@@@8 DD FLAT:??_7type_info@@6B@ ; std::logic_error `RTTI Type Descriptor'
DD 00H
DB '.?AVlogic_error@std@@', 00H
data$r ENDS
; COMDAT __CT??_R0?AUfail_fast@gsl@@@8??0fail_fast@gsl@@QAE@ABU01@@Z12
xdata$x SEGMENT
__CT??_R0?AUfail_fast@gsl@@@8??0fail_fast@gsl@@QAE@ABU01@@Z12 DD 00H
DD FLAT:??_R0?AUfail_fast@gsl@@@8
DD 00H
DD 0ffffffffH
ORG $+4
DD 0cH
DD FLAT:??0fail_fast@gsl@@QAE@ABU01@@Z
xdata$x ENDS
; COMDAT ??_R0?AUfail_fast@gsl@@@8
data$r SEGMENT
??_R0?AUfail_fast@gsl@@@8 DD FLAT:??_7type_info@@6B@ ; gsl::fail_fast `RTTI Type Descriptor'
DD 00H
DB '.?AUfail_fast@gsl@@', 00H
data$r ENDS
; COMDAT __CTA3?AUfail_fast@gsl@@
xdata$x SEGMENT
__CTA3?AUfail_fast@gsl@@ DD 03H
DD FLAT:__CT??_R0?AUfail_fast@gsl@@@8??0fail_fast@gsl@@QAE@ABU01@@Z12
DD FLAT:__CT??_R0?AVlogic_error@std@@@8??0logic_error@std@@QAE@ABV01@@Z12
DD FLAT:__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
xdata$x ENDS
; COMDAT __TI3?AUfail_fast@gsl@@
xdata$x SEGMENT
__TI3?AUfail_fast@gsl@@ DD 00H
DD FLAT:??1fail_fast@gsl@@UAE@XZ
DD 00H
DD FLAT:__CTA3?AUfail_fast@gsl@@
xdata$x ENDS
; COMDAT __CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12
xdata$x SEGMENT
__CT??_R0?AVexception@std@@@8??0exception@std@@QAE@ABV01@@Z12 DD 00H
DD FLAT:??_R0?AVexception@std@@@8
DD 00H
DD 0ffffffffH
ORG $+4
DD 0cH
DD FLAT:??0exception@std@@QAE@ABV01@@Z
xdata$x ENDS
; COMDAT ??_R0?AVexception@std@@@8
data$r SEGMENT
??_R0?AVexception@std@@@8 DD FLAT:??_7type_info@@6B@ ; std::exception `RTTI Type Descriptor'
DD 00H
DB '.?AVexception@std@@', 00H
data$r ENDS
; COMDAT ??_7fail_fast@gsl@@6B@
CONST SEGMENT
??_7fail_fast@gsl@@6B@ DD FLAT:??_R4fail_fast@gsl@@6B@ ; gsl::fail_fast::`vftable'
DD FLAT:??_Efail_fast@gsl@@UAEPAXI@Z
DD FLAT:?what@exception@std@@UBEPBDXZ
CONST ENDS
; COMDAT ??_7logic_error@std@@6B@
CONST SEGMENT
??_7logic_error@std@@6B@ DD FLAT:??_R4logic_error@std@@6B@ ; std::logic_error::`vftable'
DD FLAT:??_Elogic_error@std@@UAEPAXI@Z
DD FLAT:?what@exception@std@@UBEPBDXZ
CONST ENDS
; COMDAT ??_C@_0BC@EOODALEL@Unknown?5exception@
CONST SEGMENT
??_C@_0BC@EOODALEL@Unknown?5exception@ DB 'Unknown exception', 00H ; `string'
CONST ENDS
; COMDAT ??_7exception@std@@6B@
CONST SEGMENT
??_7exception@std@@6B@ DD FLAT:??_R4exception@std@@6B@ ; std::exception::`vftable'
DD FLAT:??_Eexception@std@@UAEPAXI@Z
DD FLAT:?what@exception@std@@UBEPBDXZ
CONST ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__unwindtable$??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QAE@PBHV?$extent_type@$0A@@details@2@@Z DD 0ffffffffH
DD 00H
DD 0ffffffffH
DD 00H
__ehfuncinfo$??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QAE@PBHV?$extent_type@$0A@@details@2@@Z DD 019930522H
DD 02H
DD FLAT:__unwindtable$??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QAE@PBHV?$extent_type@$0A@@details@2@@Z
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 01H
xdata$x ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__unwindtable$??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QAE@PAHV?$extent_type@$0A@@details@2@@Z DD 0ffffffffH
DD 00H
DD 0ffffffffH
DD 00H
__ehfuncinfo$??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QAE@PAHV?$extent_type@$0A@@details@2@@Z DD 019930522H
DD 02H
DD FLAT:__unwindtable$??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QAE@PAHV?$extent_type@$0A@@details@2@@Z
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 01H
xdata$x ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$??$?0$0A@X@?$span@$$CBH$0?0@gsl@@QAE@XZ DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 05H
xdata$x ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__ehfuncinfo$??$?0$0A@X@?$span@H$0?0@gsl@@QAE@XZ DD 019930522H
DD 00H
DD 00H
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 05H
xdata$x ENDS
; COMDAT xdata$x
xdata$x SEGMENT
__unwindtable$?foo@@YA_NXZ DD 0ffffffffH
DD FLAT:___std_terminate
DD 0ffffffffH
DD FLAT:___std_terminate
DD 0ffffffffH
DD FLAT:___std_terminate
__ehfuncinfo$?foo@@YA_NXZ DD 019930522H
DD 03H
DD FLAT:__unwindtable$?foo@@YA_NXZ
DD 2 DUP(00H)
DD 2 DUP(00H)
DD 00H
DD 01H
xdata$x ENDS
; Function compile flags: /Ogtp
; COMDAT ??$?0$0A@@?$extent_type@$0?0@details@gsl@@QAE@V?$extent_type@$0A@@12@@Z
_TEXT SEGMENT
_ext$ = 8 ; size = 1
??$?0$0A@@?$extent_type@$0?0@details@gsl@@QAE@V?$extent_type@$0A@@12@@Z PROC ; gsl::details::extent_type<-1>::extent_type<-1><0>, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 333
mov DWORD PTR [ecx], 0
; Line 334
mov eax, ecx
ret 4
??$?0$0A@@?$extent_type@$0?0@details@gsl@@QAE@V?$extent_type@$0A@@12@@Z ENDP ; gsl::details::extent_type<-1>::extent_type<-1><0>
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QAE@PBHV?$extent_type@$0A@@details@2@@Z
_TEXT SEGMENT
__$EHRec$ = -12 ; size = 12
_data$ = 8 ; size = 4
_ext$ = 12 ; size = 1
??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QAE@PBHV?$extent_type@$0A@@details@2@@Z PROC ; gsl::span<int const ,-1>::storage_type<gsl::details::extent_type<-1> >::storage_type<gsl::details::extent_type<-1> ><gsl::details::extent_type<0> >, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 597
push ebp
mov ebp, esp
push -1
push __ehhandler$??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QAE@PBHV?$extent_type@$0A@@details@2@@Z
mov eax, DWORD PTR fs:0
push eax
mov eax, DWORD PTR ___security_cookie
xor eax, ebp
push eax
lea eax, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, eax
; Line 596
mov eax, DWORD PTR _data$[ebp]
mov DWORD PTR [ecx+4], eax
; Line 600
mov eax, ecx
; Line 333
mov DWORD PTR [ecx], 0
; Line 600
mov ecx, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, ecx
pop ecx
mov esp, ebp
pop ebp
ret 8
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QAE@PBHV?$extent_type@$0A@@details@2@@Z:
mov edx, DWORD PTR [esp+8]
lea eax, DWORD PTR [edx+12]
mov ecx, DWORD PTR [edx-4]
xor ecx, eax
call @__security_check_cookie@4
mov eax, OFFSET __ehfuncinfo$??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QAE@PBHV?$extent_type@$0A@@details@2@@Z
jmp ___CxxFrameHandler3
text$x ENDS
??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QAE@PBHV?$extent_type@$0A@@details@2@@Z ENDP ; gsl::span<int const ,-1>::storage_type<gsl::details::extent_type<-1> >::storage_type<gsl::details::extent_type<-1> ><gsl::details::extent_type<0> >
; Function compile flags: /Ogtp
; COMDAT ??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QAE@PAHV?$extent_type@$0A@@details@2@@Z
_TEXT SEGMENT
__$EHRec$ = -12 ; size = 12
_data$ = 8 ; size = 4
_ext$ = 12 ; size = 1
??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QAE@PAHV?$extent_type@$0A@@details@2@@Z PROC ; gsl::span<int,-1>::storage_type<gsl::details::extent_type<-1> >::storage_type<gsl::details::extent_type<-1> ><gsl::details::extent_type<0> >, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 597
push ebp
mov ebp, esp
push -1
push __ehhandler$??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QAE@PAHV?$extent_type@$0A@@details@2@@Z
mov eax, DWORD PTR fs:0
push eax
mov eax, DWORD PTR ___security_cookie
xor eax, ebp
push eax
lea eax, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, eax
; Line 596
mov eax, DWORD PTR _data$[ebp]
mov DWORD PTR [ecx+4], eax
; Line 600
mov eax, ecx
; Line 333
mov DWORD PTR [ecx], 0
; Line 600
mov ecx, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, ecx
pop ecx
mov esp, ebp
pop ebp
ret 8
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QAE@PAHV?$extent_type@$0A@@details@2@@Z:
mov edx, DWORD PTR [esp+8]
lea eax, DWORD PTR [edx+12]
mov ecx, DWORD PTR [edx-4]
xor ecx, eax
call @__security_check_cookie@4
mov eax, OFFSET __ehfuncinfo$??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QAE@PAHV?$extent_type@$0A@@details@2@@Z
jmp ___CxxFrameHandler3
text$x ENDS
??$?0V?$extent_type@$0A@@details@gsl@@@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QAE@PAHV?$extent_type@$0A@@details@2@@Z ENDP ; gsl::span<int,-1>::storage_type<gsl::details::extent_type<-1> >::storage_type<gsl::details::extent_type<-1> ><gsl::details::extent_type<0> >
; Function compile flags: /Ogtp
; COMDAT ?size@?$extent_type@$0A@@details@gsl@@QBEHXZ
_TEXT SEGMENT
?size@?$extent_type@$0A@@details@gsl@@QBEHXZ PROC ; gsl::details::extent_type<0>::size, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 323
xor eax, eax
ret 0
?size@?$extent_type@$0A@@details@gsl@@QBEHXZ ENDP ; gsl::details::extent_type<0>::size
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??0?$extent_type@$0A@@details@gsl@@QAE@XZ
_TEXT SEGMENT
??0?$extent_type@$0A@@details@gsl@@QAE@XZ PROC ; gsl::details::extent_type<0>::extent_type<0>, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 311
mov eax, ecx
ret 0
??0?$extent_type@$0A@@details@gsl@@QAE@XZ ENDP ; gsl::details::extent_type<0>::extent_type<0>
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??$forward@Ufail_fast@gsl@@@std@@YA$$QAUfail_fast@gsl@@AAU12@@Z
_TEXT SEGMENT
__Arg$ = 8 ; size = 4
??$forward@Ufail_fast@gsl@@@std@@YA$$QAUfail_fast@gsl@@AAU12@@Z PROC ; std::forward<gsl::fail_fast>, COMDAT
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\type_traits
; Line 1573
push ebp
mov ebp, esp
; Line 1574
mov eax, DWORD PTR __Arg$[ebp]
; Line 1575
pop ebp
ret 0
??$forward@Ufail_fast@gsl@@@std@@YA$$QAUfail_fast@gsl@@AAU12@@Z ENDP ; std::forward<gsl::fail_fast>
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??$?0$0A@X@?$span@$$CBH$0?0@gsl@@QAE@XZ
_TEXT SEGMENT
__$EHRec$ = -12 ; size = 12
??$?0$0A@X@?$span@$$CBH$0?0@gsl@@QAE@XZ PROC ; gsl::span<int const ,-1>::span<int const ,-1><0,void>, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 384
push ebp
mov ebp, esp
push -1
push __ehhandler$??$?0$0A@X@?$span@$$CBH$0?0@gsl@@QAE@XZ
mov eax, DWORD PTR fs:0
push eax
mov eax, DWORD PTR ___security_cookie
xor eax, ebp
push eax
lea eax, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, eax
; Line 333
mov DWORD PTR [ecx], 0
; Line 384
mov eax, ecx
; Line 596
mov DWORD PTR [ecx+4], 0
; Line 384
mov ecx, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, ecx
pop ecx
mov esp, ebp
pop ebp
ret 0
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$??$?0$0A@X@?$span@$$CBH$0?0@gsl@@QAE@XZ:
mov edx, DWORD PTR [esp+8]
lea eax, DWORD PTR [edx+12]
mov ecx, DWORD PTR [edx-4]
xor ecx, eax
call @__security_check_cookie@4
mov eax, OFFSET __ehfuncinfo$??$?0$0A@X@?$span@$$CBH$0?0@gsl@@QAE@XZ
jmp ___CxxFrameHandler3
text$x ENDS
??$?0$0A@X@?$span@$$CBH$0?0@gsl@@QAE@XZ ENDP ; gsl::span<int const ,-1>::span<int const ,-1><0,void>
; Function compile flags: /Ogtp
; COMDAT ?data@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QBEPBHXZ
_TEXT SEGMENT
?data@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QBEPBHXZ PROC ; gsl::span<int const ,-1>::storage_type<gsl::details::extent_type<-1> >::data, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 602
mov eax, DWORD PTR [ecx+4]
ret 0
?data@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QBEPBHXZ ENDP ; gsl::span<int const ,-1>::storage_type<gsl::details::extent_type<-1> >::data
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ?data@?$span@$$CBH$0?0@gsl@@QBEPBHXZ
_TEXT SEGMENT
?data@?$span@$$CBH$0?0@gsl@@QBEPBHXZ PROC ; gsl::span<int const ,-1>::data, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 515
mov eax, DWORD PTR [ecx+4]
ret 0
?data@?$span@$$CBH$0?0@gsl@@QBEPBHXZ ENDP ; gsl::span<int const ,-1>::data
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ?size@?$span@$$CBH$0?0@gsl@@QBEHXZ
_TEXT SEGMENT
?size@?$span@$$CBH$0?0@gsl@@QBEHXZ PROC ; gsl::span<int const ,-1>::size, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 498
mov eax, DWORD PTR [ecx]
ret 0
?size@?$span@$$CBH$0?0@gsl@@QBEHXZ ENDP ; gsl::span<int const ,-1>::size
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??$?0$0A@X@?$span@H$0?0@gsl@@QAE@XZ
_TEXT SEGMENT
__$EHRec$ = -12 ; size = 12
??$?0$0A@X@?$span@H$0?0@gsl@@QAE@XZ PROC ; gsl::span<int,-1>::span<int,-1><0,void>, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 384
push ebp
mov ebp, esp
push -1
push __ehhandler$??$?0$0A@X@?$span@H$0?0@gsl@@QAE@XZ
mov eax, DWORD PTR fs:0
push eax
mov eax, DWORD PTR ___security_cookie
xor eax, ebp
push eax
lea eax, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, eax
; Line 333
mov DWORD PTR [ecx], 0
; Line 384
mov eax, ecx
; Line 596
mov DWORD PTR [ecx+4], 0
; Line 384
mov ecx, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, ecx
pop ecx
mov esp, ebp
pop ebp
ret 0
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$??$?0$0A@X@?$span@H$0?0@gsl@@QAE@XZ:
mov edx, DWORD PTR [esp+8]
lea eax, DWORD PTR [edx+12]
mov ecx, DWORD PTR [edx-4]
xor ecx, eax
call @__security_check_cookie@4
mov eax, OFFSET __ehfuncinfo$??$?0$0A@X@?$span@H$0?0@gsl@@QAE@XZ
jmp ___CxxFrameHandler3
text$x ENDS
??$?0$0A@X@?$span@H$0?0@gsl@@QAE@XZ ENDP ; gsl::span<int,-1>::span<int,-1><0,void>
; Function compile flags: /Ogtp
; COMDAT ?data@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QBEPAHXZ
_TEXT SEGMENT
?data@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QBEPAHXZ PROC ; gsl::span<int,-1>::storage_type<gsl::details::extent_type<-1> >::data, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 602
mov eax, DWORD PTR [ecx+4]
ret 0
?data@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QBEPAHXZ ENDP ; gsl::span<int,-1>::storage_type<gsl::details::extent_type<-1> >::data
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ?data@?$span@H$0?0@gsl@@QBEPAHXZ
_TEXT SEGMENT
?data@?$span@H$0?0@gsl@@QBEPAHXZ PROC ; gsl::span<int,-1>::data, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 515
mov eax, DWORD PTR [ecx+4]
ret 0
?data@?$span@H$0?0@gsl@@QBEPAHXZ ENDP ; gsl::span<int,-1>::data
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ?size@?$span@H$0?0@gsl@@QBEHXZ
_TEXT SEGMENT
?size@?$span@H$0?0@gsl@@QBEHXZ PROC ; gsl::span<int,-1>::size, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 498
mov eax, DWORD PTR [ecx]
ret 0
?size@?$span@H$0?0@gsl@@QBEHXZ ENDP ; gsl::span<int,-1>::size
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ?foo@@YA_NXZ
_TEXT SEGMENT
__$EHRec$ = -12 ; size = 12
?foo@@YA_NXZ PROC ; foo, COMDAT
; File c:\projects\gsl\tests\span_compile_only.cpp
; Line 42
push ebp
mov ebp, esp
push -1
push __ehhandler$?foo@@YA_NXZ
mov eax, DWORD PTR fs:0
push eax
mov eax, DWORD PTR ___security_cookie
xor eax, ebp
push eax
lea eax, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, eax
; Line 54
mov al, 1
; Line 56
mov ecx, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, ecx
pop ecx
mov esp, ebp
pop ebp
ret 0
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__ehhandler$?foo@@YA_NXZ:
mov edx, DWORD PTR [esp+8]
lea eax, DWORD PTR [edx+12]
mov ecx, DWORD PTR [edx-4]
xor ecx, eax
call @__security_check_cookie@4
mov eax, OFFSET __ehfuncinfo$?foo@@YA_NXZ
jmp ___CxxFrameHandler3
text$x ENDS
?foo@@YA_NXZ ENDP ; foo
; Function compile flags: /Ogtp
; COMDAT ??$throw_exception@Ufail_fast@gsl@@@details@gsl@@YAX$$QAUfail_fast@1@@Z
_TEXT SEGMENT
$T1 = -12 ; size = 12
_exception$ = 8 ; size = 4
??$throw_exception@Ufail_fast@gsl@@@details@gsl@@YAX$$QAUfail_fast@1@@Z PROC ; gsl::details::throw_exception<gsl::fail_fast>, COMDAT
; File c:\projects\gsl\include\gsl\gsl_assert
; Line 143
push ebp
mov ebp, esp
sub esp, 12 ; 0000000cH
; Line 144
push DWORD PTR _exception$[ebp]
call ??$forward@Ufail_fast@gsl@@@std@@YA$$QAUfail_fast@gsl@@AAU12@@Z ; std::forward<gsl::fail_fast>
add esp, 4
lea ecx, DWORD PTR $T1[ebp]
push eax
call ??0fail_fast@gsl@@QAE@$$QAU01@@Z
push OFFSET __TI3?AUfail_fast@gsl@@
lea eax, DWORD PTR $T1[ebp]
push eax
call __CxxThrowException@8
$LN3@throw_exce:
int 3
??$throw_exception@Ufail_fast@gsl@@@details@gsl@@YAX$$QAUfail_fast@1@@Z ENDP ; gsl::details::throw_exception<gsl::fail_fast>
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ?size@?$extent_type@$0?0@details@gsl@@QBEHXZ
_TEXT SEGMENT
?size@?$extent_type@$0?0@details@gsl@@QBEHXZ PROC ; gsl::details::extent_type<-1>::size, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\span
; Line 338
mov eax, DWORD PTR [ecx]
ret 0
?size@?$extent_type@$0?0@details@gsl@@QBEHXZ ENDP ; gsl::details::extent_type<-1>::size
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??_Gfail_fast@gsl@@UAEPAXI@Z
_TEXT SEGMENT
___flags$ = 8 ; size = 4
??_Gfail_fast@gsl@@UAEPAXI@Z PROC ; gsl::fail_fast::`scalar deleting destructor', COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 85
push esi
mov esi, ecx
; Line 86
lea eax, DWORD PTR [esi+4]
mov DWORD PTR [esi], OFFSET ??_7exception@std@@6B@
push eax
call ___std_exception_destroy
add esp, 4
test BYTE PTR ___flags$[ebp], 1
je SHORT $LN12@scalar
push 12 ; 0000000cH
push esi
call ??3@YAXPAXI@Z ; operator delete
add esp, 8
$LN12@scalar:
mov eax, esi
pop esi
pop ebp
ret 4
??_Gfail_fast@gsl@@UAEPAXI@Z ENDP ; gsl::fail_fast::`scalar deleting destructor'
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??0fail_fast@gsl@@QAE@$$QAU01@@Z
_TEXT SEGMENT
___that$ = 8 ; size = 4
??0fail_fast@gsl@@QAE@$$QAU01@@Z PROC ; gsl::fail_fast::fail_fast, COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 68
push esi
mov esi, ecx
xorps xmm0, xmm0
; Line 67
lea eax, DWORD PTR [esi+4]
; Line 69
push eax
mov DWORD PTR [esi], OFFSET ??_7exception@std@@6B@
movq QWORD PTR [eax], xmm0
mov eax, DWORD PTR ___that$[ebp]
add eax, 4
push eax
call ___std_exception_copy
add esp, 8
mov DWORD PTR [esi], OFFSET ??_7fail_fast@gsl@@6B@
mov eax, esi
pop esi
pop ebp
ret 4
??0fail_fast@gsl@@QAE@$$QAU01@@Z ENDP ; gsl::fail_fast::fail_fast
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??0fail_fast@gsl@@QAE@ABU01@@Z
_TEXT SEGMENT
___that$ = 8 ; size = 4
??0fail_fast@gsl@@QAE@ABU01@@Z PROC ; gsl::fail_fast::fail_fast, COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 68
push esi
mov esi, ecx
xorps xmm0, xmm0
; Line 67
lea eax, DWORD PTR [esi+4]
; Line 69
push eax
mov DWORD PTR [esi], OFFSET ??_7exception@std@@6B@
movq QWORD PTR [eax], xmm0
mov eax, DWORD PTR ___that$[ebp]
add eax, 4
push eax
call ___std_exception_copy
add esp, 8
mov DWORD PTR [esi], OFFSET ??_7fail_fast@gsl@@6B@
mov eax, esi
pop esi
pop ebp
ret 4
??0fail_fast@gsl@@QAE@ABU01@@Z ENDP ; gsl::fail_fast::fail_fast
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??1fail_fast@gsl@@UAE@XZ
_TEXT SEGMENT
??1fail_fast@gsl@@UAE@XZ PROC ; gsl::fail_fast::~fail_fast, COMDAT
; _this$ = ecx
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 86
lea eax, DWORD PTR [ecx+4]
mov DWORD PTR [ecx], OFFSET ??_7exception@std@@6B@
push eax
call ___std_exception_destroy
pop ecx
ret 0
??1fail_fast@gsl@@UAE@XZ ENDP ; gsl::fail_fast::~fail_fast
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??0fail_fast@gsl@@QAE@QBD@Z
_TEXT SEGMENT
__InitData$1 = -8 ; size = 8
_this$ = -4 ; size = 4
_message$ = 8 ; size = 4
??0fail_fast@gsl@@QAE@QBD@Z PROC ; gsl::fail_fast::fail_fast, COMDAT
; _this$ = ecx
; File c:\projects\gsl\include\gsl\gsl_assert
; Line 99
push ebp
mov ebp, esp
sub esp, 8
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 56
mov eax, DWORD PTR _message$[ebp]
xorps xmm0, xmm0
; File c:\projects\gsl\include\gsl\gsl_assert
; Line 99
push esi
mov esi, ecx
mov DWORD PTR _this$[ebp], esi
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 54
lea edx, DWORD PTR [esi+4]
; Line 56
mov DWORD PTR __InitData$1[ebp], eax
; Line 57
lea eax, DWORD PTR __InitData$1[ebp]
push edx
mov DWORD PTR [esi], OFFSET ??_7exception@std@@6B@
push eax
movq QWORD PTR [edx], xmm0
mov BYTE PTR __InitData$1[ebp+4], 1
call ___std_exception_copy
add esp, 8
; File c:\projects\gsl\include\gsl\gsl_assert
; Line 99
mov DWORD PTR [esi], OFFSET ??_7fail_fast@gsl@@6B@
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret 4
??0fail_fast@gsl@@QAE@QBD@Z ENDP ; gsl::fail_fast::fail_fast
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??_Glogic_error@std@@UAEPAXI@Z
_TEXT SEGMENT
___flags$ = 8 ; size = 4
??_Glogic_error@std@@UAEPAXI@Z PROC ; std::logic_error::`scalar deleting destructor', COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 85
push esi
mov esi, ecx
; Line 86
lea eax, DWORD PTR [esi+4]
mov DWORD PTR [esi], OFFSET ??_7exception@std@@6B@
push eax
call ___std_exception_destroy
add esp, 4
test BYTE PTR ___flags$[ebp], 1
je SHORT $LN9@scalar
push 12 ; 0000000cH
push esi
call ??3@YAXPAXI@Z ; operator delete
add esp, 8
$LN9@scalar:
mov eax, esi
pop esi
pop ebp
ret 4
??_Glogic_error@std@@UAEPAXI@Z ENDP ; std::logic_error::`scalar deleting destructor'
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??0logic_error@std@@QAE@$$QAV01@@Z
_TEXT SEGMENT
___that$ = 8 ; size = 4
??0logic_error@std@@QAE@$$QAV01@@Z PROC ; std::logic_error::logic_error, COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 68
push esi
mov esi, ecx
xorps xmm0, xmm0
; Line 67
lea eax, DWORD PTR [esi+4]
; Line 69
push eax
mov DWORD PTR [esi], OFFSET ??_7exception@std@@6B@
movq QWORD PTR [eax], xmm0
mov eax, DWORD PTR ___that$[ebp]
add eax, 4
push eax
call ___std_exception_copy
add esp, 8
mov DWORD PTR [esi], OFFSET ??_7logic_error@std@@6B@
mov eax, esi
pop esi
pop ebp
ret 4
??0logic_error@std@@QAE@$$QAV01@@Z ENDP ; std::logic_error::logic_error
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??0logic_error@std@@QAE@ABV01@@Z
_TEXT SEGMENT
___that$ = 8 ; size = 4
??0logic_error@std@@QAE@ABV01@@Z PROC ; std::logic_error::logic_error, COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 68
push esi
mov esi, ecx
xorps xmm0, xmm0
; Line 67
lea eax, DWORD PTR [esi+4]
; Line 69
push eax
mov DWORD PTR [esi], OFFSET ??_7exception@std@@6B@
movq QWORD PTR [eax], xmm0
mov eax, DWORD PTR ___that$[ebp]
add eax, 4
push eax
call ___std_exception_copy
add esp, 8
mov DWORD PTR [esi], OFFSET ??_7logic_error@std@@6B@
mov eax, esi
pop esi
pop ebp
ret 4
??0logic_error@std@@QAE@ABV01@@Z ENDP ; std::logic_error::logic_error
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??1logic_error@std@@UAE@XZ
_TEXT SEGMENT
??1logic_error@std@@UAE@XZ PROC ; std::logic_error::~logic_error, COMDAT
; _this$ = ecx
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 86
lea eax, DWORD PTR [ecx+4]
mov DWORD PTR [ecx], OFFSET ??_7exception@std@@6B@
push eax
call ___std_exception_destroy
pop ecx
ret 0
??1logic_error@std@@UAE@XZ ENDP ; std::logic_error::~logic_error
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??0logic_error@std@@QAE@PBD@Z
_TEXT SEGMENT
__InitData$1 = -8 ; size = 8
_this$ = -4 ; size = 4
__Message$ = 8 ; size = 4
??0logic_error@std@@QAE@PBD@Z PROC ; std::logic_error::logic_error, COMDAT
; _this$ = ecx
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\stdexcept
; Line 30
push ebp
mov ebp, esp
sub esp, 8
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 56
mov eax, DWORD PTR __Message$[ebp]
xorps xmm0, xmm0
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\stdexcept
; Line 30
push esi
mov esi, ecx
mov DWORD PTR _this$[ebp], esi
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 54
lea edx, DWORD PTR [esi+4]
; Line 56
mov DWORD PTR __InitData$1[ebp], eax
; Line 57
lea eax, DWORD PTR __InitData$1[ebp]
push edx
mov DWORD PTR [esi], OFFSET ??_7exception@std@@6B@
push eax
movq QWORD PTR [edx], xmm0
mov BYTE PTR __InitData$1[ebp+4], 1
call ___std_exception_copy
add esp, 8
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\stdexcept
; Line 30
mov DWORD PTR [esi], OFFSET ??_7logic_error@std@@6B@
; Line 31
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret 4
??0logic_error@std@@QAE@PBD@Z ENDP ; std::logic_error::logic_error
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??_Gexception@std@@UAEPAXI@Z
_TEXT SEGMENT
___flags$ = 8 ; size = 4
??_Gexception@std@@UAEPAXI@Z PROC ; std::exception::`scalar deleting destructor', COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 85
push esi
mov esi, ecx
; Line 86
lea eax, DWORD PTR [esi+4]
mov DWORD PTR [esi], OFFSET ??_7exception@std@@6B@
push eax
call ___std_exception_destroy
add esp, 4
test BYTE PTR ___flags$[ebp], 1
je SHORT $LN6@scalar
push 12 ; 0000000cH
push esi
call ??3@YAXPAXI@Z ; operator delete
add esp, 8
$LN6@scalar:
mov eax, esi
pop esi
pop ebp
ret 4
??_Gexception@std@@UAEPAXI@Z ENDP ; std::exception::`scalar deleting destructor'
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ?what@exception@std@@UBEPBDXZ
_TEXT SEGMENT
?what@exception@std@@UBEPBDXZ PROC ; std::exception::what, COMDAT
; _this$ = ecx
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 91
mov ecx, DWORD PTR [ecx+4]
mov eax, OFFSET ??_C@_0BC@EOODALEL@Unknown?5exception@
test ecx, ecx
cmovne eax, ecx
; Line 92
ret 0
?what@exception@std@@UBEPBDXZ ENDP ; std::exception::what
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??1exception@std@@UAE@XZ
_TEXT SEGMENT
??1exception@std@@UAE@XZ PROC ; std::exception::~exception, COMDAT
; _this$ = ecx
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 86
lea eax, DWORD PTR [ecx+4]
mov DWORD PTR [ecx], OFFSET ??_7exception@std@@6B@
push eax
call ___std_exception_destroy
pop ecx
; Line 87
ret 0
??1exception@std@@UAE@XZ ENDP ; std::exception::~exception
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??0exception@std@@QAE@ABV01@@Z
_TEXT SEGMENT
__Other$ = 8 ; size = 4
??0exception@std@@QAE@ABV01@@Z PROC ; std::exception::exception, COMDAT
; _this$ = ecx
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 68
push ebp
mov ebp, esp
push esi
mov esi, ecx
xorps xmm0, xmm0
lea eax, DWORD PTR [esi+4]
; Line 69
push eax
mov DWORD PTR [esi], OFFSET ??_7exception@std@@6B@
movq QWORD PTR [eax], xmm0
mov eax, DWORD PTR __Other$[ebp]
add eax, 4
push eax
call ___std_exception_copy
add esp, 8
; Line 70
mov eax, esi
pop esi
pop ebp
ret 4
??0exception@std@@QAE@ABV01@@Z ENDP ; std::exception::exception
_TEXT ENDS
; Function compile flags: /Ogtp
; COMDAT ??0exception@std@@QAE@QBD@Z
_TEXT SEGMENT
__InitData$ = -8 ; size = 8
__Message$ = 8 ; size = 4
??0exception@std@@QAE@QBD@Z PROC ; std::exception::exception, COMDAT
; _this$ = ecx
; File c:\program files (x86)\microsoft visual studio\2017\community\vc\tools\msvc\14.16.27023\include\vcruntime_exception.h
; Line 55
push ebp
mov ebp, esp
sub esp, 8
; Line 56
mov eax, DWORD PTR __Message$[ebp]
xorps xmm0, xmm0
push esi
mov esi, ecx
mov DWORD PTR __InitData$[ebp], eax
lea edx, DWORD PTR [esi+4]
mov BYTE PTR __InitData$[ebp+4], 1
; Line 57
push edx
lea eax, DWORD PTR __InitData$[ebp]
mov DWORD PTR [esi], OFFSET ??_7exception@std@@6B@
push eax
movq QWORD PTR [edx], xmm0
call ___std_exception_copy
add esp, 8
; Line 58
mov eax, esi
pop esi
mov esp, ebp
pop ebp
ret 4
??0exception@std@@QAE@QBD@Z ENDP ; std::exception::exception
_TEXT ENDS
END