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

1661 lines
56 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 MSVCRTD
INCLUDELIB OLDNAMES
PUBLIC ?__empty_global_delete@@YAXPAX@Z ; __empty_global_delete
PUBLIC ?__empty_global_delete@@YAXPAXI@Z ; __empty_global_delete
PUBLIC ??0exception@std@@QAE@QBD@Z ; std::exception::exception
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@PBD@Z ; std::logic_error::logic_error
PUBLIC ??1logic_error@std@@UAE@XZ ; std::logic_error::~logic_error
PUBLIC ??0logic_error@std@@QAE@ABV01@@Z ; std::logic_error::logic_error
PUBLIC ??0logic_error@std@@QAE@$$QAV01@@Z ; std::logic_error::logic_error
PUBLIC ??_Glogic_error@std@@UAEPAXI@Z ; std::logic_error::`scalar deleting destructor'
PUBLIC ??0fail_fast@gsl@@QAE@QBD@Z ; gsl::fail_fast::fail_fast
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 ?size@?$extent_type@$0?0@details@gsl@@QBEHXZ ; gsl::details::extent_type<-1>::size
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 ?size@?$span@H$0?0@gsl@@QBEHXZ ; gsl::span<int,-1>::size
PUBLIC ?data@?$span@H$0?0@gsl@@QBEPAHXZ ; gsl::span<int,-1>::data
PUBLIC ?data@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QBEPAHXZ ; gsl::span<int,-1>::storage_type<gsl::details::extent_type<-1> >::data
PUBLIC ??$?0$0A@X@?$span@H$0?0@gsl@@QAE@XZ ; gsl::span<int,-1>::span<int,-1><0,void>
PUBLIC ?size@?$span@$$CBH$0?0@gsl@@QBEHXZ ; gsl::span<int const ,-1>::size
PUBLIC ?data@?$span@$$CBH$0?0@gsl@@QBEPBHXZ ; gsl::span<int const ,-1>::data
PUBLIC ?data@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QBEPBHXZ ; gsl::span<int const ,-1>::storage_type<gsl::details::extent_type<-1> >::data
PUBLIC ??$?0$0A@X@?$span@$$CBH$0?0@gsl@@QAE@XZ ; gsl::span<int const ,-1>::span<int const ,-1><0,void>
PUBLIC ??$forward@Ufail_fast@gsl@@@std@@YA$$QAUfail_fast@gsl@@AAU12@@Z ; std::forward<gsl::fail_fast>
PUBLIC ??0?$extent_type@$0A@@details@gsl@@QAE@XZ ; gsl::details::extent_type<0>::extent_type<0>
PUBLIC ?size@?$extent_type@$0A@@details@gsl@@QBEHXZ ; gsl::details::extent_type<0>::size
PUBLIC ??$?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 ; gsl::span<int,-1>::storage_type<gsl::details::extent_type<-1> >::storage_type<gsl::details::extent_type<-1> ><gsl::details::extent_type<0> >
PUBLIC ??$?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 ; gsl::span<int const ,-1>::storage_type<gsl::details::extent_type<-1> >::storage_type<gsl::details::extent_type<-1> ><gsl::details::extent_type<0> >
PUBLIC ??$?0$0A@@?$extent_type@$0?0@details@gsl@@QAE@V?$extent_type@$0A@@12@@Z ; gsl::details::extent_type<-1>::extent_type<-1><0>
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 ??_C@_0ED@GGAHHHOA@GSL?3?5Precondition?5failure?5at?5c?3@ ; `string'
PUBLIC ??_C@_0ED@HPBMEGKB@GSL?3?5Precondition?5failure?5at?5c?3@ ; `string'
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_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 @_RTC_CheckStackVars@8:PROC
EXTRN @__security_check_cookie@4:PROC
EXTRN __CxxThrowException@8:PROC
EXTRN __RTC_CheckEsp:PROC
EXTRN __RTC_InitBase:PROC
EXTRN __RTC_Shutdown:PROC
EXTRN ___CxxFrameHandler3:PROC
EXTRN ??_7type_info@@6B@:QWORD ; type_info::`vftable'
EXTRN ___security_cookie:DWORD
; COMDAT rtc$TMZ
rtc$TMZ SEGMENT
__RTC_Shutdown.rtc$TMZ DD FLAT:__RTC_Shutdown
rtc$TMZ ENDS
; COMDAT rtc$IMZ
rtc$IMZ SEGMENT
__RTC_InitBase.rtc$IMZ DD FLAT:__RTC_InitBase
rtc$IMZ ENDS
; 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 ??_C@_0ED@HPBMEGKB@GSL?3?5Precondition?5failure?5at?5c?3@
CONST SEGMENT
??_C@_0ED@HPBMEGKB@GSL?3?5Precondition?5failure?5at?5c?3@ DB 'GSL: Precon'
DB 'dition failure at c:\projects\gsl\include\gsl\span: 599', 00H ; `string'
CONST ENDS
; COMDAT ??_C@_0ED@GGAHHHOA@GSL?3?5Precondition?5failure?5at?5c?3@
CONST SEGMENT
??_C@_0ED@GGAHHHOA@GSL?3?5Precondition?5failure?5at?5c?3@ DB 'GSL: Precon'
DB 'dition failure at c:\projects\gsl\include\gsl\span: 598', 00H ; `string'
CONST 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 FLAT:__unwindfunclet$??$?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$0
DD 0ffffffffH
DD FLAT:__unwindfunclet$??$?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$1
__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 FLAT:__unwindfunclet$??$?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$0
DD 0ffffffffH
DD FLAT:__unwindfunclet$??$?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$1
__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
; Function compile flags: /Odtp /RTCsu
; COMDAT ??$?0$0A@@?$extent_type@$0?0@details@gsl@@QAE@V?$extent_type@$0A@@12@@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
_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 334
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
; Line 333
lea ecx, DWORD PTR _ext$[ebp]
call ?size@?$extent_type@$0A@@details@gsl@@QBEHXZ ; gsl::details::extent_type<0>::size
mov ecx, DWORD PTR _this$[ebp]
mov DWORD PTR [ecx], eax
; Line 334
mov eax, DWORD PTR _this$[ebp]
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
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: /Odtp /RTCsu
; 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
tv141 = -60 ; size = 4
tv148 = -56 ; size = 4
tv134 = -52 ; size = 4
tv144 = -48 ; size = 4
$T2 = -44 ; size = 4
$T3 = -40 ; size = 12
$T4 = -28 ; size = 12
_this$ = -16 ; size = 4
__$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
sub esp, 48 ; 00000030H
push edi
push ecx
lea edi, DWORD PTR [ebp-60]
mov ecx, 12 ; 0000000cH
mov eax, -858993460 ; ccccccccH
rep stosd
pop ecx
mov eax, DWORD PTR ___security_cookie
xor eax, ebp
push eax
lea eax, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, eax
mov DWORD PTR _this$[ebp], ecx
mov DWORD PTR $T2[ebp], 0
; Line 596
movzx eax, BYTE PTR _ext$[ebp]
push eax
mov ecx, DWORD PTR _this$[ebp]
call ??$?0$0A@@?$extent_type@$0?0@details@gsl@@QAE@V?$extent_type@$0A@@12@@Z ; gsl::details::extent_type<-1>::extent_type<-1><0>
mov ecx, DWORD PTR _this$[ebp]
mov edx, DWORD PTR _data$[ebp]
mov DWORD PTR [ecx+4], edx
; Line 598
mov ecx, DWORD PTR _this$[ebp]
call ?size@?$extent_type@$0?0@details@gsl@@QBEHXZ ; gsl::details::extent_type<-1>::size
test eax, eax
jl SHORT $LN3@extent_typ
jmp SHORT $LN4@extent_typ
$LN3@extent_typ:
push OFFSET ??_C@_0ED@GGAHHHOA@GSL?3?5Precondition?5failure?5at?5c?3@
lea ecx, DWORD PTR $T4[ebp]
call ??0fail_fast@gsl@@QAE@QBD@Z ; gsl::fail_fast::fail_fast
mov DWORD PTR tv144[ebp], eax
mov eax, DWORD PTR tv144[ebp]
mov DWORD PTR tv134[ebp], eax
mov DWORD PTR __$EHRec$[ebp+8], 0
mov ecx, DWORD PTR $T2[ebp]
or ecx, 1
mov DWORD PTR $T2[ebp], ecx
mov edx, DWORD PTR tv134[ebp]
push edx
call ??$throw_exception@Ufail_fast@gsl@@@details@gsl@@YAX$$QAUfail_fast@1@@Z ; gsl::details::throw_exception<gsl::fail_fast>
$LN4@extent_typ:
mov DWORD PTR __$EHRec$[ebp+8], -1
mov eax, DWORD PTR $T2[ebp]
and eax, 1
je SHORT $LN9@extent_typ
and DWORD PTR $T2[ebp], -2 ; fffffffeH
lea ecx, DWORD PTR $T4[ebp]
call ??1fail_fast@gsl@@UAE@XZ
$LN9@extent_typ:
; Line 599
cmp DWORD PTR _data$[ebp], 0
jne SHORT $LN6@extent_typ
mov ecx, DWORD PTR _this$[ebp]
call ?size@?$extent_type@$0?0@details@gsl@@QBEHXZ ; gsl::details::extent_type<-1>::size
test eax, eax
je SHORT $LN6@extent_typ
push OFFSET ??_C@_0ED@HPBMEGKB@GSL?3?5Precondition?5failure?5at?5c?3@
lea ecx, DWORD PTR $T3[ebp]
call ??0fail_fast@gsl@@QAE@QBD@Z ; gsl::fail_fast::fail_fast
mov DWORD PTR tv148[ebp], eax
mov ecx, DWORD PTR tv148[ebp]
mov DWORD PTR tv141[ebp], ecx
mov DWORD PTR __$EHRec$[ebp+8], 1
mov edx, DWORD PTR $T2[ebp]
or edx, 2
mov DWORD PTR $T2[ebp], edx
mov eax, DWORD PTR tv141[ebp]
push eax
call ??$throw_exception@Ufail_fast@gsl@@@details@gsl@@YAX$$QAUfail_fast@1@@Z ; gsl::details::throw_exception<gsl::fail_fast>
$LN6@extent_typ:
mov DWORD PTR __$EHRec$[ebp+8], -1
mov ecx, DWORD PTR $T2[ebp]
and ecx, 2
je SHORT $LN1@extent_typ
and DWORD PTR $T2[ebp], -3 ; fffffffdH
lea ecx, DWORD PTR $T3[ebp]
call ??1fail_fast@gsl@@UAE@XZ
$LN1@extent_typ:
; Line 600
mov eax, DWORD PTR _this$[ebp]
$LN2@extent_typ:
mov ecx, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, ecx
pop ecx
pop edi
add esp, 60 ; 0000003cH
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 8
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__unwindfunclet$??$?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$0:
mov eax, DWORD PTR $T2[ebp]
and eax, 1
je $LN8@extent_typ
and DWORD PTR $T2[ebp], -2 ; fffffffeH
lea ecx, DWORD PTR $T4[ebp]
jmp ??1fail_fast@gsl@@UAE@XZ
$LN8@extent_typ:
ret 0
__unwindfunclet$??$?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$1:
mov eax, DWORD PTR $T2[ebp]
and eax, 2
je $LN11@extent_typ
and DWORD PTR $T2[ebp], -3 ; fffffffdH
lea ecx, DWORD PTR $T3[ebp]
jmp ??1fail_fast@gsl@@UAE@XZ
$LN11@extent_typ:
ret 0
__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-56]
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: /Odtp /RTCsu
; 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
tv141 = -60 ; size = 4
tv148 = -56 ; size = 4
tv134 = -52 ; size = 4
tv144 = -48 ; size = 4
$T2 = -44 ; size = 4
$T3 = -40 ; size = 12
$T4 = -28 ; size = 12
_this$ = -16 ; size = 4
__$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
sub esp, 48 ; 00000030H
push edi
push ecx
lea edi, DWORD PTR [ebp-60]
mov ecx, 12 ; 0000000cH
mov eax, -858993460 ; ccccccccH
rep stosd
pop ecx
mov eax, DWORD PTR ___security_cookie
xor eax, ebp
push eax
lea eax, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, eax
mov DWORD PTR _this$[ebp], ecx
mov DWORD PTR $T2[ebp], 0
; Line 596
movzx eax, BYTE PTR _ext$[ebp]
push eax
mov ecx, DWORD PTR _this$[ebp]
call ??$?0$0A@@?$extent_type@$0?0@details@gsl@@QAE@V?$extent_type@$0A@@12@@Z ; gsl::details::extent_type<-1>::extent_type<-1><0>
mov ecx, DWORD PTR _this$[ebp]
mov edx, DWORD PTR _data$[ebp]
mov DWORD PTR [ecx+4], edx
; Line 598
mov ecx, DWORD PTR _this$[ebp]
call ?size@?$extent_type@$0?0@details@gsl@@QBEHXZ ; gsl::details::extent_type<-1>::size
test eax, eax
jl SHORT $LN3@extent_typ
jmp SHORT $LN4@extent_typ
$LN3@extent_typ:
push OFFSET ??_C@_0ED@GGAHHHOA@GSL?3?5Precondition?5failure?5at?5c?3@
lea ecx, DWORD PTR $T4[ebp]
call ??0fail_fast@gsl@@QAE@QBD@Z ; gsl::fail_fast::fail_fast
mov DWORD PTR tv144[ebp], eax
mov eax, DWORD PTR tv144[ebp]
mov DWORD PTR tv134[ebp], eax
mov DWORD PTR __$EHRec$[ebp+8], 0
mov ecx, DWORD PTR $T2[ebp]
or ecx, 1
mov DWORD PTR $T2[ebp], ecx
mov edx, DWORD PTR tv134[ebp]
push edx
call ??$throw_exception@Ufail_fast@gsl@@@details@gsl@@YAX$$QAUfail_fast@1@@Z ; gsl::details::throw_exception<gsl::fail_fast>
$LN4@extent_typ:
mov DWORD PTR __$EHRec$[ebp+8], -1
mov eax, DWORD PTR $T2[ebp]
and eax, 1
je SHORT $LN9@extent_typ
and DWORD PTR $T2[ebp], -2 ; fffffffeH
lea ecx, DWORD PTR $T4[ebp]
call ??1fail_fast@gsl@@UAE@XZ
$LN9@extent_typ:
; Line 599
cmp DWORD PTR _data$[ebp], 0
jne SHORT $LN6@extent_typ
mov ecx, DWORD PTR _this$[ebp]
call ?size@?$extent_type@$0?0@details@gsl@@QBEHXZ ; gsl::details::extent_type<-1>::size
test eax, eax
je SHORT $LN6@extent_typ
push OFFSET ??_C@_0ED@HPBMEGKB@GSL?3?5Precondition?5failure?5at?5c?3@
lea ecx, DWORD PTR $T3[ebp]
call ??0fail_fast@gsl@@QAE@QBD@Z ; gsl::fail_fast::fail_fast
mov DWORD PTR tv148[ebp], eax
mov ecx, DWORD PTR tv148[ebp]
mov DWORD PTR tv141[ebp], ecx
mov DWORD PTR __$EHRec$[ebp+8], 1
mov edx, DWORD PTR $T2[ebp]
or edx, 2
mov DWORD PTR $T2[ebp], edx
mov eax, DWORD PTR tv141[ebp]
push eax
call ??$throw_exception@Ufail_fast@gsl@@@details@gsl@@YAX$$QAUfail_fast@1@@Z ; gsl::details::throw_exception<gsl::fail_fast>
$LN6@extent_typ:
mov DWORD PTR __$EHRec$[ebp+8], -1
mov ecx, DWORD PTR $T2[ebp]
and ecx, 2
je SHORT $LN1@extent_typ
and DWORD PTR $T2[ebp], -3 ; fffffffdH
lea ecx, DWORD PTR $T3[ebp]
call ??1fail_fast@gsl@@UAE@XZ
$LN1@extent_typ:
; Line 600
mov eax, DWORD PTR _this$[ebp]
$LN2@extent_typ:
mov ecx, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, ecx
pop ecx
pop edi
add esp, 60 ; 0000003cH
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 8
_TEXT ENDS
; COMDAT text$x
text$x SEGMENT
__unwindfunclet$??$?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$0:
mov eax, DWORD PTR $T2[ebp]
and eax, 1
je $LN8@extent_typ
and DWORD PTR $T2[ebp], -2 ; fffffffeH
lea ecx, DWORD PTR $T4[ebp]
jmp ??1fail_fast@gsl@@UAE@XZ
$LN8@extent_typ:
ret 0
__unwindfunclet$??$?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$1:
mov eax, DWORD PTR $T2[ebp]
and eax, 2
je $LN11@extent_typ
and DWORD PTR $T2[ebp], -3 ; fffffffdH
lea ecx, DWORD PTR $T3[ebp]
jmp ??1fail_fast@gsl@@UAE@XZ
$LN11@extent_typ:
ret 0
__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-56]
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: /Odtp /RTCsu
; COMDAT ?size@?$extent_type@$0A@@details@gsl@@QBEHXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?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
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
xor eax, eax
mov esp, ebp
pop ebp
ret 0
?size@?$extent_type@$0A@@details@gsl@@QBEHXZ ENDP ; gsl::details::extent_type<0>::size
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??0?$extent_type@$0A@@details@gsl@@QAE@XZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
??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
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov eax, DWORD PTR _this$[ebp]
mov esp, ebp
pop ebp
ret 0
??0?$extent_type@$0A@@details@gsl@@QAE@XZ ENDP ; gsl::details::extent_type<0>::extent_type<0>
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; 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: /Odtp /RTCsu
; COMDAT ??$?0$0A@X@?$span@$$CBH$0?0@gsl@@QAE@XZ
_TEXT SEGMENT
$T2 = -17 ; size = 1
_this$ = -16 ; size = 4
__$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
sub esp, 8
mov DWORD PTR [ebp-20], -858993460 ; ccccccccH
mov DWORD PTR [ebp-16], -858993460 ; ccccccccH
mov eax, DWORD PTR ___security_cookie
xor eax, ebp
push eax
lea eax, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, eax
mov DWORD PTR _this$[ebp], ecx
; Line 383
lea ecx, DWORD PTR $T2[ebp]
call ??0?$extent_type@$0A@@details@gsl@@QAE@XZ ; gsl::details::extent_type<0>::extent_type<0>
mov al, BYTE PTR [eax]
movzx ecx, al
push ecx
push 0
mov ecx, DWORD PTR _this$[ebp]
call ??$?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 ; gsl::span<int const ,-1>::storage_type<gsl::details::extent_type<-1> >::storage_type<gsl::details::extent_type<-1> ><gsl::details::extent_type<0> >
; Line 384
mov eax, DWORD PTR _this$[ebp]
mov ecx, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, ecx
pop ecx
add esp, 20 ; 00000014H
cmp ebp, esp
call __RTC_CheckEsp
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-12]
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: /Odtp /RTCsu
; COMDAT ?data@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QBEPBHXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?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
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov eax, DWORD PTR _this$[ebp]
mov eax, DWORD PTR [eax+4]
mov esp, ebp
pop ebp
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: /Odtp /RTCsu
; COMDAT ?data@?$span@$$CBH$0?0@gsl@@QBEPBHXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?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
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov ecx, DWORD PTR _this$[ebp]
call ?data@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@$$CBH$0?0@gsl@@QBEPBHXZ ; gsl::span<int const ,-1>::storage_type<gsl::details::extent_type<-1> >::data
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 0
?data@?$span@$$CBH$0?0@gsl@@QBEPBHXZ ENDP ; gsl::span<int const ,-1>::data
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ?size@?$span@$$CBH$0?0@gsl@@QBEHXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?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
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov ecx, DWORD PTR _this$[ebp]
call ?size@?$extent_type@$0?0@details@gsl@@QBEHXZ ; gsl::details::extent_type<-1>::size
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 0
?size@?$span@$$CBH$0?0@gsl@@QBEHXZ ENDP ; gsl::span<int const ,-1>::size
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??$?0$0A@X@?$span@H$0?0@gsl@@QAE@XZ
_TEXT SEGMENT
$T2 = -17 ; size = 1
_this$ = -16 ; size = 4
__$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
sub esp, 8
mov DWORD PTR [ebp-20], -858993460 ; ccccccccH
mov DWORD PTR [ebp-16], -858993460 ; ccccccccH
mov eax, DWORD PTR ___security_cookie
xor eax, ebp
push eax
lea eax, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, eax
mov DWORD PTR _this$[ebp], ecx
; Line 383
lea ecx, DWORD PTR $T2[ebp]
call ??0?$extent_type@$0A@@details@gsl@@QAE@XZ ; gsl::details::extent_type<0>::extent_type<0>
mov al, BYTE PTR [eax]
movzx ecx, al
push ecx
push 0
mov ecx, DWORD PTR _this$[ebp]
call ??$?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 ; gsl::span<int,-1>::storage_type<gsl::details::extent_type<-1> >::storage_type<gsl::details::extent_type<-1> ><gsl::details::extent_type<0> >
; Line 384
mov eax, DWORD PTR _this$[ebp]
mov ecx, DWORD PTR __$EHRec$[ebp]
mov DWORD PTR fs:0, ecx
pop ecx
add esp, 20 ; 00000014H
cmp ebp, esp
call __RTC_CheckEsp
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-12]
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: /Odtp /RTCsu
; COMDAT ?data@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QBEPAHXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?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
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov eax, DWORD PTR _this$[ebp]
mov eax, DWORD PTR [eax+4]
mov esp, ebp
pop ebp
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: /Odtp /RTCsu
; COMDAT ?data@?$span@H$0?0@gsl@@QBEPAHXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?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
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov ecx, DWORD PTR _this$[ebp]
call ?data@?$storage_type@V?$extent_type@$0?0@details@gsl@@@?$span@H$0?0@gsl@@QBEPAHXZ ; gsl::span<int,-1>::storage_type<gsl::details::extent_type<-1> >::data
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 0
?data@?$span@H$0?0@gsl@@QBEPAHXZ ENDP ; gsl::span<int,-1>::data
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ?size@?$span@H$0?0@gsl@@QBEHXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?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
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov ecx, DWORD PTR _this$[ebp]
call ?size@?$extent_type@$0?0@details@gsl@@QBEHXZ ; gsl::details::extent_type<-1>::size
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 0
?size@?$span@H$0?0@gsl@@QBEHXZ ENDP ; gsl::span<int,-1>::size
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
_TEXT SEGMENT
tv95 = -64 ; size = 4
tv84 = -60 ; size = 4
tv73 = -56 ; size = 4
_s2$1 = -48 ; size = 8
_cs$2 = -32 ; size = 8
_s$3 = -16 ; size = 8
_ret$4 = -1 ; size = 1
?foo@@YA_NXZ PROC ; foo
; File c:\projects\gsl\tests\span_compile_only.cpp
; Line 42
push ebp
mov ebp, esp
sub esp, 64 ; 00000040H
push edi
lea edi, DWORD PTR [ebp-64]
mov ecx, 16 ; 00000010H
mov eax, -858993460 ; ccccccccH
rep stosd
; Line 44
mov BYTE PTR _ret$4[ebp], 1
; Line 45
lea ecx, DWORD PTR _s$3[ebp]
call ??$?0$0A@X@?$span@H$0?0@gsl@@QAE@XZ ; gsl::span<int,-1>::span<int,-1><0,void>
; Line 46
movzx eax, BYTE PTR _ret$4[ebp]
test eax, eax
jne SHORT $LN4@foo
lea ecx, DWORD PTR _s$3[ebp]
call ?size@?$span@H$0?0@gsl@@QBEHXZ ; gsl::span<int,-1>::size
test eax, eax
jne SHORT $LN3@foo
lea ecx, DWORD PTR _s$3[ebp]
call ?data@?$span@H$0?0@gsl@@QBEPAHXZ ; gsl::span<int,-1>::data
test eax, eax
je SHORT $LN4@foo
$LN3@foo:
mov DWORD PTR tv73[ebp], 0
jmp SHORT $LN5@foo
$LN4@foo:
mov DWORD PTR tv73[ebp], 1
$LN5@foo:
mov cl, BYTE PTR tv73[ebp]
mov BYTE PTR _ret$4[ebp], cl
; Line 48
lea ecx, DWORD PTR _cs$2[ebp]
call ??$?0$0A@X@?$span@$$CBH$0?0@gsl@@QAE@XZ ; gsl::span<int const ,-1>::span<int const ,-1><0,void>
; Line 49
movzx edx, BYTE PTR _ret$4[ebp]
test edx, edx
jne SHORT $LN7@foo
lea ecx, DWORD PTR _cs$2[ebp]
call ?size@?$span@$$CBH$0?0@gsl@@QBEHXZ ; gsl::span<int const ,-1>::size
test eax, eax
jne SHORT $LN6@foo
lea ecx, DWORD PTR _cs$2[ebp]
call ?data@?$span@$$CBH$0?0@gsl@@QBEPBHXZ ; gsl::span<int const ,-1>::data
test eax, eax
je SHORT $LN7@foo
$LN6@foo:
mov DWORD PTR tv84[ebp], 0
jmp SHORT $LN8@foo
$LN7@foo:
mov DWORD PTR tv84[ebp], 1
$LN8@foo:
mov al, BYTE PTR tv84[ebp]
mov BYTE PTR _ret$4[ebp], al
; Line 51
lea ecx, DWORD PTR _s2$1[ebp]
call ??$?0$0A@X@?$span@H$0?0@gsl@@QAE@XZ ; gsl::span<int,-1>::span<int,-1><0,void>
; Line 52
movzx ecx, BYTE PTR _ret$4[ebp]
test ecx, ecx
jne SHORT $LN10@foo
lea ecx, DWORD PTR _s2$1[ebp]
call ?size@?$span@H$0?0@gsl@@QBEHXZ ; gsl::span<int,-1>::size
test eax, eax
jne SHORT $LN9@foo
lea ecx, DWORD PTR _s2$1[ebp]
call ?data@?$span@H$0?0@gsl@@QBEPAHXZ ; gsl::span<int,-1>::data
test eax, eax
je SHORT $LN10@foo
$LN9@foo:
mov DWORD PTR tv95[ebp], 0
jmp SHORT $LN11@foo
$LN10@foo:
mov DWORD PTR tv95[ebp], 1
$LN11@foo:
mov dl, BYTE PTR tv95[ebp]
mov BYTE PTR _ret$4[ebp], dl
; Line 54
mov al, BYTE PTR _ret$4[ebp]
; Line 56
push edx
mov ecx, ebp
push eax
lea edx, DWORD PTR $LN16@foo
call @_RTC_CheckStackVars@8
pop eax
pop edx
pop edi
add esp, 64 ; 00000040H
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 0
npad 1
$LN16@foo:
DD 3
DD $LN15@foo
$LN15@foo:
DD -16 ; fffffff0H
DD 8
DD $LN12@foo
DD -32 ; ffffffe0H
DD 8
DD $LN13@foo
DD -48 ; ffffffd0H
DD 8
DD $LN14@foo
$LN14@foo:
DB 115 ; 00000073H
DB 50 ; 00000032H
DB 0
$LN13@foo:
DB 99 ; 00000063H
DB 115 ; 00000073H
DB 0
$LN12@foo:
DB 115 ; 00000073H
DB 0
?foo@@YA_NXZ ENDP ; foo
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; 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
mov DWORD PTR [ebp-12], -858993460 ; ccccccccH
mov DWORD PTR [ebp-8], -858993460 ; ccccccccH
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
; Line 144
mov eax, DWORD PTR _exception$[ebp]
push eax
call ??$forward@Ufail_fast@gsl@@@std@@YA$$QAUfail_fast@gsl@@AAU12@@Z ; std::forward<gsl::fail_fast>
add esp, 4
push eax
lea ecx, DWORD PTR $T1[ebp]
call ??0fail_fast@gsl@@QAE@$$QAU01@@Z
push OFFSET __TI3?AUfail_fast@gsl@@
lea ecx, DWORD PTR $T1[ebp]
push ecx
call __CxxThrowException@8
$LN2@throw_exce:
; Line 145
add esp, 12 ; 0000000cH
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 0
??$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: /Odtp /RTCsu
; COMDAT ?size@?$extent_type@$0?0@details@gsl@@QBEHXZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
?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
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov eax, DWORD PTR _this$[ebp]
mov eax, DWORD PTR [eax]
mov esp, ebp
pop ebp
ret 0
?size@?$extent_type@$0?0@details@gsl@@QBEHXZ ENDP ; gsl::details::extent_type<-1>::size
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??_Gfail_fast@gsl@@UAEPAXI@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
___flags$ = 8 ; size = 4
??_Gfail_fast@gsl@@UAEPAXI@Z PROC ; gsl::fail_fast::`scalar deleting destructor', COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov ecx, DWORD PTR _this$[ebp]
call ??1fail_fast@gsl@@UAE@XZ
mov eax, DWORD PTR ___flags$[ebp]
and eax, 1
je SHORT $LN2@scalar
push 12 ; 0000000cH
mov ecx, DWORD PTR _this$[ebp]
push ecx
call ??3@YAXPAXI@Z ; operator delete
add esp, 8
$LN2@scalar:
mov eax, DWORD PTR _this$[ebp]
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 4
??_Gfail_fast@gsl@@UAEPAXI@Z ENDP ; gsl::fail_fast::`scalar deleting destructor'
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??0fail_fast@gsl@@QAE@$$QAU01@@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
___that$ = 8 ; size = 4
??0fail_fast@gsl@@QAE@$$QAU01@@Z PROC ; gsl::fail_fast::fail_fast, COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov eax, DWORD PTR ___that$[ebp]
push eax
mov ecx, DWORD PTR _this$[ebp]
call ??0logic_error@std@@QAE@$$QAV01@@Z
mov ecx, DWORD PTR _this$[ebp]
mov DWORD PTR [ecx], OFFSET ??_7fail_fast@gsl@@6B@
mov eax, DWORD PTR _this$[ebp]
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 4
??0fail_fast@gsl@@QAE@$$QAU01@@Z ENDP ; gsl::fail_fast::fail_fast
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??0fail_fast@gsl@@QAE@ABU01@@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
___that$ = 8 ; size = 4
??0fail_fast@gsl@@QAE@ABU01@@Z PROC ; gsl::fail_fast::fail_fast, COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov eax, DWORD PTR ___that$[ebp]
push eax
mov ecx, DWORD PTR _this$[ebp]
call ??0logic_error@std@@QAE@ABV01@@Z
mov ecx, DWORD PTR _this$[ebp]
mov DWORD PTR [ecx], OFFSET ??_7fail_fast@gsl@@6B@
mov eax, DWORD PTR _this$[ebp]
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 4
??0fail_fast@gsl@@QAE@ABU01@@Z ENDP ; gsl::fail_fast::fail_fast
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??1fail_fast@gsl@@UAE@XZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
??1fail_fast@gsl@@UAE@XZ PROC ; gsl::fail_fast::~fail_fast, COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov ecx, DWORD PTR _this$[ebp]
call ??1logic_error@std@@UAE@XZ
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 0
??1fail_fast@gsl@@UAE@XZ ENDP ; gsl::fail_fast::~fail_fast
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??0fail_fast@gsl@@QAE@QBD@Z
_TEXT SEGMENT
_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
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov eax, DWORD PTR _message$[ebp]
push eax
mov ecx, DWORD PTR _this$[ebp]
call ??0logic_error@std@@QAE@PBD@Z ; std::logic_error::logic_error
mov ecx, DWORD PTR _this$[ebp]
mov DWORD PTR [ecx], OFFSET ??_7fail_fast@gsl@@6B@
mov eax, DWORD PTR _this$[ebp]
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 4
??0fail_fast@gsl@@QAE@QBD@Z ENDP ; gsl::fail_fast::fail_fast
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??_Glogic_error@std@@UAEPAXI@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
___flags$ = 8 ; size = 4
??_Glogic_error@std@@UAEPAXI@Z PROC ; std::logic_error::`scalar deleting destructor', COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov ecx, DWORD PTR _this$[ebp]
call ??1logic_error@std@@UAE@XZ
mov eax, DWORD PTR ___flags$[ebp]
and eax, 1
je SHORT $LN2@scalar
push 12 ; 0000000cH
mov ecx, DWORD PTR _this$[ebp]
push ecx
call ??3@YAXPAXI@Z ; operator delete
add esp, 8
$LN2@scalar:
mov eax, DWORD PTR _this$[ebp]
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 4
??_Glogic_error@std@@UAEPAXI@Z ENDP ; std::logic_error::`scalar deleting destructor'
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??0logic_error@std@@QAE@$$QAV01@@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
___that$ = 8 ; size = 4
??0logic_error@std@@QAE@$$QAV01@@Z PROC ; std::logic_error::logic_error, COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov eax, DWORD PTR ___that$[ebp]
push eax
mov ecx, DWORD PTR _this$[ebp]
call ??0exception@std@@QAE@ABV01@@Z ; std::exception::exception
mov ecx, DWORD PTR _this$[ebp]
mov DWORD PTR [ecx], OFFSET ??_7logic_error@std@@6B@
mov eax, DWORD PTR _this$[ebp]
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 4
??0logic_error@std@@QAE@$$QAV01@@Z ENDP ; std::logic_error::logic_error
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??0logic_error@std@@QAE@ABV01@@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
___that$ = 8 ; size = 4
??0logic_error@std@@QAE@ABV01@@Z PROC ; std::logic_error::logic_error, COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov eax, DWORD PTR ___that$[ebp]
push eax
mov ecx, DWORD PTR _this$[ebp]
call ??0exception@std@@QAE@ABV01@@Z ; std::exception::exception
mov ecx, DWORD PTR _this$[ebp]
mov DWORD PTR [ecx], OFFSET ??_7logic_error@std@@6B@
mov eax, DWORD PTR _this$[ebp]
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 4
??0logic_error@std@@QAE@ABV01@@Z ENDP ; std::logic_error::logic_error
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??1logic_error@std@@UAE@XZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
??1logic_error@std@@UAE@XZ PROC ; std::logic_error::~logic_error, COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov ecx, DWORD PTR _this$[ebp]
call ??1exception@std@@UAE@XZ ; std::exception::~exception
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 0
??1logic_error@std@@UAE@XZ ENDP ; std::logic_error::~logic_error
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??0logic_error@std@@QAE@PBD@Z
_TEXT SEGMENT
_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
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
; Line 29
mov eax, DWORD PTR __Message$[ebp]
push eax
mov ecx, DWORD PTR _this$[ebp]
call ??0exception@std@@QAE@QBD@Z ; std::exception::exception
; Line 30
mov ecx, DWORD PTR _this$[ebp]
mov DWORD PTR [ecx], OFFSET ??_7logic_error@std@@6B@
; Line 31
mov eax, DWORD PTR _this$[ebp]
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 4
??0logic_error@std@@QAE@PBD@Z ENDP ; std::logic_error::logic_error
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??_Gexception@std@@UAEPAXI@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
___flags$ = 8 ; size = 4
??_Gexception@std@@UAEPAXI@Z PROC ; std::exception::`scalar deleting destructor', COMDAT
; _this$ = ecx
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov ecx, DWORD PTR _this$[ebp]
call ??1exception@std@@UAE@XZ ; std::exception::~exception
mov eax, DWORD PTR ___flags$[ebp]
and eax, 1
je SHORT $LN2@scalar
push 12 ; 0000000cH
mov ecx, DWORD PTR _this$[ebp]
push ecx
call ??3@YAXPAXI@Z ; operator delete
add esp, 8
$LN2@scalar:
mov eax, DWORD PTR _this$[ebp]
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 4
??_Gexception@std@@UAEPAXI@Z ENDP ; std::exception::`scalar deleting destructor'
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ?what@exception@std@@UBEPBDXZ
_TEXT SEGMENT
tv69 = -8 ; size = 4
_this$ = -4 ; size = 4
?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 90
push ebp
mov ebp, esp
sub esp, 8
mov DWORD PTR [ebp-8], -858993460 ; ccccccccH
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
; Line 91
mov eax, DWORD PTR _this$[ebp]
cmp DWORD PTR [eax+4], 0
je SHORT $LN3@what
mov ecx, DWORD PTR _this$[ebp]
mov edx, DWORD PTR [ecx+4]
mov DWORD PTR tv69[ebp], edx
jmp SHORT $LN4@what
$LN3@what:
mov DWORD PTR tv69[ebp], OFFSET ??_C@_0BC@EOODALEL@Unknown?5exception@
$LN4@what:
mov eax, DWORD PTR tv69[ebp]
; Line 92
mov esp, ebp
pop ebp
ret 0
?what@exception@std@@UBEPBDXZ ENDP ; std::exception::what
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??1exception@std@@UAE@XZ
_TEXT SEGMENT
_this$ = -4 ; size = 4
??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 85
push ebp
mov ebp, esp
push ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov eax, DWORD PTR _this$[ebp]
mov DWORD PTR [eax], OFFSET ??_7exception@std@@6B@
; Line 86
mov ecx, DWORD PTR _this$[ebp]
add ecx, 4
push ecx
call ___std_exception_destroy
add esp, 4
; Line 87
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 0
??1exception@std@@UAE@XZ ENDP ; std::exception::~exception
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??0exception@std@@QAE@ABV01@@Z
_TEXT SEGMENT
_this$ = -4 ; size = 4
__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 ecx
mov DWORD PTR [ebp-4], -858993460 ; ccccccccH
mov DWORD PTR _this$[ebp], ecx
mov eax, DWORD PTR _this$[ebp]
mov DWORD PTR [eax], OFFSET ??_7exception@std@@6B@
; Line 67
xor ecx, ecx
mov edx, DWORD PTR _this$[ebp]
add edx, 4
mov DWORD PTR [edx], ecx
mov DWORD PTR [edx+4], ecx
; Line 69
mov eax, DWORD PTR _this$[ebp]
add eax, 4
push eax
mov ecx, DWORD PTR __Other$[ebp]
add ecx, 4
push ecx
call ___std_exception_copy
add esp, 8
; Line 70
mov eax, DWORD PTR _this$[ebp]
add esp, 4
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 4
??0exception@std@@QAE@ABV01@@Z ENDP ; std::exception::exception
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ??0exception@std@@QAE@QBD@Z
_TEXT SEGMENT
__InitData$ = -16 ; size = 8
_this$ = -4 ; size = 4
__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, 20 ; 00000014H
mov eax, -858993460 ; ccccccccH
mov DWORD PTR [ebp-20], eax
mov DWORD PTR [ebp-16], eax
mov DWORD PTR [ebp-12], eax
mov DWORD PTR [ebp-8], eax
mov DWORD PTR [ebp-4], eax
mov DWORD PTR _this$[ebp], ecx
mov eax, DWORD PTR _this$[ebp]
mov DWORD PTR [eax], OFFSET ??_7exception@std@@6B@
; Line 54
xor ecx, ecx
mov edx, DWORD PTR _this$[ebp]
add edx, 4
mov DWORD PTR [edx], ecx
mov DWORD PTR [edx+4], ecx
; Line 56
mov eax, DWORD PTR __Message$[ebp]
mov DWORD PTR __InitData$[ebp], eax
mov BYTE PTR __InitData$[ebp+4], 1
; Line 57
mov ecx, DWORD PTR _this$[ebp]
add ecx, 4
push ecx
lea edx, DWORD PTR __InitData$[ebp]
push edx
call ___std_exception_copy
add esp, 8
; Line 58
mov eax, DWORD PTR _this$[ebp]
push edx
mov ecx, ebp
push eax
lea edx, DWORD PTR $LN5@exception
call @_RTC_CheckStackVars@8
pop eax
pop edx
add esp, 20 ; 00000014H
cmp ebp, esp
call __RTC_CheckEsp
mov esp, ebp
pop ebp
ret 4
$LN5@exception:
DD 1
DD $LN4@exception
$LN4@exception:
DD -16 ; fffffff0H
DD 8
DD $LN3@exception
$LN3@exception:
DB 95 ; 0000005fH
DB 73 ; 00000049H
DB 110 ; 0000006eH
DB 105 ; 00000069H
DB 116 ; 00000074H
DB 68 ; 00000044H
DB 97 ; 00000061H
DB 116 ; 00000074H
DB 97 ; 00000061H
DB 0
??0exception@std@@QAE@QBD@Z ENDP ; std::exception::exception
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ?__empty_global_delete@@YAXPAXI@Z
_TEXT SEGMENT
___formal$ = 8 ; size = 4
___formal$ = 12 ; size = 4
?__empty_global_delete@@YAXPAXI@Z PROC ; __empty_global_delete, COMDAT
; File c:\projects\gsl\tests\span_compile_only.cpp
; Line 57
push ebp
mov ebp, esp
pop ebp
ret 0
?__empty_global_delete@@YAXPAXI@Z ENDP ; __empty_global_delete
_TEXT ENDS
; Function compile flags: /Odtp /RTCsu
; COMDAT ?__empty_global_delete@@YAXPAX@Z
_TEXT SEGMENT
___formal$ = 8 ; size = 4
?__empty_global_delete@@YAXPAX@Z PROC ; __empty_global_delete, COMDAT
; File c:\projects\gsl\tests\span_compile_only.cpp
; Line 57
push ebp
mov ebp, esp
pop ebp
ret 0
?__empty_global_delete@@YAXPAX@Z ENDP ; __empty_global_delete
_TEXT ENDS
END