-
-
Save FROGGS/690d9613d8ae0ee94c42 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
; Listing generated by Microsoft (R) Optimizing Compiler Version 17.00.61030.0 | |
include listing.inc | |
INCLUDELIB LIBCMT | |
INCLUDELIB OLDNAMES | |
PUBLIC ??0Derived1@@QEAA@XZ ; Derived1::Derived1 | |
PUBLIC ??1Derived1@@QEAA@XZ ; Derived1::~Derived1 | |
PUBLIC ?SizeofDerived1@@YAHXZ ; SizeofDerived1 | |
PUBLIC ??0Derived2@@QEAA@XZ ; Derived2::Derived2 | |
PUBLIC ??1Derived2@@QEAA@XZ ; Derived2::~Derived2 | |
PUBLIC ?method@Derived2@@UEAAHH@Z ; Derived2::method | |
PUBLIC ?All_The_Things@Derived2@@UEAAJDFHJMN@Z ; Derived2::All_The_Things | |
PUBLIC ?ConstInt@Derived2@@UEAAJH@Z ; Derived2::ConstInt | |
PUBLIC ?IntPtr@Derived2@@UEAAJPEAH@Z ; Derived2::IntPtr | |
PUBLIC ?ConstIntPtr@Derived2@@UEAAJPEBH@Z ; Derived2::ConstIntPtr | |
PUBLIC ?SizeofDerived2@@YAHXZ ; SizeofDerived2 | |
PUBLIC ??_7Derived2@@6B@ ; Derived2::`vftable' | |
PUBLIC ??_R4Derived2@@6B@ ; Derived2::`RTTI Complete Object Locator' | |
PUBLIC ??_R0?AVDerived2@@@8 ; Derived2 `RTTI Type Descriptor' | |
PUBLIC ??_R3Derived2@@8 ; Derived2::`RTTI Class Hierarchy Descriptor' | |
PUBLIC ??_R2Derived2@@8 ; Derived2::`RTTI Base Class Array' | |
PUBLIC ??_R1A@?0A@EA@Derived2@@8 ; Derived2::`RTTI Base Class Descriptor at (0,-1,0,64)' | |
PUBLIC ??_R17?0A@EA@Base@@8 ; Base::`RTTI Base Class Descriptor at (8,-1,0,64)' | |
PUBLIC ??_R0?AVBase@@@8 ; Base `RTTI Type Descriptor' | |
PUBLIC ??_R3Base@@8 ; Base::`RTTI Class Hierarchy Descriptor' | |
PUBLIC ??_R2Base@@8 ; Base::`RTTI Base Class Array' | |
PUBLIC ??_R1A@?0A@EA@Base@@8 ; Base::`RTTI Base Class Descriptor at (0,-1,0,64)' | |
PUBLIC __real@4004f5c28f5c28f6 | |
PUBLIC __real@40091eb851eb851f | |
EXTRN free:PROC | |
EXTRN malloc:PROC | |
EXTRN ??_7type_info@@6B@:BYTE ; type_info::`vftable' | |
EXTRN _fltused:DWORD | |
pdata SEGMENT | |
$pdata$??0Derived2@@QEAA@XZ DD imagerel $LN3 | |
DD imagerel $LN3+149 | |
DD imagerel $unwind$??0Derived2@@QEAA@XZ | |
$pdata$??1Derived2@@QEAA@XZ DD imagerel $LN3 | |
DD imagerel $LN3+43 | |
DD imagerel $unwind$??1Derived2@@QEAA@XZ | |
pdata ENDS | |
; COMDAT __real@40091eb851eb851f | |
CONST SEGMENT | |
__real@40091eb851eb851f DQ 040091eb851eb851fr ; 3.14 | |
CONST ENDS | |
; COMDAT __real@4004f5c28f5c28f6 | |
CONST SEGMENT | |
__real@4004f5c28f5c28f6 DQ 04004f5c28f5c28f6r ; 2.62 | |
CONST ENDS | |
; COMDAT ??_R1A@?0A@EA@Base@@8 | |
rdata$r SEGMENT | |
??_R1A@?0A@EA@Base@@8 DD imagerel ??_R0?AVBase@@@8 ; Base::`RTTI Base Class Descriptor at (0,-1,0,64)' | |
DD 00H | |
DD 00H | |
DD 0ffffffffH | |
DD 00H | |
DD 040H | |
DD imagerel ??_R3Base@@8 | |
rdata$r ENDS | |
; COMDAT ??_R2Base@@8 | |
rdata$r SEGMENT | |
??_R2Base@@8 DD imagerel ??_R1A@?0A@EA@Base@@8 ; Base::`RTTI Base Class Array' | |
ORG $+3 | |
rdata$r ENDS | |
; COMDAT ??_R3Base@@8 | |
rdata$r SEGMENT | |
??_R3Base@@8 DD 00H ; Base::`RTTI Class Hierarchy Descriptor' | |
DD 00H | |
DD 01H | |
DD imagerel ??_R2Base@@8 | |
rdata$r ENDS | |
; COMDAT ??_R0?AVBase@@@8 | |
_DATA SEGMENT | |
??_R0?AVBase@@@8 DQ FLAT:??_7type_info@@6B@ ; Base `RTTI Type Descriptor' | |
DQ 0000000000000000H | |
DB '.?AVBase@@', 00H | |
_DATA ENDS | |
; COMDAT ??_R17?0A@EA@Base@@8 | |
rdata$r SEGMENT | |
??_R17?0A@EA@Base@@8 DD imagerel ??_R0?AVBase@@@8 ; Base::`RTTI Base Class Descriptor at (8,-1,0,64)' | |
DD 00H | |
DD 08H | |
DD 0ffffffffH | |
DD 00H | |
DD 040H | |
DD imagerel ??_R3Base@@8 | |
rdata$r ENDS | |
; COMDAT ??_R1A@?0A@EA@Derived2@@8 | |
rdata$r SEGMENT | |
??_R1A@?0A@EA@Derived2@@8 DD imagerel ??_R0?AVDerived2@@@8 ; Derived2::`RTTI Base Class Descriptor at (0,-1,0,64)' | |
DD 01H | |
DD 00H | |
DD 0ffffffffH | |
DD 00H | |
DD 040H | |
DD imagerel ??_R3Derived2@@8 | |
rdata$r ENDS | |
; COMDAT ??_R2Derived2@@8 | |
rdata$r SEGMENT | |
??_R2Derived2@@8 DD imagerel ??_R1A@?0A@EA@Derived2@@8 ; Derived2::`RTTI Base Class Array' | |
DD imagerel ??_R17?0A@EA@Base@@8 | |
ORG $+3 | |
rdata$r ENDS | |
; COMDAT ??_R3Derived2@@8 | |
rdata$r SEGMENT | |
??_R3Derived2@@8 DD 00H ; Derived2::`RTTI Class Hierarchy Descriptor' | |
DD 00H | |
DD 02H | |
DD imagerel ??_R2Derived2@@8 | |
rdata$r ENDS | |
; COMDAT ??_R0?AVDerived2@@@8 | |
_DATA SEGMENT | |
??_R0?AVDerived2@@@8 DQ FLAT:??_7type_info@@6B@ ; Derived2 `RTTI Type Descriptor' | |
DQ 0000000000000000H | |
DB '.?AVDerived2@@', 00H | |
_DATA ENDS | |
; COMDAT ??_R4Derived2@@6B@ | |
rdata$r SEGMENT | |
??_R4Derived2@@6B@ DD 01H ; Derived2::`RTTI Complete Object Locator' | |
DD 00H | |
DD 00H | |
DD imagerel ??_R0?AVDerived2@@@8 | |
DD imagerel ??_R3Derived2@@8 | |
DD imagerel ??_R4Derived2@@6B@ | |
rdata$r ENDS | |
; COMDAT ??_7Derived2@@6B@ | |
CONST SEGMENT | |
??_7Derived2@@6B@ DQ FLAT:??_R4Derived2@@6B@ ; Derived2::`vftable' | |
DQ FLAT:?method@Derived2@@UEAAHH@Z | |
DQ FLAT:?All_The_Things@Derived2@@UEAAJDFHJMN@Z | |
DQ FLAT:?ConstInt@Derived2@@UEAAJH@Z | |
DQ FLAT:?IntPtr@Derived2@@UEAAJPEAH@Z | |
DQ FLAT:?ConstIntPtr@Derived2@@UEAAJPEBH@Z | |
CONST ENDS | |
xdata SEGMENT | |
$unwind$??0Derived2@@QEAA@XZ DD 010901H | |
DD 04209H | |
$unwind$??1Derived2@@QEAA@XZ DD 010901H | |
DD 04209H | |
xdata ENDS | |
; Function compile flags: /Odtp | |
_TEXT SEGMENT | |
?SizeofDerived2@@YAHXZ PROC ; SizeofDerived2 | |
; File c:\rakudo\t\04-nativecall\11-cpp.cpp | |
; Line 76 | |
mov eax, 56 ; 00000038H | |
; Line 77 | |
ret 0 | |
?SizeofDerived2@@YAHXZ ENDP ; SizeofDerived2 | |
_TEXT ENDS | |
; Function compile flags: /Odtp | |
; COMDAT ?ConstIntPtr@Derived2@@UEAAJPEBH@Z | |
_TEXT SEGMENT | |
this$ = 8 | |
i$ = 16 | |
?ConstIntPtr@Derived2@@UEAAJPEBH@Z PROC ; Derived2::ConstIntPtr, COMDAT | |
; File c:\rakudo\t\04-nativecall\11-cpp.cpp | |
; Line 67 | |
mov QWORD PTR [rsp+16], rdx | |
mov QWORD PTR [rsp+8], rcx | |
mov eax, 13 | |
ret 0 | |
?ConstIntPtr@Derived2@@UEAAJPEBH@Z ENDP ; Derived2::ConstIntPtr | |
_TEXT ENDS | |
; Function compile flags: /Odtp | |
; COMDAT ?IntPtr@Derived2@@UEAAJPEAH@Z | |
_TEXT SEGMENT | |
this$ = 8 | |
i$ = 16 | |
?IntPtr@Derived2@@UEAAJPEAH@Z PROC ; Derived2::IntPtr, COMDAT | |
; File c:\rakudo\t\04-nativecall\11-cpp.cpp | |
; Line 66 | |
mov QWORD PTR [rsp+16], rdx | |
mov QWORD PTR [rsp+8], rcx | |
mov eax, 12 | |
ret 0 | |
?IntPtr@Derived2@@UEAAJPEAH@Z ENDP ; Derived2::IntPtr | |
_TEXT ENDS | |
; Function compile flags: /Odtp | |
; COMDAT ?ConstInt@Derived2@@UEAAJH@Z | |
_TEXT SEGMENT | |
this$ = 8 | |
i$ = 16 | |
?ConstInt@Derived2@@UEAAJH@Z PROC ; Derived2::ConstInt, COMDAT | |
; File c:\rakudo\t\04-nativecall\11-cpp.cpp | |
; Line 65 | |
mov DWORD PTR [rsp+16], edx | |
mov QWORD PTR [rsp+8], rcx | |
mov eax, 11 | |
ret 0 | |
?ConstInt@Derived2@@UEAAJH@Z ENDP ; Derived2::ConstInt | |
_TEXT ENDS | |
; Function compile flags: /Odtp | |
; COMDAT ?All_The_Things@Derived2@@UEAAJDFHJMN@Z | |
_TEXT SEGMENT | |
this$ = 8 | |
c$ = 16 | |
s$ = 24 | |
i$ = 32 | |
l$ = 40 | |
f$ = 48 | |
d$ = 56 | |
?All_The_Things@Derived2@@UEAAJDFHJMN@Z PROC ; Derived2::All_The_Things, COMDAT | |
; File c:\rakudo\t\04-nativecall\11-cpp.cpp | |
; Line 62 | |
mov DWORD PTR [rsp+32], r9d | |
mov WORD PTR [rsp+24], r8w | |
mov BYTE PTR [rsp+16], dl | |
mov QWORD PTR [rsp+8], rcx | |
; Line 63 | |
movsx eax, BYTE PTR c$[rsp] | |
movsx ecx, WORD PTR s$[rsp] | |
mov edx, DWORD PTR i$[rsp] | |
add edx, eax | |
mov eax, edx | |
add ecx, eax | |
mov eax, ecx | |
add eax, DWORD PTR l$[rsp] | |
cvtsi2ss xmm0, eax | |
addss xmm0, DWORD PTR f$[rsp] | |
cvtss2sd xmm0, xmm0 | |
addsd xmm0, QWORD PTR d$[rsp] | |
cvttsd2si eax, xmm0 | |
; Line 64 | |
ret 0 | |
?All_The_Things@Derived2@@UEAAJDFHJMN@Z ENDP ; Derived2::All_The_Things | |
_TEXT ENDS | |
; Function compile flags: /Odtp | |
; COMDAT ?method@Derived2@@UEAAHH@Z | |
_TEXT SEGMENT | |
this$ = 8 | |
p$ = 16 | |
?method@Derived2@@UEAAHH@Z PROC ; Derived2::method, COMDAT | |
; File c:\rakudo\t\04-nativecall\11-cpp.cpp | |
; Line 58 | |
mov DWORD PTR [rsp+16], edx | |
mov QWORD PTR [rsp+8], rcx | |
; Line 59 | |
mov rax, QWORD PTR this$[rsp] | |
mov eax, DWORD PTR [rax+8] | |
mov rcx, QWORD PTR this$[rsp] | |
add eax, DWORD PTR [rcx+12] | |
add eax, DWORD PTR p$[rsp] | |
; Line 60 | |
ret 0 | |
?method@Derived2@@UEAAHH@Z ENDP ; Derived2::method | |
_TEXT ENDS | |
; Function compile flags: /Odtp | |
_TEXT SEGMENT | |
this$ = 48 | |
??1Derived2@@QEAA@XZ PROC ; Derived2::~Derived2 | |
; File c:\rakudo\t\04-nativecall\11-cpp.cpp | |
; Line 92 | |
$LN3: | |
mov QWORD PTR [rsp+8], rcx | |
sub rsp, 40 ; 00000028H | |
mov rax, QWORD PTR this$[rsp] | |
lea rcx, OFFSET FLAT:??_7Derived2@@6B@ | |
mov QWORD PTR [rax], rcx | |
; Line 93 | |
mov rax, QWORD PTR this$[rsp] | |
mov rcx, QWORD PTR [rax+48] | |
call free | |
; Line 94 | |
add rsp, 40 ; 00000028H | |
ret 0 | |
??1Derived2@@QEAA@XZ ENDP ; Derived2::~Derived2 | |
_TEXT ENDS | |
; Function compile flags: /Odtp | |
_TEXT SEGMENT | |
this$ = 48 | |
??0Derived2@@QEAA@XZ PROC ; Derived2::Derived2 | |
; File c:\rakudo\t\04-nativecall\11-cpp.cpp | |
; Line 80 | |
$LN3: | |
mov QWORD PTR [rsp+8], rcx | |
sub rsp, 40 ; 00000028H | |
mov rax, QWORD PTR this$[rsp] | |
lea rcx, OFFSET FLAT:??_7Derived2@@6B@ | |
mov QWORD PTR [rax], rcx | |
; Line 81 | |
mov rax, QWORD PTR this$[rsp] | |
mov DWORD PTR [rax+8], 11 | |
; Line 82 | |
mov rax, QWORD PTR this$[rsp] | |
mov DWORD PTR [rax+12], 42 ; 0000002aH | |
; Line 83 | |
mov rax, QWORD PTR this$[rsp] | |
mov DWORD PTR [rax+16], 43 ; 0000002bH | |
; Line 84 | |
mov rax, QWORD PTR this$[rsp] | |
movsdx xmm0, QWORD PTR __real@40091eb851eb851f | |
movsdx QWORD PTR [rax+24], xmm0 | |
; Line 85 | |
mov rax, QWORD PTR this$[rsp] | |
movsdx xmm0, QWORD PTR __real@4004f5c28f5c28f6 | |
movsdx QWORD PTR [rax+32], xmm0 | |
; Line 86 | |
mov rax, QWORD PTR this$[rsp] | |
mov BYTE PTR [rax+40], 65 ; 00000041H | |
; Line 87 | |
mov ecx, 4 | |
call malloc | |
mov rcx, QWORD PTR this$[rsp] | |
mov QWORD PTR [rcx+48], rax | |
; Line 88 | |
mov rax, QWORD PTR this$[rsp] | |
mov rax, QWORD PTR [rax+48] | |
mov DWORD PTR [rax], 666 ; 0000029aH | |
; Line 89 | |
mov rax, QWORD PTR this$[rsp] | |
add rsp, 40 ; 00000028H | |
ret 0 | |
??0Derived2@@QEAA@XZ ENDP ; Derived2::Derived2 | |
_TEXT ENDS | |
; Function compile flags: /Odtp | |
_TEXT SEGMENT | |
?SizeofDerived1@@YAHXZ PROC ; SizeofDerived1 | |
; File c:\rakudo\t\04-nativecall\11-cpp.cpp | |
; Line 37 | |
mov eax, 40 ; 00000028H | |
; Line 38 | |
ret 0 | |
?SizeofDerived1@@YAHXZ ENDP ; SizeofDerived1 | |
_TEXT ENDS | |
; Function compile flags: /Odtp | |
_TEXT SEGMENT | |
this$ = 8 | |
??1Derived1@@QEAA@XZ PROC ; Derived1::~Derived1 | |
; File c:\rakudo\t\04-nativecall\11-cpp.cpp | |
; Line 51 | |
mov QWORD PTR [rsp+8], rcx | |
; Line 52 | |
ret 0 | |
??1Derived1@@QEAA@XZ ENDP ; Derived1::~Derived1 | |
_TEXT ENDS | |
; Function compile flags: /Odtp | |
_TEXT SEGMENT | |
this$ = 8 | |
??0Derived1@@QEAA@XZ PROC ; Derived1::Derived1 | |
; File c:\rakudo\t\04-nativecall\11-cpp.cpp | |
; Line 41 | |
mov QWORD PTR [rsp+8], rcx | |
; Line 42 | |
mov rax, QWORD PTR this$[rsp] | |
mov DWORD PTR [rax], 11 | |
; Line 43 | |
mov rax, QWORD PTR this$[rsp] | |
mov DWORD PTR [rax+4], 42 ; 0000002aH | |
; Line 44 | |
mov rax, QWORD PTR this$[rsp] | |
mov DWORD PTR [rax+8], 43 ; 0000002bH | |
; Line 45 | |
mov rax, QWORD PTR this$[rsp] | |
movsdx xmm0, QWORD PTR __real@40091eb851eb851f | |
movsdx QWORD PTR [rax+16], xmm0 | |
; Line 46 | |
mov rax, QWORD PTR this$[rsp] | |
movsdx xmm0, QWORD PTR __real@4004f5c28f5c28f6 | |
movsdx QWORD PTR [rax+24], xmm0 | |
; Line 47 | |
mov rax, QWORD PTR this$[rsp] | |
mov BYTE PTR [rax+32], 65 ; 00000041H | |
; Line 48 | |
mov rax, QWORD PTR this$[rsp] | |
ret 0 | |
??0Derived1@@QEAA@XZ ENDP ; Derived1::Derived1 | |
_TEXT ENDS | |
END |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment