All pastes #835250 Raw Edit

Untitled

public text v1 · immutable
#835250 ·published 2007-12-28 19:43 UTC
rendered paste body
poupou@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