1 write to _F
Microsoft.CodeAnalysis.CSharp (1)
Lowering\SpillSequenceSpiller.cs (1)
31_F = new SyntheticBoundNodeFactory(method, syntaxNode, compilationState, diagnostics);
98 references to _F
Microsoft.CodeAnalysis.CSharp (98)
Lowering\SpillSequenceSpiller.cs (98)
32_F.CurrentFunction = method; 310_F.Syntax = builder.Syntax; 363builder.AddStatement(_F.ExpressionStatement(complexReceiver)); 448else if (call.Method.OriginalDefinition == _F.Compilation.GetWellKnownTypeMember(WellKnownMember.System_Span_T__get_Item) || 449call.Method.OriginalDefinition == _F.Compilation.GetWellKnownTypeMember(WellKnownMember.System_ReadOnlySpan_T__get_Item)) 462else if (call.Method.OriginalDefinition == _F.Compilation.GetWellKnownTypeMember(WellKnownMember.System_Span_T__Slice_Int_Int) || 463call.Method.OriginalDefinition == _F.Compilation.GetWellKnownTypeMember(WellKnownMember.System_ReadOnlySpan_T__Slice_Int_Int)) 471else if (call.Method == _F.Compilation.GetSpecialTypeMember(SpecialMember.System_String__op_Implicit_ToReadOnlySpanOfChar)) 484objectCreationExpression.Constructor.OriginalDefinition == _F.Compilation.GetSpecialTypeMember(SpecialMember.System_ReadOnlySpan_T__ctor_Reference)) 499builder.AddStatement(_F.ExpressionStatement(expression)); 506var replacement = _F.StoreToTemp( 511syntaxOpt: _F.Syntax); 514builder.AddStatement(_F.ExpressionStatement(assignToTemp)); 766_F.Syntax = node.Syntax; 1010var tmp = _F.SynthesizedLocal(node.Type, kind: SynthesizedLocalKind.Spill, syntax: _F.Syntax); 1012leftBuilder.AddStatement(_F.Assignment(_F.Local(tmp), left)); 1013leftBuilder.AddStatement(_F.If( 1014node.OperatorKind == BinaryOperatorKind.LogicalBoolAnd ? _F.Local(tmp) : _F.Not(_F.Local(tmp)), 1015UpdateStatement(builder, _F.Assignment(_F.Local(tmp), right)))); 1017return UpdateExpression(leftBuilder, _F.Local(tmp)); 1067var save_Syntax = _F.Syntax; 1068_F.Syntax = node.Syntax; 1070var cache = _F.Local(_F.SynthesizedLocal(receiverType)); 1072receiverBuilder.AddStatement(_F.ExpressionStatement(new BoundComplexConditionalReceiver(node.Syntax, cache, _F.Sequence(new[] { _F.AssignmentExpression(cache, receiver) }, cache), receiverType) { WasCompilerGenerated = true })); 1074receiver = _F.ComplexConditionalReceiver(receiver, cache); 1075_F.Syntax = save_Syntax; 1141_F.If(condition, 1142UpdateStatement(consequenceBuilder, _F.ExpressionStatement(consequence)), 1143UpdateStatement(alternativeBuilder, _F.ExpressionStatement(alternative)))); 1145return conditionBuilder.Update(_F.Default(node.Type)); 1149var tmp = _F.SynthesizedLocal(node.Type, kind: SynthesizedLocalKind.Spill, syntax: _F.Syntax); 1153_F.If(condition, 1154UpdateStatement(consequenceBuilder, _F.Assignment(_F.Local(tmp), consequence)), 1155UpdateStatement(alternativeBuilder, _F.Assignment(_F.Local(tmp), alternative)))); 1157return conditionBuilder.Update(_F.Local(tmp)); 1164var tmp = _F.SynthesizedLocal(condition.Type, kind: SynthesizedLocalKind.Spill, syntax: _F.Syntax); 1167conditionBuilder.AddStatement(_F.Assignment(_F.Local(tmp), condition)); 1168condition = _F.Local(tmp); 1175_F.If(condition, 1176_F.StatementList(consequenceBuilder.GetStatements()), 1177_F.StatementList(alternativeBuilder.GetStatements()))); 1264var tmp = _F.SynthesizedLocal(node.Type, kind: SynthesizedLocalKind.Spill, syntax: _F.Syntax); 1266leftBuilder.AddStatement(_F.Assignment(_F.Local(tmp), left)); 1267leftBuilder.AddStatement(_F.If( 1268_F.ObjectEqual(_F.Local(tmp), _F.Null(left.Type)), 1269UpdateStatement(builder, _F.Assignment(_F.Local(tmp), right)))); 1271return UpdateExpression(leftBuilder, _F.Local(tmp)); 1308condition = _F.IsNotNullReference(receiver); 1312condition = _F.Call(receiver, hasValueOpt); 1320var clone = _F.SynthesizedLocal(receiver.Type, _F.Syntax, refKind: RefKind.None, kind: SynthesizedLocalKind.Spill); 1324var isNotClass = _F.IsNotNullReference(_F.Default(receiver.Type)); 1327condition = _F.LogicalOr( 1329_F.MakeSequence( 1330_F.AssignmentExpression(_F.Local(clone), receiver), 1331_F.IsNotNullReference(_F.Local(clone))) 1334receiver = _F.ComplexConditionalReceiver(receiver, _F.Local(clone)); 1339var whenNotNullStatement = UpdateStatement(whenNotNullBuilder, _F.ExpressionStatement(whenNotNull)); 1344receiverBuilder.AddStatement(_F.If(condition, whenNotNullStatement)); 1346return receiverBuilder.Update(_F.Default(node.Type)); 1350var tmp = _F.SynthesizedLocal(node.Type, kind: SynthesizedLocalKind.Spill, syntax: _F.Syntax); 1351var whenNotNullStatement = UpdateStatement(whenNotNullBuilder, _F.Assignment(_F.Local(tmp), whenNotNull)); 1354whenNullOpt = whenNullOpt ?? _F.Default(node.Type); 1358_F.If(condition, 1360UpdateStatement(whenNullBuilder, _F.Assignment(_F.Local(tmp), whenNullOpt)))); 1362return receiverBuilder.Update(_F.Local(tmp)); 1410var oldCurrentFunction = _F.CurrentFunction; 1411_F.CurrentFunction = node.Symbol; 1413_F.CurrentFunction = oldCurrentFunction; 1419var oldCurrentFunction = _F.CurrentFunction; 1420_F.CurrentFunction = node.Symbol; 1422_F.CurrentFunction = oldCurrentFunction; 1511LocalSymbol longLived = local.WithSynthesizedLocalKindAndSyntax(SynthesizedLocalKind.Spill, _F.Syntax);