457 references to OpCodes
illink (66)
Linker.Dataflow\HandleCallAction.cs (2)
38
_isNewObj = operation.OpCode ==
OpCodes
.Newobj;
74
if (_operation.OpCode ==
OpCodes
.Newobj)
Linker.Steps\AddBypassNGenStep.cs (3)
107
instructions.Add(Instruction.Create(
OpCodes
.Ldarg_0));
108
instructions.Add(Instruction.Create(
OpCodes
.Call, systemAttributeDefaultConstructor));
109
instructions.Add(Instruction.Create(
OpCodes
.Ret));
Linker.Steps\CodeRewriterStep.cs (26)
91
il.Emit(
OpCodes
.Ldarg_0);
92
il.Emit(
OpCodes
.Call, ctor);
99
il.Emit(
OpCodes
.Ldstr, "Linked away");
100
il.Emit(
OpCodes
.Newobj, ctor);
101
il.Emit(
OpCodes
.Throw);
128
il.Emit(
OpCodes
.Ldarg_0);
129
il.Emit(
OpCodes
.Call, base_ctor);
149
il.Emit(
OpCodes
.Ret);
165
il.Emit(
OpCodes
.Ldloca_S, vd);
166
il.Emit(
OpCodes
.Initobj, method.ReturnType);
167
il.Emit(
OpCodes
.Ldloc_0);
172
il.Emit(
OpCodes
.Ldc_I4_0);
173
il.Emit(
OpCodes
.Conv_I);
211
return Instruction.Create(
OpCodes
.Ldc_I4_1);
213
return Instruction.Create(
OpCodes
.Ldc_I4_0);
217
return Instruction.Create(
OpCodes
.Ldstr, svalue);
219
return Instruction.Create(
OpCodes
.Ldnull);
225
return Instruction.Create(
OpCodes
.Ldnull);
229
return Instruction.Create(
OpCodes
.Ldc_R8, dvalue);
232
return Instruction.Create(
OpCodes
.Ldc_R8, 0.0);
236
return Instruction.Create(
OpCodes
.Ldc_R4, fvalue);
239
return Instruction.Create(
OpCodes
.Ldc_R4, 0.0f);
249
return Instruction.Create(
OpCodes
.Ldc_I4, intValue);
252
return Instruction.Create(
OpCodes
.Ldc_I4_0);
257
return Instruction.Create(
OpCodes
.Ldc_I8, longValue);
260
return Instruction.Create(
OpCodes
.Ldc_I8, 0L);
Linker.Steps\MarkStep.cs (2)
520
ilProcessor.InsertAfter(instr, Instruction.Create(
OpCodes
.Ldnull));
521
Instruction new_instr = Instruction.Create(
OpCodes
.Pop);
Linker.Steps\UnreachableBlocksOptimizer.cs (33)
351
return Instruction.Create(
OpCodes
.Ldstr, string.Concat(sleft, sright));
354
return Instruction.Create(
OpCodes
.Ldc_I4, result ? 1 : 0); // op_Equality / op_Inequality
538
var nop = Instruction.Create(
OpCodes
.Nop);
564
var nop = Instruction.Create(
OpCodes
.Nop);
692
Rewrite(index, Instruction.Create(
OpCodes
.Br, (Instruction)instr.Operand));
704
Rewrite(index, Instruction.Create(
OpCodes
.Br, (Instruction)instr.Operand));
719
RewriteConditionTo(index, Instruction.Create(operand == 0 ?
OpCodes
.Brfalse :
OpCodes
.Brtrue, targets[operand]));
720
Rewrite(index, Instruction.Create(
OpCodes
.Br, targets[operand]));
803
if (ms.HasThis && instruction.OpCode !=
OpCodes
.Newobj)
810
if (instruction.OpCode ==
OpCodes
.Ret)
863
Rewrite(index, Instruction.Create(
OpCodes
.Nop));
999
if (index == Instructions.Count - 1 && Instructions[index].OpCode ==
OpCodes
.Ret &&
1002
processor.Replace(index, Instruction.Create(
OpCodes
.Ldnull));
1003
processor.InsertAfter(Instructions[index], Instruction.Create(
OpCodes
.Throw));
1048
Rewrite(i, Instruction.Create(
OpCodes
.Br, (Instruction)instr.Operand));
1084
Rewrite(i, Instruction.Create(
OpCodes
.Br, (Instruction)instr.Operand));
1106
if (i >= 5 && opcode ==
OpCodes
.Switch && GetConstantValue(FoldedInstructions[i - 5], out operand) && operand is int opint3 && IsPairedStlocLdloc(FoldedInstructions[i - 4], FoldedInstructions[i - 3]))
1114
if (FoldedInstructions[i - 1].OpCode !=
OpCodes
.Sub)
1151
Rewrite(i, Instruction.Create(
OpCodes
.Ldc_I4_1));
1155
Rewrite(i, Instruction.Create(
OpCodes
.Ldc_I4_0));
1172
Rewrite(i, Instruction.Create(
OpCodes
.Ldc_I4_0));
1273
if (filterEnd >= 0 && FoldedInstructions[filterEnd].OpCode ==
OpCodes
.Endfilter)
1481
newInstr = Instruction.Create(
OpCodes
.Ret);
1485
newInstr = Instruction.Create(
OpCodes
.Nop);
1528
var nop = Instruction.Create(
OpCodes
.Nop);
1533
ILProcessor.Replace(index - 1, Instruction.Create(
OpCodes
.Pop));
1538
var pop = Instruction.Create(
OpCodes
.Pop);
1540
ILProcessor.InsertAfter(pop, Instruction.Create(
OpCodes
.Pop));
1550
ILProcessor.Replace(index, Instruction.Create(
OpCodes
.Pop));
1908
PushOnStack(Instruction.Create(
OpCodes
.Ldc_I4, lint == rint ? 1 : 0));
1914
PushOnStack(Instruction.Create(
OpCodes
.Ldc_I4, llong == rlong ? 1 : 0));
1928
PushOnStack(Instruction.Create(
OpCodes
.Ldc_I8, (long)oint));
Microsoft.Maui.Controls.Build.Tasks (291)
CompiledConverters\BindablePropertyConverter.cs (2)
21
yield return Instruction.Create(
OpCodes
.Ldnull);
25
yield return Instruction.Create(
OpCodes
.Ldsfld, bpRef);
CompiledConverters\BoundsTypeConverter.cs (5)
67
yield return Instruction.Create(
OpCodes
.Ldc_R8, x);
68
yield return Instruction.Create(
OpCodes
.Ldc_R8, y);
69
yield return Instruction.Create(
OpCodes
.Ldc_R8, w);
70
yield return Instruction.Create(
OpCodes
.Ldc_R8, h);
71
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Graphics", "Microsoft.Maui.Graphics", "Rect"), parameterTypes: new[] {
CompiledConverters\BrushTypeConverter.cs (2)
25
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls", "SolidColorBrush"), parameterTypes: new[] {
39
yield return Instruction.Create(
OpCodes
.Call, propertyGetterReference);
CompiledConverters\ColorTypeConverter.cs (8)
27
yield return Instruction.Create(
OpCodes
.Ldc_R4, color.Red);
28
yield return Instruction.Create(
OpCodes
.Ldc_R4, color.Green);
29
yield return Instruction.Create(
OpCodes
.Ldc_R4, color.Blue);
30
yield return Instruction.Create(
OpCodes
.Ldc_R4, color.Alpha);
32
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Graphics", "Microsoft.Maui.Graphics", "Color"), parameterTypes: new[] {
48
yield return Instruction.Create(
OpCodes
.Ldnull);
59
yield return Instruction.Create(
OpCodes
.Ldsfld, fieldReference);
70
yield return Instruction.Create(
OpCodes
.Call, propertyGetterReference);
CompiledConverters\ColumnDefinitionCollectionTypeConverter.cs (1)
6
using static Mono.Cecil.Cil.
OpCodes
;
CompiledConverters\ConstraintTypeConverter.cs (1)
7
using static Mono.Cecil.Cil.
OpCodes
;
CompiledConverters\CornerRadiusTypeConverter.cs (2)
42
yield return Instruction.Create(
OpCodes
.Ldc_R8, d);
43
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui", "Microsoft.Maui", "CornerRadius"), parameterTypes: args.Select(a => ("mscorlib", "System", "Double")).ToArray()));
CompiledConverters\EasingTypeConverter.cs (1)
6
using static Mono.Cecil.Cil.
OpCodes
;
CompiledConverters\EnumTypeConverter.cs (1)
18
yield return Instruction.Create(
OpCodes
.Ldc_I4, (int)(object)enumValue);
CompiledConverters\FlexBasisTypeConverter.cs (7)
21
yield return Instruction.Create(
OpCodes
.Ldsfld,
30
yield return Instruction.Create(
OpCodes
.Ldc_R4, (float)(relflex / 100));
31
yield return Instruction.Create(
OpCodes
.Ldc_I4_1); //isRelative: true
32
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui", "Microsoft.Maui.Layouts", "FlexBasis"), parameterTypes: new[] {
39
yield return Instruction.Create(
OpCodes
.Ldc_R4, flex);
40
yield return Instruction.Create(
OpCodes
.Ldc_I4_0); //isRelative: false
41
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui", "Microsoft.Maui.Layouts", "FlexBasis"), parameterTypes: new[] {
CompiledConverters\FontSizeTypeConverter.cs (7)
21
yield return Instruction.Create(
OpCodes
.Ldc_R8, size);
29
yield return Instruction.Create(
OpCodes
.Ldc_I4, (int)namedSize);
33
yield return Instruction.Create(
OpCodes
.Ldloc, context.Variables[parent]);
34
yield return Instruction.Create(
OpCodes
.Callvirt, module.ImportMethodReference(
41
yield return Instruction.Create(
OpCodes
.Ldtoken, module.ImportReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls", "Label")));
42
yield return Instruction.Create(
OpCodes
.Call, module.ImportMethodReference(
49
yield return Instruction.Create(
OpCodes
.Call, module.ImportMethodReference(
CompiledConverters\GridLengthTypeConverter.cs (1)
8
using static Mono.Cecil.Cil.
OpCodes
;
CompiledConverters\ICompiledTypeConverter.cs (1)
25
yield return Instruction.Create(
OpCodes
.Ldc_I4_1);
CompiledConverters\ImageSourceTypeConverter.cs (6)
20
yield return Instruction.Create(
OpCodes
.Ldstr, value);
21
yield return Instruction.Create(
OpCodes
.Ldc_I4_1); // (int)UriKind.Absolute is 1
22
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("System", "System", "Uri"), parameterTypes: new[] {
25
yield return Instruction.Create(
OpCodes
.Call, module.ImportMethodReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls", "ImageSource"), "FromUri", parameterTypes: new[] {
30
yield return Instruction.Create(
OpCodes
.Ldstr, value);
31
yield return Instruction.Create(
OpCodes
.Call, module.ImportMethodReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls", "ImageSource"), "FromFile", parameterTypes: new[] {
CompiledConverters\LayoutOptionsConverter.cs (1)
34
yield return Instruction.Create(
OpCodes
.Ldsfld, fieldReference);
CompiledConverters\ListStringTypeConverter.cs (1)
8
using static Mono.Cecil.Cil.
OpCodes
;
CompiledConverters\PointTypeConverter.cs (3)
28
yield return Instruction.Create(
OpCodes
.Ldc_R8, point.X);
29
yield return Instruction.Create(
OpCodes
.Ldc_R8, point.Y);
30
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Graphics", "Microsoft.Maui.Graphics", "Point"), parameterTypes: new[] {
CompiledConverters\RDSourceTypeConverter.cs (1)
9
using static Mono.Cecil.Cil.
OpCodes
;
CompiledConverters\RectangleTypeConverter.cs (5)
40
yield return Instruction.Create(
OpCodes
.Ldc_R8, x);
41
yield return Instruction.Create(
OpCodes
.Ldc_R8, y);
42
yield return Instruction.Create(
OpCodes
.Ldc_R8, w);
43
yield return Instruction.Create(
OpCodes
.Ldc_R8, h);
44
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Graphics", "Microsoft.Maui.Graphics", "Rect"), parameterTypes: new[] {
CompiledConverters\RowDefinitionCollectionTypeConverter.cs (1)
6
using static Mono.Cecil.Cil.
OpCodes
;
CompiledConverters\StrokeShapeTypeConverter.cs (50)
26
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Ellipse"), parameterTypes: null));
36
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Line"), parameterTypes: null));
45
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Line"), parameterTypes: null));
52
yield return Instruction.Create(
OpCodes
.Ldc_R8, p1.X);
53
yield return Instruction.Create(
OpCodes
.Ldc_R8, p1.Y);
54
yield return Instruction.Create(
OpCodes
.Ldc_R8, 0d);
55
yield return Instruction.Create(
OpCodes
.Ldc_R8, 0d);
56
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Line"), parameterTypes: new[] {
66
yield return Instruction.Create(
OpCodes
.Ldc_R8, p1.X);
67
yield return Instruction.Create(
OpCodes
.Ldc_R8, p1.Y);
68
yield return Instruction.Create(
OpCodes
.Ldc_R8, p2.X);
69
yield return Instruction.Create(
OpCodes
.Ldc_R8, p2.Y);
71
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Line"), parameterTypes: new[] {
88
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Path"), parameterTypes: null));
92
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Path"), parameterTypes: null));
93
yield return Instruction.Create(
OpCodes
.Dup);
94
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "PathGeometryConverter"), parameterTypes: null));
95
yield return Instruction.Create(
OpCodes
.Ldstr, parts[1]);
96
yield return Instruction.Create(
OpCodes
.Call, module.ImportMethodReference(context.Cache, ("System", "System.ComponentModel", "TypeConverter"), "ConvertFromInvariantString", parameterTypes: new[] {
98
yield return Instruction.Create(
OpCodes
.Call, module.ImportPropertySetterReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Path"), "Data"));
107
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Polygon"), parameterTypes: null));
116
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Polygon"), parameterTypes: null));
125
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Polygon"), parameterTypes: new[] {
135
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Polyline"), parameterTypes: null));
144
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Polyline"), parameterTypes: null));
153
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Polyline"), parameterTypes: new[] {
160
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Rectangle"), parameterTypes: null));
169
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "RoundRectangle"), parameterTypes: null));
173
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "RoundRectangle"), parameterTypes: null));
174
yield return Instruction.Create(
OpCodes
.Dup);
179
yield return Instruction.Create(
OpCodes
.Ldc_R8, cornerRadius.TopLeft);
180
yield return Instruction.Create(
OpCodes
.Ldc_R8, cornerRadius.TopRight);
181
yield return Instruction.Create(
OpCodes
.Ldc_R8, cornerRadius.BottomLeft);
182
yield return Instruction.Create(
OpCodes
.Ldc_R8, cornerRadius.BottomRight);
184
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui", "Microsoft.Maui", "CornerRadius"), parameterTypes: new[] {
190
yield return Instruction.Create(
OpCodes
.Call, module.ImportPropertySetterReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "RoundRectangle"), "CornerRadius"));
196
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "Rectangle"), parameterTypes: null));
197
yield return Instruction.Create(
OpCodes
.Dup);
199
yield return Instruction.Create(
OpCodes
.Ldc_R8, radius);
200
yield return Instruction.Create(
OpCodes
.Ldc_R8, radius);
201
yield return Instruction.Create(
OpCodes
.Ldc_R8, radius);
202
yield return Instruction.Create(
OpCodes
.Ldc_R8, radius);
204
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui", "Microsoft.Maui", "CornerRadius"), parameterTypes: new[] {
210
yield return Instruction.Create(
OpCodes
.Call, module.ImportPropertySetterReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Shapes", "RoundRectangle"), "CornerRadius"));
220
yield return Instruction.Create(
OpCodes
.Ldc_I4, points.Count);
221
yield return Instruction.Create(
OpCodes
.Newarr, pointType);
226
yield return Instruction.Create(
OpCodes
.Dup);
227
yield return Instruction.Create(
OpCodes
.Ldc_I4, i);
235
yield return Instruction.Create(
OpCodes
.Stelem_Any, pointType);
238
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, type: ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls", "PointCollection"), paramCount: 1));
CompiledConverters\ThicknessTypeConverter.cs (2)
47
yield return Instruction.Create(
OpCodes
.Ldc_R8, d);
48
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("Microsoft.Maui", "Microsoft.Maui", "Thickness"), parameterTypes: args.Select(a => ("mscorlib", "System", "Double")).ToArray()));
CompiledConverters\TypeTypeConverter.cs (1)
8
using static Mono.Cecil.Cil.
OpCodes
;
CompiledConverters\UriTypeConverter.cs (1)
6
using static Mono.Cecil.Cil.
OpCodes
;
CompiledMarkupExtensions\ArrayExtension.cs (9)
24
yield return Instruction.Create(
OpCodes
.Ldc_I4, n);
25
yield return Instruction.Create(
OpCodes
.Newarr, typeTypeRef);
42
yield return Instruction.Create(
OpCodes
.Dup);
43
yield return Instruction.Create(
OpCodes
.Ldc_I4, i);
44
yield return Instruction.Create(
OpCodes
.Ldelema, typeTypeRef);
47
yield return Instruction.Create(
OpCodes
.Stobj, typeTypeRef);
51
yield return Instruction.Create(
OpCodes
.Dup);
52
yield return Instruction.Create(
OpCodes
.Ldc_I4, i);
55
yield return Instruction.Create(
OpCodes
.Stelem_Ref);
CompiledMarkupExtensions\DataTemplateExtension.cs (1)
8
using static Mono.Cecil.Cil.
OpCodes
;
CompiledMarkupExtensions\NullExtension.cs (1)
15
return new[] { Instruction.Create(
OpCodes
.Ldnull) };
CompiledMarkupExtensions\StaticExtension.cs (17)
39
return new[] { Instruction.Create(
OpCodes
.Ldsfld, fieldRef) };
43
return new[] { Instruction.Create(((bool)fieldDef.Constant) ?
OpCodes
.Ldc_I4_1 :
OpCodes
.Ldc_I4_0) };
45
return new[] { Instruction.Create(
OpCodes
.Ldstr, (string)fieldDef.Constant) };
47
return new[] { Instruction.Create(
OpCodes
.Ldnull) };
49
return new[] { Instruction.Create(
OpCodes
.Ldc_I4, (char)fieldDef.Constant) };
51
return new[] { Instruction.Create(
OpCodes
.Ldc_R4, (float)fieldDef.Constant) };
53
return new[] { Instruction.Create(
OpCodes
.Ldc_R8, (double)fieldDef.Constant) };
55
return new[] { Instruction.Create(
OpCodes
.Ldc_I4, (int)fieldDef.Constant) };
57
return new[] { Instruction.Create(
OpCodes
.Ldc_I4, (uint)fieldDef.Constant) };
59
return new[] { Instruction.Create(
OpCodes
.Ldc_I8, (long)fieldDef.Constant) };
61
return new[] { Instruction.Create(
OpCodes
.Ldc_I8, (ulong)fieldDef.Constant) };
67
return new[] { Instruction.Create(
OpCodes
.Ldc_I8, (long)fieldDef.Constant) };
69
return new[] { Instruction.Create(
OpCodes
.Ldc_I8, (ulong)fieldDef.Constant) };
71
return new[] { Instruction.Create(
OpCodes
.Ldc_I4, (uint)fieldDef.Constant) };
73
return new[] { Instruction.Create(
OpCodes
.Ldc_I4, (int)fieldDef.Constant) };
79
return new[] { Instruction.Create(
OpCodes
.Call, getterDef) };
CompiledMarkupExtensions\StaticResourceExtension.cs (1)
8
using static Mono.Cecil.Cil.
OpCodes
;
CompiledMarkupExtensions\TypeExtension.cs (1)
8
using static Mono.Cecil.Cil.
OpCodes
;
CompiledValueProviders\SetterValueProvider.cs (1)
46
yield return Instruction.Create(
OpCodes
.Callvirt, module.ImportPropertySetterReference(context.Cache, setterType, propertyName: "Value"));
CompiledValueProviders\StyleSheetProvider.cs (1)
8
using static Mono.Cecil.Cil.
OpCodes
;
CreateObjectVisitor.cs (16)
10
using static Mono.Cecil.Cil.
OpCodes
;
75
Context.IL.Emit(
OpCodes
.Stloc, vardef);
209
Context.IL.Emit(
OpCodes
.Stloc, vardef);
216
Context.IL.Emit(
OpCodes
.Ldstr, ((ValueNode)(node.CollectionItems.First())).Value as string);
217
Context.IL.Emit(
OpCodes
.Call, implicitOperator);
218
Context.IL.Emit(
OpCodes
.Stloc, vardef);
222
Context.IL.Emit(
OpCodes
.Call, Module.ImportReference(factorymethodinforef));
223
Context.IL.Emit(
OpCodes
.Stloc, vardef);
230
Context.IL.Emit(
OpCodes
.Newobj, ctor);
231
Context.IL.Emit(
OpCodes
.Stloc, vardef);
241
Context.IL.Emit(
OpCodes
.Ldloca, vardef);
243
Context.IL.Emit(
OpCodes
.Call, ctor);
249
Context.IL.Emit(
OpCodes
.Ldloca, vardef);
250
Context.IL.Emit(
OpCodes
.Initobj, Module.ImportReference(typedef));
266
Context.IL.Emit(
OpCodes
.Ldarg_0);
267
Context.IL.Emit(
OpCodes
.Stloc, vardef);
DebugXamlCTask.cs (13)
78
initComp.Body.GetILProcessor().Emit(
OpCodes
.Ret);
118
var br2 = Instruction.Create(
OpCodes
.Ldarg_0);
119
var ret = Instruction.Create(
OpCodes
.Ret);
120
il.Emit(
OpCodes
.Ldarg_0);
126
il.Emit(
OpCodes
.Ldarg_1);
133
il.Emit(
OpCodes
.Callvirt, baseCtor);
135
il.Emit(
OpCodes
.Nop);
136
il.Emit(
OpCodes
.Ldarg_1);
137
il.Emit(
OpCodes
.Brfalse, br2);
139
il.Emit(
OpCodes
.Ldarg_0);
140
il.Emit(
OpCodes
.Callvirt, initComp);
141
il.Emit(
OpCodes
.Br, ret);
144
il.Emit(
OpCodes
.Callvirt, initCompRuntime);
MethodBodyExtensions.cs (4)
39
ExpandMacro(instruction,
OpCodes
.Ldc_I4, unchecked((int)l));
40
self.Instructions.Insert(++i, Instruction.Create(
OpCodes
.Conv_I8));
59
ExpandMacro(instruction,
OpCodes
.Dup, null);
60
ExpandMacro(next,
OpCodes
.Stloc, vardef);
NodeILExtensions.cs (56)
12
using static Mono.Cecil.Cil.
OpCodes
;
181
yield return Instruction.Create(
OpCodes
.Box, module.ImportReference(targetTypeRef));
209
yield return Instruction.Create(
OpCodes
.Callvirt, convertFromInvariantStringReference);
212
yield return Instruction.Create(
OpCodes
.Unbox_Any, module.ImportReference(targetTypeRef));
235
yield return Instruction.Create(
OpCodes
.Ldc_I4, unchecked((int)TryFormat(Char.Parse, node, str)));
237
yield return Instruction.Create(
OpCodes
.Ldc_I4, unchecked((int)TryFormat(s => SByte.Parse(s, CultureInfo.InvariantCulture), node, str)));
239
yield return Instruction.Create(
OpCodes
.Ldc_I4, unchecked((int)TryFormat(s => Int16.Parse(s, CultureInfo.InvariantCulture), node, str)));
241
yield return Instruction.Create(
OpCodes
.Ldc_I4, TryFormat(s => Int32.Parse(s, CultureInfo.InvariantCulture), node, str));
243
yield return Instruction.Create(
OpCodes
.Ldc_I8, TryFormat(s => Int64.Parse(s, CultureInfo.InvariantCulture), node, str));
245
yield return Instruction.Create(
OpCodes
.Ldc_I4, unchecked((int)TryFormat(s => Byte.Parse(s, CultureInfo.InvariantCulture), node, str)));
247
yield return Instruction.Create(
OpCodes
.Ldc_I4, unchecked((int)TryFormat(s => UInt16.Parse(s, CultureInfo.InvariantCulture), node, str)));
249
yield return Instruction.Create(
OpCodes
.Ldc_I4, unchecked((int)TryFormat(s => UInt32.Parse(s, CultureInfo.InvariantCulture), node, str)));
251
yield return Instruction.Create(
OpCodes
.Ldc_I8, unchecked((long)TryFormat(s => UInt64.Parse(s, CultureInfo.InvariantCulture), node, str)));
253
yield return Instruction.Create(
OpCodes
.Ldc_R4, TryFormat(s => Single.Parse(str, CultureInfo.InvariantCulture), node, str));
255
yield return Instruction.Create(
OpCodes
.Ldc_R8, TryFormat(s => Double.Parse(str, CultureInfo.InvariantCulture), node, str));
259
yield return Instruction.Create(
OpCodes
.Ldc_I4_1);
261
yield return Instruction.Create(
OpCodes
.Ldc_I4_0);
267
yield return Instruction.Create(
OpCodes
.Ldc_I8, ticks);
268
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("mscorlib", "System", "TimeSpan"), parameterTypes: new[] { ("mscorlib", "System", "Int64") }));
274
yield return Instruction.Create(
OpCodes
.Ldc_I8, ticks);
275
yield return Instruction.Create(
OpCodes
.Newobj, module.ImportCtorReference(context.Cache, ("mscorlib", "System", "DateTime"), parameterTypes: new[] { ("mscorlib", "System", "Int64") }));
278
yield return Instruction.Create(
OpCodes
.Ldstr, str.Substring(2));
280
yield return Instruction.Create(
OpCodes
.Ldstr, str);
282
yield return Instruction.Create(
OpCodes
.Ldstr, str);
414
return Instruction.Create(
OpCodes
.Ldc_I4, (int)b);
416
return Instruction.Create(
OpCodes
.Ldc_I4, (int)sb);
418
return Instruction.Create(
OpCodes
.Ldc_I4, (int)s);
420
return Instruction.Create(
OpCodes
.Ldc_I4, (int)us);
422
return Instruction.Create(
OpCodes
.Ldc_I4, (int)i);
424
return Instruction.Create(
OpCodes
.Ldc_I4, (uint)ui);
426
return Instruction.Create(
OpCodes
.Ldc_I4, (long)l);
428
return Instruction.Create(
OpCodes
.Ldc_I4, (ulong)ul);
483
yield return Instruction.Create(
OpCodes
.Ldnull);
489
yield return Instruction.Create(
OpCodes
.Ldarg_0);
490
yield return Instruction.Create(
OpCodes
.Ldfld, context.ParentContextValues);
497
yield return Instruction.Create(
OpCodes
.Ldarg_0);
498
yield return Instruction.Create(
OpCodes
.Ldfld, context.ParentContextValues);
499
yield return Instruction.Create(
OpCodes
.Ldlen);
500
yield return Instruction.Create(
OpCodes
.Conv_I4);
503
yield return Instruction.Create(
OpCodes
.Ldc_I4_0);
506
yield return Instruction.Create(
OpCodes
.Stloc, parentObjectLength);
509
yield return Instruction.Create(
OpCodes
.Ldloc, parentObjectLength);
510
yield return Instruction.Create(
OpCodes
.Ldc_I4, nodes.Count);
511
yield return Instruction.Create(
OpCodes
.Add);
512
yield return Instruction.Create(
OpCodes
.Newarr, module.TypeSystem.Object);
515
yield return Instruction.Create(
OpCodes
.Stloc, finalArray);
539
yield return Instruction.Create(
OpCodes
.Ldloc, finalArray);
545
yield return Instruction.Create(
OpCodes
.Dup);
546
yield return Instruction.Create(
OpCodes
.Ldc_I4, i);
549
yield return Instruction.Create(
OpCodes
.Stelem_Ref);
591
yield return Instruction.Create(
OpCodes
.Ldc_I4, scopes.Count);
592
yield return Instruction.Create(
OpCodes
.Newarr, module.ImportReference(context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Internals", "NameScope")));
597
yield return Instruction.Create(
OpCodes
.Dup);
598
yield return Instruction.Create(
OpCodes
.Ldc_I4, i);
599
yield return Instruction.Create(
OpCodes
.Ldloc, scope);
600
yield return Instruction.Create(
OpCodes
.Stelem_Ref);
SetFieldVisitor.cs (2)
36
Context.IL.Emit(
OpCodes
.Ldarg_0);
38
Context.IL.Emit(
OpCodes
.Stfld, field);
SetNamescopesAndRegisterNamesVisitor.cs (17)
72
Context.IL.Emit(
OpCodes
.Stfld, module.ImportFieldReference(Context.Cache, parameterTypes[0], nameof(Element.transientNamescope)));
106
var stloc = Instruction.Create(
OpCodes
.Stloc, vardef);
112
Context.IL.Emit(
OpCodes
.Call, module.ImportMethodReference(Context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Internals", "NameScope"),
116
Context.IL.Emit(
OpCodes
.Dup);
117
Context.IL.Emit(
OpCodes
.Brtrue, stloc);
119
Context.IL.Emit(
OpCodes
.Pop);
121
Context.IL.Emit(
OpCodes
.Newobj, module.ImportCtorReference(Context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Internals", "NameScope"), parameterTypes: null));
132
Context.IL.Emit(
OpCodes
.Newobj, module.ImportCtorReference(Context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Internals", "NameScope"), parameterTypes: null));
133
Context.IL.Emit(
OpCodes
.Stloc, vardef);
146
Context.IL.Emit(
OpCodes
.Call, module.ImportMethodReference(Context.Cache, ("Microsoft.Maui.Controls", "Microsoft.Maui.Controls.Internals", "NameScope"),
161
Context.IL.Emit(
OpCodes
.Ldstr, str);
163
Context.IL.Emit(
OpCodes
.Callvirt, module.ImportMethodReference(Context.Cache,
181
var nop = Instruction.Create(
OpCodes
.Nop);
183
Context.IL.Emit(
OpCodes
.Callvirt, module.ImportPropertyGetterReference(Context.Cache, elementType, propertyName: "StyleId"));
184
Context.IL.Emit(
OpCodes
.Brtrue, nop);
186
Context.IL.Emit(
OpCodes
.Ldstr, str);
187
Context.IL.Emit(
OpCodes
.Callvirt, module.ImportPropertySetterReference(Context.Cache, elementType, propertyName: "StyleId"));
SetPropertiesVisitor.cs (32)
12
using static Mono.Cecil.Cil.
OpCodes
;
204
Context.IL.Emit(
OpCodes
.Callvirt, adderRef);
206
Context.IL.Emit(
OpCodes
.Pop);
277
yield return Instruction.Create(
OpCodes
.Ldnull); //ArrayExtension does not require ServiceProvider
278
yield return Instruction.Create(
OpCodes
.Callvirt, provideValue);
281
yield return Instruction.Create(
OpCodes
.Castclass, module.ImportReference(arrayTypeRef.MakeArrayType()));
282
yield return Instruction.Create(
OpCodes
.Stloc, vardefref.VariableDefinition);
1483
var @else = Create(
OpCodes
.Nop);
1484
var endif = Create(
OpCodes
.Nop);
1629
yield return Instruction.Create(
OpCodes
.Ldloca, parent);
1631
yield return Instruction.Create(
OpCodes
.Ldloc, parent);
1639
yield return Instruction.Create(
OpCodes
.Call, propertySetterRef);
1641
yield return Instruction.Create(
OpCodes
.Callvirt, propertySetterRef);
1648
yield return Instruction.Create(
OpCodes
.Call, propertySetterRef);
1650
yield return Instruction.Create(
OpCodes
.Callvirt, propertySetterRef);
1763
yield return Instruction.Create(
OpCodes
.Callvirt, adderRef);
1765
yield return Instruction.Create(
OpCodes
.Pop);
1868
templateIl.Emit(
OpCodes
.Nop);
1880
parentIl.Emit(
OpCodes
.Newobj, ctor);
1888
parentIl.Emit(
OpCodes
.Dup); //Duplicate the nestedclass instance
1892
parentIl.Emit(
OpCodes
.Stfld, fieldDefScope);
1895
templateIl.Emit(
OpCodes
.Ldarg_0);
1898
templateIl.Emit(
OpCodes
.Ldfld, fieldDefScope);
1899
templateIl.Emit(
OpCodes
.Stloc, varDefScope);
1911
templateIl.Emit(
OpCodes
.Ret);
1915
parentIl.Emit(
OpCodes
.Dup); //Duplicate the nestedclass instance
1917
parentIl.Emit(
OpCodes
.Stfld, parentValues);
1918
parentIl.Emit(
OpCodes
.Dup); //Duplicate the nestedclass instance
1923
parentIl.Emit(
OpCodes
.Ldarg_0);
1924
parentIl.Emit(
OpCodes
.Ldfld, parentContext.Root as FieldDefinition);
1928
parentIl.Emit(
OpCodes
.Stfld, root);
1936
parentContext.IL.Emit(
OpCodes
.Callvirt, module.ImportPropertySetterReference(parentContext.Cache, dataTemplateType, propertyName: "LoadTemplate"));
TypeDefinitionExtensions.cs (3)
41
IL.Emit(
OpCodes
.Ldarg_0);
42
IL.Emit(
OpCodes
.Call, parentctor);
43
IL.Emit(
OpCodes
.Ret);
VariableDefinitionExtensions.cs (4)
13
yield return Instruction.Create(
OpCodes
.Ldloc, self);
16
yield return Instruction.Create(
OpCodes
.Call, module.ImportReference(implicitOperator));
18
yield return Instruction.Create(
OpCodes
.Box, module.ImportReference(self.VariableType));
20
yield return Instruction.Create(
OpCodes
.Unbox_Any, module.ImportReference(type));
XamlCTask.cs (1)
12
using static Mono.Cecil.Cil.
OpCodes
;
Mono.Cecil (10)
Mono.Cecil.Cil\CodeReader.cs (5)
170
?
OpCodes
.OneByteOpCode [il_opcode]
171
:
OpCodes
.TwoBytesOpCode [ReadByte ()];
189
if (instruction.opcode ==
OpCodes
.Ldc_I4_S)
536
opcode =
OpCodes
.OneByteOpCode [il_opcode];
539
opcode =
OpCodes
.TwoBytesOpCode [il_opcode2];
Mono.Cecil.Cil\CodeWriter.cs (1)
243
if (opcode ==
OpCodes
.Ldc_I4_S)
Mono.Cecil.Cil\Instruction.cs (2)
212
opcode !=
OpCodes
.Ldc_I4_S)
221
opcode ==
OpCodes
.Ldc_I4_S)
Mono.Cecil.Cil\OpCode.cs (2)
159
OpCodes
.OneByteOpCode [op2] = this;
161
OpCodes
.TwoBytesOpCode [op2] = this;
Mono.Cecil.Rocks (90)
Mono.Cecil.Rocks\ILParser.cs (3)
130
?
OpCodes
.OneByteOpCode [il_opcode]
131
:
OpCodes
.TwoBytesOpCode [code.ReadByte ()];
151
if (opcode ==
OpCodes
.Ldc_I4_S)
Mono.Cecil.Rocks\MethodBodyRocks.cs (87)
33
ExpandMacro (instruction,
OpCodes
.Ldarg, self.GetParameter (0));
36
ExpandMacro (instruction,
OpCodes
.Ldarg, self.GetParameter (1));
39
ExpandMacro (instruction,
OpCodes
.Ldarg, self.GetParameter (2));
42
ExpandMacro (instruction,
OpCodes
.Ldarg, self.GetParameter (3));
45
ExpandMacro (instruction,
OpCodes
.Ldloc, self.Variables [0]);
48
ExpandMacro (instruction,
OpCodes
.Ldloc, self.Variables [1]);
51
ExpandMacro (instruction,
OpCodes
.Ldloc, self.Variables [2]);
54
ExpandMacro (instruction,
OpCodes
.Ldloc, self.Variables [3]);
57
ExpandMacro (instruction,
OpCodes
.Stloc, self.Variables [0]);
60
ExpandMacro (instruction,
OpCodes
.Stloc, self.Variables [1]);
63
ExpandMacro (instruction,
OpCodes
.Stloc, self.Variables [2]);
66
ExpandMacro (instruction,
OpCodes
.Stloc, self.Variables [3]);
69
instruction.OpCode =
OpCodes
.Ldarg;
72
instruction.OpCode =
OpCodes
.Ldarga;
75
instruction.OpCode =
OpCodes
.Starg;
78
instruction.OpCode =
OpCodes
.Ldloc;
81
instruction.OpCode =
OpCodes
.Ldloca;
84
instruction.OpCode =
OpCodes
.Stloc;
87
ExpandMacro (instruction,
OpCodes
.Ldc_I4, -1);
90
ExpandMacro (instruction,
OpCodes
.Ldc_I4, 0);
93
ExpandMacro (instruction,
OpCodes
.Ldc_I4, 1);
96
ExpandMacro (instruction,
OpCodes
.Ldc_I4, 2);
99
ExpandMacro (instruction,
OpCodes
.Ldc_I4, 3);
102
ExpandMacro (instruction,
OpCodes
.Ldc_I4, 4);
105
ExpandMacro (instruction,
OpCodes
.Ldc_I4, 5);
108
ExpandMacro (instruction,
OpCodes
.Ldc_I4, 6);
111
ExpandMacro (instruction,
OpCodes
.Ldc_I4, 7);
114
ExpandMacro (instruction,
OpCodes
.Ldc_I4, 8);
117
ExpandMacro (instruction,
OpCodes
.Ldc_I4, (int) (sbyte) instruction.Operand);
120
instruction.OpCode =
OpCodes
.Br;
123
instruction.OpCode =
OpCodes
.Brfalse;
126
instruction.OpCode =
OpCodes
.Brtrue;
129
instruction.OpCode =
OpCodes
.Beq;
132
instruction.OpCode =
OpCodes
.Bge;
135
instruction.OpCode =
OpCodes
.Bgt;
138
instruction.OpCode =
OpCodes
.Ble;
141
instruction.OpCode =
OpCodes
.Blt;
144
instruction.OpCode =
OpCodes
.Bne_Un;
147
instruction.OpCode =
OpCodes
.Bge_Un;
150
instruction.OpCode =
OpCodes
.Bgt_Un;
153
instruction.OpCode =
OpCodes
.Ble_Un;
156
instruction.OpCode =
OpCodes
.Blt_Un;
159
instruction.OpCode =
OpCodes
.Leave;
195
ExpandMacro (instruction,
OpCodes
.Ldc_I4, (int) l);
196
self.Instructions.Insert (++i, Instruction.Create (
OpCodes
.Conv_I8));
219
MakeMacro (instruction,
OpCodes
.Ldarg_0);
222
MakeMacro (instruction,
OpCodes
.Ldarg_1);
225
MakeMacro (instruction,
OpCodes
.Ldarg_2);
228
MakeMacro (instruction,
OpCodes
.Ldarg_3);
232
ExpandMacro (instruction,
OpCodes
.Ldarg_S, instruction.Operand);
240
MakeMacro (instruction,
OpCodes
.Ldloc_0);
243
MakeMacro (instruction,
OpCodes
.Ldloc_1);
246
MakeMacro (instruction,
OpCodes
.Ldloc_2);
249
MakeMacro (instruction,
OpCodes
.Ldloc_3);
253
ExpandMacro (instruction,
OpCodes
.Ldloc_S, instruction.Operand);
261
MakeMacro (instruction,
OpCodes
.Stloc_0);
264
MakeMacro (instruction,
OpCodes
.Stloc_1);
267
MakeMacro (instruction,
OpCodes
.Stloc_2);
270
MakeMacro (instruction,
OpCodes
.Stloc_3);
274
ExpandMacro (instruction,
OpCodes
.Stloc_S, instruction.Operand);
285
ExpandMacro (instruction,
OpCodes
.Ldarga_S, instruction.Operand);
289
ExpandMacro (instruction,
OpCodes
.Ldloca_S, instruction.Operand);
295
MakeMacro (instruction,
OpCodes
.Ldc_I4_M1);
298
MakeMacro (instruction,
OpCodes
.Ldc_I4_0);
301
MakeMacro (instruction,
OpCodes
.Ldc_I4_1);
304
MakeMacro (instruction,
OpCodes
.Ldc_I4_2);
307
MakeMacro (instruction,
OpCodes
.Ldc_I4_3);
310
MakeMacro (instruction,
OpCodes
.Ldc_I4_4);
313
MakeMacro (instruction,
OpCodes
.Ldc_I4_5);
316
MakeMacro (instruction,
OpCodes
.Ldc_I4_6);
319
MakeMacro (instruction,
OpCodes
.Ldc_I4_7);
322
MakeMacro (instruction,
OpCodes
.Ldc_I4_8);
326
ExpandMacro (instruction,
OpCodes
.Ldc_I4_S, (sbyte) i);
357
instruction.OpCode =
OpCodes
.Br_S;
360
instruction.OpCode =
OpCodes
.Brfalse_S;
363
instruction.OpCode =
OpCodes
.Brtrue_S;
366
instruction.OpCode =
OpCodes
.Beq_S;
369
instruction.OpCode =
OpCodes
.Bge_S;
372
instruction.OpCode =
OpCodes
.Bgt_S;
375
instruction.OpCode =
OpCodes
.Ble_S;
378
instruction.OpCode =
OpCodes
.Blt_S;
381
instruction.OpCode =
OpCodes
.Bne_Un_S;
384
instruction.OpCode =
OpCodes
.Bge_Un_S;
387
instruction.OpCode =
OpCodes
.Bgt_Un_S;
390
instruction.OpCode =
OpCodes
.Ble_Un_S;
393
instruction.OpCode =
OpCodes
.Blt_Un_S;
396
instruction.OpCode =
OpCodes
.Leave_S;