Skip to content

Instantly share code, notes, and snippets.

@7sharp9

7sharp9/test.il Secret

Created January 28, 2016 10:52
Show Gist options
  • Save 7sharp9/79469a0861850791c6ec to your computer and use it in GitHub Desktop.
Save 7sharp9/79469a0861850791c6ec to your computer and use it in GitHub Desktop.
il output
// Microsoft (R) .NET Framework IL Disassembler. Version 4.6.81.0
// Copyright (c) Microsoft Corporation. All rights reserved.
// Metadata version: v4.0.30319
.assembly extern mscorlib
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
.ver 4:0:0:0
}
.assembly extern FSharp.Core
{
.publickeytoken = (B0 3F 5F 7F 11 D5 0A 3A ) // .?_....:
.ver 4:4:0:0
}
.assembly IntrinsicTypeExtensionTest
{
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.FSharpInterfaceDataVersionAttribute::.ctor(int32,
int32,
int32) = ( 01 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 )
.custom instance void [mscorlib]System.Runtime.Versioning.TargetFrameworkAttribute::.ctor(string) = ( 01 00 1C 2E 4E 45 54 46 72 61 6D 65 77 6F 72 6B // ....NETFramework
2C 56 65 72 73 69 6F 6E 3D 76 34 2E 35 2E 32 01 // ,Version=v4.5.2.
00 54 0E 14 46 72 61 6D 65 77 6F 72 6B 44 69 73 // .T..FrameworkDis
70 6C 61 79 4E 61 6D 65 14 2E 4E 45 54 20 46 72 // playName..NET Fr
61 6D 65 77 6F 72 6B 20 34 2E 35 2E 32 ) // amework 4.5.2
.custom instance void [mscorlib]System.Reflection.AssemblyTitleAttribute::.ctor(string) = ( 01 00 1A 49 6E 74 72 69 6E 73 69 63 54 79 70 65 // ...IntrinsicType
45 78 74 65 6E 73 69 6F 6E 54 65 73 74 00 00 ) // ExtensionTest..
.custom instance void [mscorlib]System.Reflection.AssemblyDescriptionAttribute::.ctor(string) = ( 01 00 00 00 00 )
.custom instance void [mscorlib]System.Reflection.AssemblyConfigurationAttribute::.ctor(string) = ( 01 00 00 00 00 )
.custom instance void [mscorlib]System.Reflection.AssemblyCompanyAttribute::.ctor(string) = ( 01 00 00 00 00 )
.custom instance void [mscorlib]System.Reflection.AssemblyProductAttribute::.ctor(string) = ( 01 00 00 00 00 )
.custom instance void [mscorlib]System.Reflection.AssemblyCopyrightAttribute::.ctor(string) = ( 01 00 04 64 61 76 65 00 00 ) // ...dave..
.custom instance void [mscorlib]System.Reflection.AssemblyTrademarkAttribute::.ctor(string) = ( 01 00 00 00 00 )
.custom instance void [mscorlib]System.Reflection.AssemblyVersionAttribute::.ctor(string) = ( 01 00 07 31 2E 30 2E 30 2E 30 00 00 ) // ...1.0.0.0..
// --- The following custom attribute is added automatically, do not uncomment -------
// .custom instance void [mscorlib]System.Diagnostics.DebuggableAttribute::.ctor(valuetype [mscorlib]System.Diagnostics.DebuggableAttribute/DebuggingModes) = ( 01 00 01 01 00 00 00 00 )
.hash algorithm 0x00008004
.ver 1:0:0:0
}
.mresource public FSharpSignatureData.IntrinsicTypeExtensionTest
{
// Offset: 0x00000000 Length: 0x000004C3
// WARNING: managed resource file FSharpSignatureData.IntrinsicTypeExtensionTest created
}
.mresource public FSharpOptimizationData.IntrinsicTypeExtensionTest
{
// Offset: 0x000004C8 Length: 0x0000012A
// WARNING: managed resource file FSharpOptimizationData.IntrinsicTypeExtensionTest created
}
.module IntrinsicTypeExtensionTest.exe
// MVID: {56A9E36B-3354-BA3E-A745-03836BE3A956}
.imagebase 0x00400000
.file alignment 0x00000200
.stackreserve 0x00100000
.subsystem 0x0003 // WINDOWS_CUI
.corflags 0x00000003 // ILONLY 32BITREQUIRED
// Image base: 0x02710000
// =============== CLASS MEMBERS DECLARATION ===================
.class public abstract auto ansi sealed test.main
extends [mscorlib]System.Object
{
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.CompilationMappingAttribute::.ctor(valuetype [FSharp.Core]Microsoft.FSharp.Core.SourceConstructFlags) = ( 01 00 07 00 00 00 00 00 )
.class auto ansi sealed nested public u
extends [mscorlib]System.Object
{
.method public specialname rtspecialname
instance void .ctor() cil managed
{
// Code size 13 (0xd)
.maxstack 3
.locals init (class test.main/u V_0)
IL_0000: ldarg.0
IL_0001: call instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: nop
IL_0008: nop
IL_0009: stloc.0
IL_000a: nop
IL_000b: nop
IL_000c: ret
} // end of method u::.ctor
.method public specialname static string
get_MyStaticProperty() cil managed
{
// Code size 6 (0x6)
.maxstack 8
IL_0000: ldstr "Hello generative world"
IL_0005: ret
} // end of method u::get_MyStaticProperty
.method public specialname instance string
get_MyProperty() cil managed
{
// Code size 12 (0xc)
.maxstack 1
.locals init (class test.main/u V_0)
IL_0000: ldarg.0
IL_0001: nop
IL_0002: nop
IL_0003: stloc.0
IL_0004: nop
IL_0005: nop
IL_0006: ldstr "Hello generative world"
IL_000b: ret
} // end of method u::get_MyProperty
.method public static string MyStaticMethod() cil managed
{
// Code size 6 (0x6)
.maxstack 8
IL_0000: ldstr "Hello generative world"
IL_0005: ret
} // end of method u::MyStaticMethod
.method public instance string MyMethod() cil managed
{
// Code size 12 (0xc)
.maxstack 1
.locals init (class test.main/u V_0)
IL_0000: ldarg.0
IL_0001: nop
IL_0002: nop
IL_0003: stloc.0
IL_0004: nop
IL_0005: nop
IL_0006: ldstr "Hello generative world"
IL_000b: ret
} // end of method u::MyMethod
.property string MyStaticProperty()
{
.get string test.main/u::get_MyStaticProperty()
} // end of property u::MyStaticProperty
.property instance string MyProperty()
{
.get instance string test.main/u::get_MyProperty()
} // end of property u::MyProperty
} // end of class u
.class auto ansi sealed nested public t
extends [mscorlib]System.Object
{
.method public specialname rtspecialname
instance void .ctor() cil managed
{
// Code size 13 (0xd)
.maxstack 3
.locals init (class test.main/u V_0)
IL_0000: ldarg.0
IL_0001: call instance void [mscorlib]System.Object::.ctor()
IL_0006: ldarg.0
IL_0007: nop
IL_0008: nop
IL_0009: stloc.0
IL_000a: nop
IL_000b: nop
IL_000c: ret
} // end of method t::.ctor
.method public specialname static string
get_MyStaticProperty() cil managed
{
// Code size 6 (0x6)
.maxstack 8
IL_0000: ldstr "Hello generative world"
IL_0005: ret
} // end of method t::get_MyStaticProperty
.method public specialname instance string
get_MyProperty() cil managed
{
// Code size 12 (0xc)
.maxstack 1
.locals init (class test.main/u V_0)
IL_0000: ldarg.0
IL_0001: nop
IL_0002: nop
IL_0003: stloc.0
IL_0004: nop
IL_0005: nop
IL_0006: ldstr "Hello generative world"
IL_000b: ret
} // end of method t::get_MyProperty
.method public static string MyStaticMethod() cil managed
{
// Code size 6 (0x6)
.maxstack 8
IL_0000: ldstr "Hello generative world"
IL_0005: ret
} // end of method t::MyStaticMethod
.method public instance string MyMethod() cil managed
{
// Code size 12 (0xc)
.maxstack 1
.locals init (class test.main/u V_0)
IL_0000: ldarg.0
IL_0001: nop
IL_0002: nop
IL_0003: stloc.0
IL_0004: nop
IL_0005: nop
IL_0006: ldstr "Hello generative world"
IL_000b: ret
} // end of method t::MyMethod
.property string MyStaticProperty()
{
.get string test.main/u::get_MyStaticProperty()
} // end of property t::MyStaticProperty
.property instance string MyProperty()
{
.get instance string test.main/u::get_MyProperty()
} // end of property t::MyProperty
} // end of class t
.method public static int32 main(string[] argv) cil managed
{
.entrypoint
.custom instance void [FSharp.Core]Microsoft.FSharp.Core.EntryPointAttribute::.ctor() = ( 01 00 00 00 )
// Code size 92 (0x5c)
.maxstack 4
.locals init ([0] class test.main/t tinstance,
[1] class test.main/u uinstance,
[2] class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<string,class [FSharp.Core]Microsoft.FSharp.Core.Unit> V_2,
[3] string V_3,
[4] class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<string,class [FSharp.Core]Microsoft.FSharp.Core.Unit> V_4,
[5] string V_5,
[6] string V_6,
[7] string V_7)
IL_0000: nop
IL_0001: newobj instance void test.main/t::.ctor()
IL_0006: stloc.0
IL_0007: newobj instance void test.main/u::.ctor()
IL_000c: stloc.1
IL_000d: ldstr "tinstance.MyProperty=%s"
IL_0012: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5<class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<string,class [FSharp.Core]Microsoft.FSharp.Core.Unit>,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string>::.ctor(string)
IL_0017: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatLine<class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<string,class [FSharp.Core]Microsoft.FSharp.Core.Unit>>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
IL_001c: stloc.2
IL_001d: ldloc.0
IL_001e: callvirt instance string test.main/t::get_MyProperty()
IL_0023: stloc.3
IL_0024: ldloc.2
IL_0025: ldloc.3
IL_0026: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<string,class [FSharp.Core]Microsoft.FSharp.Core.Unit>::Invoke(!0)
IL_002b: pop
IL_002c: ldstr "uinstance.MyProperty=%s"
IL_0031: newobj instance void class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`5<class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<string,class [FSharp.Core]Microsoft.FSharp.Core.Unit>,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit,string>::.ctor(string)
IL_0036: call !!0 [FSharp.Core]Microsoft.FSharp.Core.ExtraTopLevelOperators::PrintFormatLine<class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<string,class [FSharp.Core]Microsoft.FSharp.Core.Unit>>(class [FSharp.Core]Microsoft.FSharp.Core.PrintfFormat`4<!!0,class [mscorlib]System.IO.TextWriter,class [FSharp.Core]Microsoft.FSharp.Core.Unit,class [FSharp.Core]Microsoft.FSharp.Core.Unit>)
IL_003b: stloc.s V_4
IL_003d: ldloc.1
IL_003e: callvirt instance string test.main/u::get_MyProperty()
IL_0043: stloc.s V_5
IL_0045: ldloc.s V_4
IL_0047: ldloc.s V_5
IL_0049: callvirt instance !1 class [FSharp.Core]Microsoft.FSharp.Core.FSharpFunc`2<string,class [FSharp.Core]Microsoft.FSharp.Core.Unit>::Invoke(!0)
IL_004e: pop
IL_004f: call string [mscorlib]System.Console::ReadLine()
IL_0054: stloc.s V_6
IL_0056: ldloc.s V_6
IL_0058: stloc.s V_7
IL_005a: ldc.i4.0
IL_005b: ret
} // end of method main::main
} // end of class test.main
.class private abstract auto ansi sealed '<StartupCode$IntrinsicTypeExtensionTest>'.$Program
extends [mscorlib]System.Object
{
} // end of class '<StartupCode$IntrinsicTypeExtensionTest>'.$Program
.class private abstract auto ansi sealed '<StartupCode$IntrinsicTypeExtensionTest>'.$AssemblyInfo
extends [mscorlib]System.Object
{
} // end of class '<StartupCode$IntrinsicTypeExtensionTest>'.$AssemblyInfo
.class private abstract auto ansi sealed '<StartupCode$IntrinsicTypeExtensionTest>.$.NETFramework,Version=v4.5.2'.AssemblyAttributes
extends [mscorlib]System.Object
{
} // end of class '<StartupCode$IntrinsicTypeExtensionTest>.$.NETFramework,Version=v4.5.2'.AssemblyAttributes
// =============================================================
// *********** DISASSEMBLY COMPLETE ***********************
// WARNING: Created Win32 resource file C:\Users\dave\Documents\test.res
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment