summaryrefslogtreecommitdiff
path: root/tests/src/JIT/Regression/JitBlue/DevDiv_578214/DevDiv_578214.il
blob: 325fa74ae686b6699f244741d7ff93969eb86367 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
//  Microsoft (R) .NET Framework IL Disassembler.  Version 4.7.3108.0
//  Copyright (c) Microsoft Corporation.  All rights reserved.

// This test originally hit an error in dead code elimination phase that overwrote flag that trigers next iteration if the current iteration has deleted something (fgStmtRemoved)
// from true to false during the iteration.

// Metadata version: v4.0.30319
.assembly extern System.Runtime { auto }
.assembly DevDiv_578214 {}

.class private auto ansi beforefieldinit DevDiv_578214.Program
       extends [System.Runtime]System.Object
{
.method static int16 ILGEN_METHOD(unsigned int16, float32, native unsigned int, unsigned int16, unsigned int8, int16, unsigned int32)
{
	.maxstack  192
	.locals init (unsigned int64)

	IL_0000: ldc.r8 float64(0x1091e4a00cee077c)
	IL_0009: ckfinite
	IL_000a: conv.i4
	IL_000b: ldarg.s 0x04
	IL_000d: ldloc 0x0000
	IL_0011: conv.i1
	IL_0012: sub.ovf.un
	IL_0013: add.ovf
	IL_0014: ldarg.s 0x01
	IL_0016: starg 0x0001
	IL_001a: nop
	IL_001b: brtrue 
	IL_003c
	IL_0020: ldarg.s 0x01
	IL_0022: ldarg 0x0000
	IL_0026: ldarg 0x0003
	IL_002a: clt.un
	IL_002c: ldarg 0x0004
	IL_0030: xor
	IL_0031: conv.r8
	IL_0032: neg
	IL_0033: starg 0x0001
	IL_0037: conv.ovf.u4.un
	IL_0038: starg 0x0005
	IL_003c: ldc.i8 0x26f19f75aa0243b7
	IL_0045: conv.i8
	IL_0046: conv.r8
	IL_0047: ldarg.s 0x01
	IL_0049: conv.r.un
	IL_004a: pop
	IL_004b: ldarg.s 0x03
	IL_004d: ldarg 0x0006
	IL_0051: ceq
	IL_0053: conv.r.un
	IL_0054: cgt.un
	IL_0056: ldloc 0x0000
	IL_005a: conv.ovf.i8.un
	IL_005b: brtrue 
	IL_006b
	IL_0060: ldarg 0x0001
	IL_0064: pop
	IL_0065: ldarg 0x0001
	IL_0069: ckfinite
	IL_006a: pop
	IL_006b: ldarg.s 0x05
	IL_006d: neg
	IL_006e: conv.ovf.i8.un
	IL_006f: ldloc.s 0x00
	IL_0071: ceq
	IL_0073: dup
	IL_0074: div.un
	IL_0075: ldarg 0x0001
	IL_0079: neg
	IL_007a: ckfinite
	IL_007b: starg.s 0x01
	IL_007d: bgt 
	IL_0086
	IL_0082: ldloc.s 0x00
	IL_0084: conv.ovf.u2.un
	IL_0085: pop
	IL_0086: ldarg.s 0x04
	IL_0088: conv.ovf.u4.un
	IL_0089: conv.ovf.u8.un
	IL_008a: ldarg.s 0x01
	IL_008c: conv.ovf.u1
	IL_008d: shr
	IL_008e: conv.r4
	IL_008f: ldarg 0x0006
	IL_0093: conv.r.un
	IL_0094: conv.r.un
	IL_0095: ckfinite
	IL_0096: ckfinite
	IL_0097: clt
	IL_0099: ldc.i8 0x643c1542f946b6ef
	IL_00a2: conv.r8
	IL_00a3: ldc.r8 float64(0x8bd4c4eb52d70435)
	IL_00ac: conv.r.un
	IL_00ad: conv.ovf.u8
	IL_00ae: not
	IL_00af: conv.r8
	IL_00b0: conv.ovf.u1
	IL_00b1: starg 0x0004
	IL_00b5: ldc.i4 0x7771fb8b
	IL_00ba: conv.r8
	IL_00bb: cgt.un
	IL_00bd: pop
	IL_00be: neg
	IL_00bf: ret   
}

.method private hidebysig static int32 
  Main(string[] args) cil managed
{
	.entrypoint
	// Code size       34 (0x22)
	.maxstack  7
	.locals init (int32 V_0)
	IL_0000:  nop
	.try
	{
	IL_0001:  nop
	IL_0002:  ldc.i4.0
	IL_0003:  ldc.r4     0.0
	IL_0008:  ldc.i4.0
	IL_0009:  ldc.i4.0
	IL_000a:  ldc.i4.0
	IL_000b:  ldc.i4.0
	IL_000c:  ldc.i4.0
	IL_000d:  call       int16 DevDiv_578214.Program::ILGEN_METHOD(uint16,
																 float32,
																 native unsigned int,
																 uint16,
																 uint8,
																 int16,
																 uint32)
	IL_0012:  pop
	IL_0013:  nop
	IL_0014:  leave.s    IL_001b

	}  // end .try
	catch [System.Runtime]System.Object 
	{
	IL_0016:  pop
	IL_0017:  nop
	IL_0018:  nop
	IL_0019:  leave.s    IL_001b

	}  // end handler
	IL_001b:  ldc.i4.s   100
	IL_001d:  stloc.0
	IL_001e:  br.s       IL_0020

	IL_0020:  ldloc.0
	IL_0021:  ret
} // end of method Program::Main

.method public hidebysig specialname rtspecialname 
  instance void  .ctor() cil managed
{
	// Code size       8 (0x8)
	.maxstack  8
	IL_0000:  ldarg.0
	IL_0001:  call       instance void [System.Runtime]System.Object::.ctor()
	IL_0006:  nop
	IL_0007:  ret
} // end of method Program::.ctor

} // end of class DevDiv_578214.Program