rendered paste bodypoupou@pollux:~/src/bugzilla> cat ex.cs
using System;
class Program {
static int BigTest ()
{
return 256;
}
static byte SmallTest ()
{
return 0;
}
static int Main (string[] args)
{
if (args.Length == 0)
return BigTest ();
else
return SmallTest ();
}
}
poupou@pollux:~/src/bugzilla> monodis ex.exe
.assembly extern mscorlib
{
.ver 1:0:5000:0
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
}
.assembly 'ex'
{
.hash algorithm 0x00008004
.ver 0:0:0:0
}
.module ex.exe // GUID = {011DCBF7-6E15-4B98-8FF7-E855015AB443}
.class private auto ansi beforefieldinit Program
extends [mscorlib]System.Object
{
// method line 1
.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 Program::.ctor
// method line 2
.method private static hidebysig
default int32 BigTest () cil managed
{
// Method begins at RVA 0x20f4
// Code size 6 (0x6)
.maxstack 8
IL_0000: ldc.i4 256
IL_0005: ret
} // end of method Program::BigTest
// method line 3
.method private static hidebysig
default unsigned int8 SmallTest () cil managed
{
// Method begins at RVA 0x20fc
// Code size 2 (0x2)
.maxstack 8
IL_0000: ldc.i4.0
IL_0001: ret
} // end of method Program::SmallTest
// method line 4
.method private static hidebysig
default int32 Main (string[] args) cil managed
{
// Method begins at RVA 0x2100
.entrypoint
// Code size 20 (0x14)
.maxstack 8
IL_0000: ldarg.0
IL_0001: ldlen
IL_0002: conv.i4
IL_0003: brtrue IL_000e
IL_0008: call int32 class Program::BigTest()
IL_000d: ret
IL_000e: call unsigned int8 class Program::SmallTest()
IL_0013: ret
} // end of method Program::Main
} // end of class Program