Jo Shields a575963da9 Imported Upstream version 3.6.0
Former-commit-id: da6be194a6b1221998fc28233f2503bd61dd9d14
2014-08-13 10:39:27 +01:00

176 lines
5.3 KiB
Plaintext

.assembly extern mscorlib
{
.ver 2:0:0:0
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
}
.assembly 'gtest-116'
{
.custom instance void class [mscorlib]System.Runtime.CompilerServices.RuntimeCompatibilityAttribute::'.ctor'() = (
01 00 01 00 54 02 16 57 72 61 70 4E 6F 6E 45 78 // ....T..WrapNonEx
63 65 70 74 69 6F 6E 54 68 72 6F 77 73 01 ) // ceptionThrows.
.hash algorithm 0x00008004
.ver 0:0:0:0
}
.module 'gtest-116.exe' // GUID = {ADBACCC6-7EC7-4C8F-A829-4E8B7BCFF277}
.namespace Slow
{
.class interface public auto ansi abstract ITest
{
// method line 1
.method public virtual hidebysig newslot abstract
instance default void DoNothing<class T> () cil managed
{
// Method begins at RVA 0x0
} // end of method ITest::DoNothing
} // end of class Slow.ITest
}
.namespace Slow
{
.class public auto ansi beforefieldinit Test
extends [mscorlib]System.Object
implements Slow.ITest {
// method line 2
.method public hidebysig specialname rtspecialname
instance default void '.ctor' () cil managed
{
// Method begins at RVA 0x20ec
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
IL_0001: call instance void object::'.ctor'()
IL_0006: ret
} // end of method Test::.ctor
// method line 3
.method public final virtual hidebysig newslot
instance default void DoNothing<class T> () cil managed
{
// Method begins at RVA 0x20f4
// Code size 8 (0x8)
.maxstack 2
.locals init (
!!T V_0)
IL_0000: ldnull
IL_0001: unbox.any !!0
IL_0006: stloc.0
IL_0007: ret
} // end of method Test::DoNothing
} // end of class Slow.Test
}
.namespace Slow
{
.class private auto ansi beforefieldinit Program
extends [mscorlib]System.Object
{
// method line 4
.method public hidebysig specialname rtspecialname
instance default void '.ctor' () cil managed
{
// Method begins at RVA 0x2108
// Code size 7 (0x7)
.maxstack 8
IL_0000: ldarg.0
IL_0001: call instance void object::'.ctor'()
IL_0006: ret
} // end of method Program::.ctor
// method line 5
.method private static hidebysig
default void Main (string[] args) cil managed
{
// Method begins at RVA 0x2110
.entrypoint
// Code size 201 (0xc9)
.maxstack 22
.locals init (
int32 V_0,
class Slow.Test V_1,
valuetype [mscorlib]System.DateTime V_2,
int32 V_3,
valuetype [mscorlib]System.DateTime V_4,
valuetype [mscorlib]System.TimeSpan V_5,
class Slow.ITest V_6,
int32 V_7)
IL_0000: newobj instance void class Slow.Test::'.ctor'()
IL_0005: stloc.1
IL_0006: call valuetype [mscorlib]System.DateTime valuetype [mscorlib]System.DateTime::get_Now()
IL_000b: stloc.2
IL_000c: ldstr "Calling Test.DoNothing<Program>() on an object reference... "
IL_0011: call void class [mscorlib]System.Console::Write(string)
IL_0016: ldc.i4.0
IL_0017: stloc.3
IL_0018: br IL_0027
IL_001d: ldloc.1
IL_001e: callvirt instance void class Slow.Test::DoNothing<class Slow.Program> ()
IL_0023: ldloc.3
IL_0024: ldc.i4.1
IL_0025: add
IL_0026: stloc.3
IL_0027: ldloc.3
IL_0028: ldc.i4 10000
IL_002d: blt IL_001d
IL_0032: call valuetype [mscorlib]System.DateTime valuetype [mscorlib]System.DateTime::get_Now()
IL_0037: stloc.s 4
IL_0039: ldloc.s 4
IL_003b: ldloc.2
IL_003c: call valuetype [mscorlib]System.TimeSpan valuetype [mscorlib]System.DateTime::op_Subtraction(valuetype [mscorlib]System.DateTime, valuetype [mscorlib]System.DateTime)
IL_0041: stloc.s 5
IL_0043: ldstr "Took "
IL_0048: ldloca.s 5
IL_004a: call instance float64 valuetype [mscorlib]System.TimeSpan::get_TotalMilliseconds()
IL_004f: box [mscorlib]System.Double
IL_0054: ldstr " ms."
IL_0059: call string string::Concat(object, object, object)
IL_005e: call void class [mscorlib]System.Console::WriteLine(string)
IL_0063: ldloc.1
IL_0064: stloc.s 6
IL_0066: call valuetype [mscorlib]System.DateTime valuetype [mscorlib]System.DateTime::get_Now()
IL_006b: stloc.2
IL_006c: ldstr "Calling Test.DoNothing<Program>() on an interface reference... "
IL_0071: call void class [mscorlib]System.Console::Write(string)
IL_0076: ldc.i4.0
IL_0077: stloc.s 7
IL_0079: br IL_008b
IL_007e: ldloc.s 6
IL_0080: callvirt instance void class Slow.ITest::DoNothing<class Slow.Program> ()
IL_0085: ldloc.s 7
IL_0087: ldc.i4.1
IL_0088: add
IL_0089: stloc.s 7
IL_008b: ldloc.s 7
IL_008d: ldc.i4 10000
IL_0092: blt IL_007e
IL_0097: call valuetype [mscorlib]System.DateTime valuetype [mscorlib]System.DateTime::get_Now()
IL_009c: stloc.s 4
IL_009e: ldloc.s 4
IL_00a0: ldloc.2
IL_00a1: call valuetype [mscorlib]System.TimeSpan valuetype [mscorlib]System.DateTime::op_Subtraction(valuetype [mscorlib]System.DateTime, valuetype [mscorlib]System.DateTime)
IL_00a6: stloc.s 5
IL_00a8: ldstr "Took "
IL_00ad: ldloca.s 5
IL_00af: call instance float64 valuetype [mscorlib]System.TimeSpan::get_TotalMilliseconds()
IL_00b4: box [mscorlib]System.Double
IL_00b9: ldstr " ms."
IL_00be: call string string::Concat(object, object, object)
IL_00c3: call void class [mscorlib]System.Console::WriteLine(string)
IL_00c8: ret
} // end of method Program::Main
} // end of class Slow.Program
}