0e3599566b41b91bd16990d47b0512f942a1e42c
[platform/upstream/coreclr.git] / tests / src / JIT / Regression / JitBlue / DevDiv_397793 / DevDiv_397793.il
1 // Licensed to the .NET Foundation under one or more agreements.
2 // The .NET Foundation licenses this file to you under the MIT license.
3 // See the LICENSE file in the project root for more information.
4
5 .assembly extern mscorlib{}
6 .assembly ILGEN_MODULE{}
7 .class ILGEN_CLASS
8 {
9     .method static float32 ILGEN_METHOD(int16, char, char, native int)
10     {
11         .maxstack  65535
12         .locals init (int8, native unsigned int, int64, int8, bool, unsigned int64, char, float64, int64, native int, float32, int64, int64, unsigned int16)
13
14         IL_0000: ldloc 0x000d
15         IL_0004: not
16         IL_0005: ldloc.s 0x06
17         IL_0007: cgt.un
18         IL_0009: ldloc.s 0x06
19         IL_000b: clt.un
20         IL_000d: conv.r4
21         IL_000e: ldloc.s 0x08
22         IL_0010: conv.r.un
23         IL_0011: mul
24         IL_0012: conv.i8
25         IL_0013: ldloc.s 0x03
26         IL_0015: conv.u1
27         IL_0016: not
28         IL_0017: ldloc.s 0x00
29         IL_0019: ldloc.s 0x07
30         IL_001b: neg
31         IL_001c: conv.u1
32         IL_001d: xor
33         IL_001e: sub
34         IL_001f: ldloc 0x000c
35         IL_0023: neg
36         IL_0024: conv.i8
37         IL_0025: ldloc.s 0x07
38         IL_0027: neg
39         IL_0028: conv.u8
40         IL_0029: conv.i8
41         IL_002a: ldc.i4 0x2487c9b5
42         IL_002f: conv.i8
43         IL_0030: rem.un
44         IL_0031: ldloc.s 0x09
45         IL_0033: conv.i8
46         IL_0034: ldloc.s 0x01
47         IL_0036: neg
48         IL_0037: not
49         IL_0038: ldloc 0x0006
50         IL_003c: mul
51         IL_003d: shr.un
52         IL_003e: add
53         IL_003f: ldloc.s 0x0b
54         IL_0041: conv.i4
55         IL_0042: shr.un
56         IL_0043: ldarg.s 0x03
57         IL_0045: conv.i4
58         IL_0046: ldloc.s 0x00
59         IL_0048: clt
60         IL_004a: neg
61         IL_004b: ldloc.s 0x09
62         IL_004d: pop
63         IL_004e: conv.r.un
64         IL_004f: conv.u8
65         IL_0050: ldloc.s 0x05
66         IL_0052: mul
67         IL_0053: ldloc.s 0x0c
68         IL_0055: conv.i8
69         IL_0056: not
70         IL_0057: cgt.un
71         IL_0059: neg
72         IL_005a: nop
73         IL_005b: shl
74         IL_005c: ldc.i8 0x6ddee7e52bcb7a50
75         IL_0065: ldloc 0x0004
76         IL_0069: shr.un
77         IL_006a: pop
78         IL_006b: and
79         IL_006c: conv.u2
80         IL_006d: add
81         IL_006e: ldarg.s 0x02
82         IL_0070: not
83         IL_0071: neg
84         IL_0072: pop
85         IL_0073: ldarg.s 0x01
86         IL_0075: ldloc 0x0008
87         IL_0079: ldloc 0x000b
88         IL_007d: clt
89         IL_007f: conv.r.un
90         IL_0080: pop
91         IL_0081: ldloc 0x000c
92         IL_0085: not
93         IL_0086: ldloc.s 0x0c
94         IL_0088: conv.u8
95         IL_0089: mul
96         IL_008a: ldloc 0x000b
97         IL_008e: add
98         IL_008f: ldloc 0x0002
99         IL_0093: ldloc.s 0x0b
100         IL_0095: rem
101         IL_0096: ldc.i8 0xfe6f83985a745065
102         IL_009f: add
103         IL_00a0: neg
104         IL_00a1: cgt.un
105         IL_00a3: shr
106         IL_00a4: conv.u8
107         IL_00a5: nop
108         IL_00a6: neg
109         IL_00a7: neg
110         IL_00a8: pop
111         IL_00a9: shr
112         IL_00aa: nop
113         IL_00ab: conv.r.un
114         IL_00ac: ret   
115     }
116
117     .method public static int32 Main()
118     {
119         .entrypoint
120
121         .try
122         {
123             ldc.i4 0
124             ldc.i4 0
125             ldc.i4 0
126             ldc.i4 0
127             conv.i
128             call float32 ILGEN_CLASS::ILGEN_METHOD(int16, char, char, native int)
129             pop
130             leave done
131         }
132         catch [mscorlib]System.Exception
133         {
134             pop
135             leave done
136         }
137
138     done:
139         ldc.i4 100
140         ret
141     }
142 }