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)); 765_F.Syntax = node.Syntax; 1007var tmp = _F.SynthesizedLocal(node.Type, kind: SynthesizedLocalKind.Spill, syntax: _F.Syntax); 1009leftBuilder.AddStatement(_F.Assignment(_F.Local(tmp), left)); 1010leftBuilder.AddStatement(_F.If( 1011node.OperatorKind == BinaryOperatorKind.LogicalBoolAnd ? _F.Local(tmp) : _F.Not(_F.Local(tmp)), 1012UpdateStatement(builder, _F.Assignment(_F.Local(tmp), right)))); 1014return UpdateExpression(leftBuilder, _F.Local(tmp)); 1064var save_Syntax = _F.Syntax; 1065_F.Syntax = node.Syntax; 1067var cache = _F.Local(_F.SynthesizedLocal(receiverType)); 1069receiverBuilder.AddStatement(_F.ExpressionStatement(new BoundComplexConditionalReceiver(node.Syntax, cache, _F.Sequence(new[] { _F.AssignmentExpression(cache, receiver) }, cache), receiverType) { WasCompilerGenerated = true })); 1071receiver = _F.ComplexConditionalReceiver(receiver, cache); 1072_F.Syntax = save_Syntax; 1138_F.If(condition, 1139UpdateStatement(consequenceBuilder, _F.ExpressionStatement(consequence)), 1140UpdateStatement(alternativeBuilder, _F.ExpressionStatement(alternative)))); 1142return conditionBuilder.Update(_F.Default(node.Type)); 1146var tmp = _F.SynthesizedLocal(node.Type, kind: SynthesizedLocalKind.Spill, syntax: _F.Syntax); 1150_F.If(condition, 1151UpdateStatement(consequenceBuilder, _F.Assignment(_F.Local(tmp), consequence)), 1152UpdateStatement(alternativeBuilder, _F.Assignment(_F.Local(tmp), alternative)))); 1154return conditionBuilder.Update(_F.Local(tmp)); 1161var tmp = _F.SynthesizedLocal(condition.Type, kind: SynthesizedLocalKind.Spill, syntax: _F.Syntax); 1164conditionBuilder.AddStatement(_F.Assignment(_F.Local(tmp), condition)); 1165condition = _F.Local(tmp); 1172_F.If(condition, 1173_F.StatementList(consequenceBuilder.GetStatements()), 1174_F.StatementList(alternativeBuilder.GetStatements()))); 1261var tmp = _F.SynthesizedLocal(node.Type, kind: SynthesizedLocalKind.Spill, syntax: _F.Syntax); 1263leftBuilder.AddStatement(_F.Assignment(_F.Local(tmp), left)); 1264leftBuilder.AddStatement(_F.If( 1265_F.ObjectEqual(_F.Local(tmp), _F.Null(left.Type)), 1266UpdateStatement(builder, _F.Assignment(_F.Local(tmp), right)))); 1268return UpdateExpression(leftBuilder, _F.Local(tmp)); 1305condition = _F.IsNotNullReference(receiver); 1309condition = _F.Call(receiver, hasValueOpt); 1317var clone = _F.SynthesizedLocal(receiver.Type, _F.Syntax, refKind: RefKind.None, kind: SynthesizedLocalKind.Spill); 1321var isNotClass = _F.IsNotNullReference(_F.Default(receiver.Type)); 1324condition = _F.LogicalOr( 1326_F.MakeSequence( 1327_F.AssignmentExpression(_F.Local(clone), receiver), 1328_F.IsNotNullReference(_F.Local(clone))) 1331receiver = _F.ComplexConditionalReceiver(receiver, _F.Local(clone)); 1336var whenNotNullStatement = UpdateStatement(whenNotNullBuilder, _F.ExpressionStatement(whenNotNull)); 1341receiverBuilder.AddStatement(_F.If(condition, whenNotNullStatement)); 1343return receiverBuilder.Update(_F.Default(node.Type)); 1347var tmp = _F.SynthesizedLocal(node.Type, kind: SynthesizedLocalKind.Spill, syntax: _F.Syntax); 1348var whenNotNullStatement = UpdateStatement(whenNotNullBuilder, _F.Assignment(_F.Local(tmp), whenNotNull)); 1351whenNullOpt = whenNullOpt ?? _F.Default(node.Type); 1355_F.If(condition, 1357UpdateStatement(whenNullBuilder, _F.Assignment(_F.Local(tmp), whenNullOpt)))); 1359return receiverBuilder.Update(_F.Local(tmp)); 1407var oldCurrentFunction = _F.CurrentFunction; 1408_F.CurrentFunction = node.Symbol; 1410_F.CurrentFunction = oldCurrentFunction; 1416var oldCurrentFunction = _F.CurrentFunction; 1417_F.CurrentFunction = node.Symbol; 1419_F.CurrentFunction = oldCurrentFunction; 1508LocalSymbol longLived = local.WithSynthesizedLocalKindAndSyntax(SynthesizedLocalKind.Spill, _F.Syntax);