254 lines
4.2 KiB
Plaintext
254 lines
4.2 KiB
Plaintext
|
.assembly 'incr2' { }
|
||
|
.assembly extern 'mscorlib' {
|
||
|
.ver 1:0:5000:0
|
||
|
.publickeytoken = ( b7 7a 5c 56 19 34 e0 89 )
|
||
|
}
|
||
|
.class 'T'
|
||
|
extends [mscorlib]System.Object
|
||
|
{
|
||
|
.field public int32 'i'
|
||
|
.field public int32 'x'
|
||
|
.field public int32 'y'
|
||
|
.field public int32[] 'a'
|
||
|
.method hidebysig public static void 'Main'() {
|
||
|
.entrypoint
|
||
|
.locals init ([0]class 'T' 't0')
|
||
|
newobj instance void 'T'::.ctor()
|
||
|
stloc 0 // t
|
||
|
ldloc 0 // t
|
||
|
call instance void 'T'::'test'()
|
||
|
.locals init ([1]int32 't1')
|
||
|
.locals init ([2]int32 't2')
|
||
|
.locals init ([3]int32[] 't3')
|
||
|
ldloc 0 // t
|
||
|
ldfld int32[] 'T'::'a'
|
||
|
stloc 3 // t3
|
||
|
ldc.i4.0
|
||
|
stloc 2 // t2
|
||
|
br $4
|
||
|
$1:
|
||
|
ldloc 3 // t3
|
||
|
ldloc 2 // t2
|
||
|
ldelem.i4
|
||
|
stloc 1 // x
|
||
|
ldstr " {0}"
|
||
|
ldloc 1 // x
|
||
|
box int32
|
||
|
call void [mscorlib]System.Console::'Write'(string,object)
|
||
|
$2:
|
||
|
ldloc 2 // t2
|
||
|
ldc.i4.1
|
||
|
add
|
||
|
stloc 2 // t2
|
||
|
$4:
|
||
|
ldloc 2 // t2
|
||
|
ldloc 3 // t3
|
||
|
ldlen
|
||
|
conv.i4
|
||
|
blt $1
|
||
|
$3:
|
||
|
call void [mscorlib]System.Console::'WriteLine'()
|
||
|
ret
|
||
|
.maxstack 2
|
||
|
} // end of method T.Main
|
||
|
.method hidebysig public instance void 'test'() {
|
||
|
ldarg.0
|
||
|
ldfld int32 'T'::'x'
|
||
|
ldc.i4 1
|
||
|
add
|
||
|
.locals init ([0]int32 't0')
|
||
|
stloc 0 // t0
|
||
|
ldarg.0
|
||
|
ldloc 0 // t0
|
||
|
stfld int32 'T'::'x'
|
||
|
ldarg.0
|
||
|
ldfld int32[] 'T'::'a'
|
||
|
.locals init ([1]int32[] 't1')
|
||
|
dup
|
||
|
stloc 1 // t1
|
||
|
ldarg.0
|
||
|
ldarg.0
|
||
|
ldfld int32 'T'::'i'
|
||
|
call instance int32 'T'::'f'(int32)
|
||
|
.locals init ([2]int32 't2')
|
||
|
dup
|
||
|
stloc 2 // t2
|
||
|
ldelem.i4
|
||
|
ldarg.0
|
||
|
ldfld int32 'T'::'i'
|
||
|
add
|
||
|
.locals init ([3]int32 't3')
|
||
|
stloc 3 // t3
|
||
|
ldloc 1 // t1
|
||
|
ldloc 2 // t2
|
||
|
ldloc 3 // t3
|
||
|
stelem.i4
|
||
|
ldarg.0
|
||
|
ldfld int32 'T'::'i'
|
||
|
ldc.i4.1
|
||
|
add
|
||
|
.locals init ([4]int32 't4')
|
||
|
stloc 4 // t4
|
||
|
ldarg.0
|
||
|
ldloc 4 // t4
|
||
|
stfld int32 'T'::'i'
|
||
|
ldarg.0
|
||
|
ldarg.0
|
||
|
ldfld int32 'T'::'i'
|
||
|
dup
|
||
|
ldc.i4.1
|
||
|
add
|
||
|
.locals init ([5]int32 't5')
|
||
|
stloc 5 // t5
|
||
|
ldarg.0
|
||
|
ldloc 5 // t5
|
||
|
stfld int32 'T'::'i'
|
||
|
stfld int32 'T'::'x'
|
||
|
ldarg.0
|
||
|
ldfld int32[] 'T'::'a'
|
||
|
.locals init ([6]int32[] 't6')
|
||
|
dup
|
||
|
stloc 6 // t6
|
||
|
ldarg.0
|
||
|
ldarg.0
|
||
|
ldfld int32 'T'::'i'
|
||
|
call instance int32 'T'::'f'(int32)
|
||
|
.locals init ([7]int32 't7')
|
||
|
dup
|
||
|
stloc 7 // t7
|
||
|
ldelem.i4
|
||
|
ldc.i4.1
|
||
|
add
|
||
|
.locals init ([8]int32 't8')
|
||
|
stloc 8 // t8
|
||
|
ldloc 6 // t6
|
||
|
ldloc 7 // t7
|
||
|
ldloc 8 // t8
|
||
|
stelem.i4
|
||
|
ldarg.0
|
||
|
ldarg.0
|
||
|
ldfld int32[] 'T'::'a'
|
||
|
.locals init ([9]int32[] 't9')
|
||
|
dup
|
||
|
stloc 9 // t9
|
||
|
ldarg.0
|
||
|
ldarg.0
|
||
|
ldfld int32 'T'::'i'
|
||
|
call instance int32 'T'::'f'(int32)
|
||
|
.locals init ([10]int32 't10')
|
||
|
dup
|
||
|
stloc 10 // t10
|
||
|
ldelem.i4
|
||
|
dup
|
||
|
ldc.i4.1
|
||
|
add
|
||
|
.locals init ([11]int32 't11')
|
||
|
stloc 11 // t11
|
||
|
ldloc 9 // t9
|
||
|
ldloc 10 // t10
|
||
|
ldloc 11 // t11
|
||
|
stelem.i4
|
||
|
stfld int32 'T'::'y'
|
||
|
ldarg.0
|
||
|
ldfld int32 'T'::'i'
|
||
|
ldc.i4.1
|
||
|
sub
|
||
|
.locals init ([12]int32 't12')
|
||
|
stloc 12 // t12
|
||
|
ldarg.0
|
||
|
ldloc 12 // t12
|
||
|
stfld int32 'T'::'i'
|
||
|
ldarg.0
|
||
|
ldarg.0
|
||
|
ldfld int32 'T'::'i'
|
||
|
ldc.i4.1
|
||
|
sub
|
||
|
.locals init ([13]int32 't13')
|
||
|
stloc 13 // t13
|
||
|
ldarg.0
|
||
|
ldloc 13 // t13
|
||
|
stfld int32 'T'::'i'
|
||
|
ldloc 13 // t13
|
||
|
stfld int32 'T'::'x'
|
||
|
ldarg.0
|
||
|
ldfld int32[] 'T'::'a'
|
||
|
.locals init ([14]int32[] 't14')
|
||
|
dup
|
||
|
stloc 14 // t14
|
||
|
ldarg.0
|
||
|
ldarg.0
|
||
|
ldfld int32 'T'::'i'
|
||
|
call instance int32 'T'::'f'(int32)
|
||
|
.locals init ([15]int32 't15')
|
||
|
dup
|
||
|
stloc 15 // t15
|
||
|
ldelem.i4
|
||
|
ldc.i4.1
|
||
|
sub
|
||
|
.locals init ([16]int32 't16')
|
||
|
stloc 16 // t16
|
||
|
ldloc 14 // t14
|
||
|
ldloc 15 // t15
|
||
|
ldloc 16 // t16
|
||
|
stelem.i4
|
||
|
ldarg.0
|
||
|
ldarg.0
|
||
|
ldfld int32[] 'T'::'a'
|
||
|
.locals init ([17]int32[] 't17')
|
||
|
dup
|
||
|
stloc 17 // t17
|
||
|
ldarg.0
|
||
|
ldarg.0
|
||
|
ldfld int32 'T'::'i'
|
||
|
call instance int32 'T'::'f'(int32)
|
||
|
.locals init ([18]int32 't18')
|
||
|
dup
|
||
|
stloc 18 // t18
|
||
|
ldelem.i4
|
||
|
ldc.i4.1
|
||
|
sub
|
||
|
.locals init ([19]int32 't19')
|
||
|
stloc 19 // t19
|
||
|
ldloc 17 // t17
|
||
|
ldloc 18 // t18
|
||
|
ldloc 19 // t19
|
||
|
stelem.i4
|
||
|
ldloc 19 // t19
|
||
|
stfld int32 'T'::'y'
|
||
|
ret
|
||
|
.maxstack 5
|
||
|
} // end of method T.test
|
||
|
.method hidebysig public instance int32 'f'(int32 'x') {
|
||
|
.locals init ([0]int32 't0')
|
||
|
ldarg.0
|
||
|
ldc.i4 6
|
||
|
stfld int32 'T'::'i'
|
||
|
ldarg 1 // x
|
||
|
stloc 0 // t0
|
||
|
br $1
|
||
|
$1:
|
||
|
ldloc 0 // t0
|
||
|
ret
|
||
|
.maxstack 2
|
||
|
} // end of method T.f
|
||
|
.method hidebysig specialname rtspecialname public void .ctor() {
|
||
|
ldarg.0
|
||
|
ldc.i4 0
|
||
|
stfld int32 'T'::'i'
|
||
|
ldarg.0
|
||
|
ldc.i4 0
|
||
|
stfld int32 'T'::'x'
|
||
|
ldarg.0
|
||
|
ldc.i4 0
|
||
|
stfld int32 'T'::'y'
|
||
|
ldarg.0
|
||
|
ldc.i4 10
|
||
|
newarr int32
|
||
|
stfld int32[] 'T'::'a'
|
||
|
ldarg.0
|
||
|
call instance void [mscorlib]System.Object::.ctor()
|
||
|
ret
|
||
|
.maxstack 2
|
||
|
} // end of constructor T.T
|
||
|
} // end of class T
|