Reduce TLS accesses. (#11487)
[mono-project.git] / mono / tests / newobj-abstract.il
blobc5bb8a935c3657936ffbf353271bdf8ab1b6c497
1 .assembly extern mscorlib {}
3 .assembly 'newobj-abstract' {}
5 .class private auto ansi beforefieldinit Program
6        extends [mscorlib]System.Object
8   .method public hidebysig static int32  Main() cil managed
9   {
10     .entrypoint
11     .locals init (int32 V_0)
13     ldc.i4.1
14     stloc.0
15     .try
16     {
17       call       void Program::NewAbstract()
18       leave.s    leavetarget
20     }  // end .try
21     catch [mscorlib]System.MemberAccessException
22     {
23       pop
24       ldc.i4.0
25       stloc.0
26       leave.s    leavetarget
27     }
28 leavetarget:
29     ldloc.0
30     ret
31   } // end of method Program::Main
33   .method public hidebysig static void  NewAbstract() cil managed
34   {
35     newobj     instance void Foo::.ctor()
36     call       void [mscorlib]System.GC::KeepAlive(object)
37     ret
38   }
40   .method public hidebysig specialname rtspecialname
41           instance void  .ctor() cil managed
42   {
43     ldarg.0
44     call instance void [mscorlib]System.Object::.ctor()
45     ret
46   }
50 .class private abstract auto ansi beforefieldinit Foo
51        extends [mscorlib]System.Object
53   .method public hidebysig specialname rtspecialname
54           instance void  .ctor() cil managed
55   {
56     ldarg.0
57     call instance void [mscorlib]System.Object::.ctor()
58     ret
59   }