blob: da86838fae861d6d24e84a1ef61fb8db093a3789 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
|
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.
// See the LICENSE file in the project root for more information.
.assembly extern System.Console { }
// Microsoft (R) .NET Framework IL Disassembler. Version 2.0.41217.00
// Copyright (C) Microsoft Corporation. All rights reserved.
// Metadata version: v2.0.41217
.assembly extern retargetable mscorlib
{
.publickeytoken = (96 9D B8 05 3D 33 22 AC ) // ....=3".
.ver 0:0:0:0
}
.assembly extern mscorlib as mscorlib_1
{
.ver 2:0:0:0
}
.assembly extern BarImpl
{
.ver 0:0:0:0
}
.assembly extern MyBar
{
.ver 0:0:0:0
}
.assembly CMain
{
.hash algorithm 0x00008004
.ver 0:0:0:0
}
.module M
// MVID: {01C3371C-004D-0000-A745-03831C37C341}
.imagebase 0x034f0000
.file alignment 0x00000200
.stackreserve 0x00100000
.subsystem 0x0003 // WINDOWS_CUI
.corflags 0x00000001 // ILONLY
// Image base: 0x03090000
// =============== CLASS MEMBERS DECLARATION ===================
.class public auto ansi beforefieldinit CMain
extends [mscorlib_1]System.Object
{
.method public hidebysig static int32 Main(string[] args) cil managed
{
.entrypoint
// Code size 106 (0x6a)
.maxstack 2
.locals init (bool V_0,
class [BarImpl]BarImpl V_1,
class [MyBar]MyBar V_2,
int32 V_3)
IL_0000: ldc.i4.1
IL_0001: stloc.0
IL_0002: newobj instance void [BarImpl]BarImpl::.ctor()
IL_0007: stloc.1
IL_0008: ldc.i4.2
IL_0009: ldloc.1
IL_000a: callvirt instance int32 [MyBar]MyBar::DoBar()
IL_000f: beq.s IL_001d
IL_0011: ldstr "FAIL: expected BarImpl.DoBar to execute, but anoth"
+ "er method was executed instead."
IL_0016: call void [mscorlib_1]System.Console::WriteLine(string)
IL_001b: ldc.i4.0
IL_001c: stloc.0
IL_001d: ldloc.1
IL_001e: stloc.2
IL_001f: ldc.i4.2
IL_0020: ldloc.2
IL_0021: callvirt instance int32 [MyBar]MyBar::DoBar()
IL_0026: beq.s IL_0034
IL_0028: ldstr "FAIL: expected BarImpl.DoBar to execute, but anoth"
+ "er method was executed instead."
IL_002d: call void [mscorlib_1]System.Console::WriteLine(string)
IL_0032: ldc.i4.0
IL_0033: stloc.0
IL_0034: ldc.i4.1
IL_0035: ldloc.2
IL_0036: call instance int32 [MyBar]MyBar::DoBar()
IL_003b: beq.s IL_0049
IL_003d: ldstr "FAIL: expected MyBar.DoSelfBar to execute, but ano"
+ "ther method was executed instead."
IL_0042: call void [mscorlib_1]System.Console::WriteLine(string)
IL_0047: ldc.i4.0
IL_0048: stloc.0
IL_0049: ldloc.0
IL_004a: brtrue.s IL_005b
IL_004c: ldc.i4.s 101
IL_004e: stloc.3
IL_004f: ldstr "FAIL"
IL_0054: call void [mscorlib_1]System.Console::WriteLine(string)
IL_0059: br.s IL_0068
IL_005b: ldc.i4.s 100
IL_005d: stloc.3
IL_005e: ldstr "PASS"
IL_0063: call void [mscorlib_1]System.Console::WriteLine(string)
IL_0068: ldloc.3
IL_0069: ret
} // end of method CMain::Main
.method public hidebysig specialname rtspecialname
instance void .ctor() cil managed
{
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
IL_0001: call instance void [mscorlib_1]System.Object::.ctor()
IL_0006: ret
} // end of method CMain::.ctor
} // end of class CMain
// =============================================================
// *********** DISASSEMBLY COMPLETE ***********************
|