177 references to Local
Microsoft.CodeAnalysis.CSharp (177)
Compiler\MethodBodySynthesizer.Lowered.cs (18)
89F.Assignment(F.Local(hashCode), F.Literal((uint)2166136261)), 90F.Assignment(F.Local(i), F.Literal(0)), 94F.Local(hashCode), 101F.Local(i)), 103F.Local(hashCode)), 106F.Local(i), 108F.Local(i), 113F.Local(i), 116F.Return(F.Local(hashCode)) 176F.Assignment(F.Local(hashCode), F.Literal((uint)2166136261)), 177F.Assignment(F.Local(i), F.Literal(0)), 181F.Local(hashCode), 190F.Local(i)), 192F.Local(hashCode)), 195F.Local(i), 197F.Local(i), 202F.Local(i), 209F.Return(F.Local(hashCode))
Lowering\AsyncRewriter\AsyncExceptionHandlerRewriter.cs (24)
179var catchAll = _F.Catch(_F.Local(pendingExceptionLocal), _F.Block()); 213statements.Add(_F.Assignment(_F.Local(pendingExceptionLocal), _F.Default(pendingExceptionLocal.Type))); 215statements.Add(_F.Assignment(_F.Local(pendingBranchVar), _F.Default(pendingBranchVar.Type))); 277bodyStatements.Add(_F.Assignment(_F.Local(pendingBranchVar), _F.Literal(i))); 312pendingValue = _F.Local(frame.returnValue); 334_F.Local(returnValue), 344return _F.Switch(_F.Local(pendingBranchVar), cases.ToImmutableAndFree()); 379_F.Local(returnValue), 395var objInit = _F.Assignment(_F.Local(obj), _F.Local(pendingExceptionLocal)); 405_F.Local(obj), 413BoundStatement rethrow = _F.Throw(_F.Local(obj)); 424_F.Local(ex), 425_F.As(_F.Local(obj), ex.Type)); 431_F.If(_F.ObjectEqual(_F.Local(ex), _F.Null(ex.Type)), rethrow), 438_F.Local(ex)), 486_F.Local(currentAwaitCatchFrame.pendingCatch), 491_F.Local(currentAwaitCatchFrame.pendingCatch), 527_F.Local(currentAwaitCatchFrame.pendingCaughtException), 529_F.Local(catchTemp))); 532_F.Local(currentAwaitCatchFrame.pendingCatch), 552_F.Local(catchTemp), 598_F.Local(catchTemp), 644_F.Local(currentAwaitCatchFrame.pendingCaughtException)));
Lowering\AsyncRewriter\AsyncIteratorMethodToStateMachineRewriter.cs (3)
82var iteratorDispatch = _iteratorStateAllocator.GenerateThrowMissingStateDispatch(F, F.Local(cachedState), CodeAnalysisResources.EncCannotResumeSuspendedIteratorMethod); 185F.Local(exceptionLocal)))); 219return F.IntEqual(F.Local(cachedState), F.Literal(StateMachineState.NotStartedOrRunningState));
Lowering\AsyncRewriter\AsyncMethodToStateMachineRewriter.cs (24)
145bodyBuilder.Add(F.Assignment(F.Local(cachedState), F.Field(F.This(), stateField))); 228? ImmutableArray.Create<BoundExpression>(F.Local(_exprRetValue)) 255F.Local(exceptionLocal), 298F.Local(exceptionLocal))); 374F.Local(awaiterTemp), 385F.Local(awaiterTemp), 441F.Local(awaiterTemp), 450return F.Call(F.Local(awaiterTemp), getIsCompletedMethod); 478? F.Local(awaiterTemp) 479: F.Convert(awaiterFieldType, F.Local(awaiterTemp)))); 499F.Local(awaiterTemp), 545F.Local(criticalNotifyCompletedTemp), 547F.As(F.Local(awaiterTemp), criticalNotifyCompletedTemp.Type))); 551blockBuilder.Add(F.Assignment(F.Local(thisTemp), F.This())); 556condition: F.ObjectEqual(F.Local(criticalNotifyCompletedTemp), F.Null(criticalNotifyCompletedTemp.Type)), 561F.Local(notifyCompletionTemp), 563F.Convert(notifyCompletionTemp.Type, F.Local(awaiterTemp), Conversion.ExplicitReference)), 570F.Local(notifyCompletionTemp), F.This(thisTemp))), 572F.Local(notifyCompletionTemp), 582F.Local(criticalNotifyCompletedTemp), F.This(thisTemp)))))); 586F.Local(criticalNotifyCompletedTemp), 620F.Local(awaiterTemp), F.This(thisTemp)); 626ImmutableArray.Create<BoundExpression>(F.AssignmentExpression(F.Local(thisTemp), F.This())), 644F.Assignment(F.Local(_exprRetValue), (BoundExpression)Visit(node.ExpressionOpt)),
Lowering\AsyncRewriter\AsyncRewriter.AsyncIteratorRewriter.cs (4)
206F.Local(stateMachineLocal), 271F.Local(stateMachineVariable))); 337var versionLocal = F.Local(versionSymbol); 389var instLocal = F.Local(instSymbol);
Lowering\AsyncRewriter\AsyncRewriter.cs (7)
209F.Local(stateMachineLocal), 231F.Field(F.Local(stateMachineVariable), _builderField.AsMember(frameType)), 241F.Field(F.Local(stateMachineVariable), stateField.AsMember(frameType)), 250F.Field(F.Local(stateMachineVariable), instanceIdField.AsMember(frameType)), 263F.Field(F.Local(stateMachineVariable), _builderField.AsMember(frameType)), 265ImmutableArray.Create<BoundExpression>(F.Local(stateMachineVariable))))); 271F.Field(F.Local(stateMachineVariable), _builderField.AsMember(frameType)),
Lowering\ClosureConversion\ClosureConversion.cs (1)
1695cache = F.Local(cacheLocal);
Lowering\ClosureConversion\ExpressionLambdaRewriter.cs (2)
764var parameterReference = _bound.Local(param); 815var parameterReference = _bound.Local(param);
Lowering\Instrumentation\CodeCoverageInstrumenter.cs (4)
226methodBodyFactory.Local(methodPayload), 263_methodBodyFactory.Local(_methodPayload), 293_methodBodyFactory.Local(_methodPayload), 517statementFactory.Local(_methodPayload),
Lowering\Instrumentation\DebugInfoInjector_SequencePoints.cs (2)
206new BoundSequencePointExpression(syntax: null!, expression: factory.Local(local), type: condition.Type) : 212ImmutableArray.Create<BoundExpression>(factory.AssignmentExpression(factory.Local(local), condition)),
Lowering\Instrumentation\LocalStateTracingInstrumenter.cs (7)
310prologueBuilder.Add(_factory.ExpressionStatement(_factory.Call(receiver: _factory.Local(_scope.ContextVariable), parameterLogger, 340_factory.Assignment(_factory.Local(_scope.ContextVariable), _factory.Call(receiver: null, entryLogger, entryArgs)) : _factory.NoOp(NoOpStatementFlavor.Default); 344_factory.ExpressionStatement(_factory.Call(receiver: _factory.Local(_scope.ContextVariable), returnLogger)) : _factory.NoOp(NoOpStatementFlavor.Default); 405receiver: _factory.Local(_scope.ContextVariable), 490LocalSymbol local => _factory.Local(local), 535receiver: _factory.Local(_scope.ContextVariable), 598receiver: _factory.Local(_scope.ContextVariable),
Lowering\IteratorRewriter\IteratorMethodToStateMachineRewriter.cs (6)
115F.Assignment(F.Local(cachedState), F.Field(F.This(), stateField)), 175var state = F.Local(stateLocal); 179F.Assignment(F.Local(stateLocal), F.Field(F.This(), stateField)), 206F.Assignment(this.F.Local(_methodValue), this.F.Literal(true)), 208F.Return(this.F.Local(_methodValue))); 314F.Assignment(this.F.Local(_methodValue), result),
Lowering\IteratorRewriter\IteratorRewriter.cs (2)
308F.Local(stateMachineLocal), 321F.Local(stateMachineVariable)));
Lowering\LocalRewriter\LocalRewriter.DecisionDagRewriter.cs (2)
1071sectionBuilder.Add(_factory.Assignment(_factory.Local(_whenNodeIdentifierLocal), _factory.Literal(whenNodeInfo.WhenNodeIdentifier))); 1113BoundStatement jumps = _factory.Switch(_factory.Local(_whenNodeIdentifierLocal), whenFalseSwitchSections.ToImmutableAndFree());
Lowering\LocalRewriter\LocalRewriter.PatternLocalRewriter.cs (1)
100result = _factory.Local(temp);
Lowering\LocalRewriter\LocalRewriter_Call.cs (2)
702BoundLocal cache = _factory.Local(_factory.SynthesizedLocal(receiverType)); 709var intermediateRef = _factory.Local(_factory.SynthesizedLocal(receiverType, refKind: RefKind.Ref));
Lowering\LocalRewriter\LocalRewriter_ConditionalAccess.cs (3)
97_currentConditionalAccessTarget = _factory.Local(temp); 169_factory.AssignmentExpression(_factory.Local(temp), loweredReceiver), 170_factory.Local(temp));
Lowering\LocalRewriter\LocalRewriter_FixedStatement.cs (21)
39cleanup[i] = _factory.Assignment(_factory.Local(pinnedTemp), _factory.Null(pinnedTemp.Type)); 44cleanup[i] = _factory.Assignment(_factory.Local(pinnedTemp), _factory.NullRef(pinnedTemp.TypeWithAnnotations), isRef: true); 272BoundStatement pinnedTempInit = factory.Assignment(factory.Local(pinnedTemp), initializerExpr, isRef: true); 277factory.Local(pinnedTemp), 285factory.Assignment(factory.Local(localSymbol), pointerValue)); 354factory.Local(pinnedTemp), 361factory.Local(pinnedTemp), 388BoundStatement localInit = InstrumentLocalDeclarationIfNecessary(localDecl, localSymbol, factory.Assignment(factory.Local(localSymbol), pinAndGetPtr)); 427BoundStatement stringTempInit = factory.Assignment(factory.Local(pinnedTemp), initializerExpr); 432factory.Local(pinnedTemp), 438factory.Assignment(factory.Local(localSymbol), convertedStringTemp)); 440BoundExpression notNullCheck = _factory.MakeNullCheck(factory.Syntax, factory.Local(localSymbol), BinaryOperatorKind.NotEqual); 453BoundExpression addition = factory.Binary(BinaryOperatorKind.PointerAndIntAddition, localType, factory.Local(localSymbol), helperCall); 454BoundStatement conditionalAdd = factory.If(notNullCheck, factory.Assignment(factory.Local(localSymbol), addition)); 491BoundExpression arrayTempInit = factory.AssignmentExpression(factory.Local(pinnedTemp), initializerExpr); 500lengthCall = factory.ArrayLength(factory.Local(pinnedTemp)); 507lengthCall = factory.Call(factory.Local(pinnedTemp), lengthMethod); 511lengthCall = new BoundBadExpression(fixedInitializer.Syntax, LookupResultKind.NotInvocable, ImmutableArray<Symbol?>.Empty, ImmutableArray.Create<BoundExpression>(factory.Local(pinnedTemp)), ErrorTypeSymbol.UnknownResultType); 523BoundExpression firstElement = factory.ArrayAccessFirstElement(factory.Local(pinnedTemp)); 531BoundExpression consequenceAssignment = factory.AssignmentExpression(factory.Local(localSymbol), convertedFirstElementAddress); 534BoundExpression alternativeAssignment = factory.AssignmentExpression(factory.Local(localSymbol), factory.Null(localType));
Lowering\LocalRewriter\LocalRewriter_IsPatternOperator.cs (3)
127resultBuilder.Add(_factory.Assignment(_factory.Local(resultTemp), _factory.Literal(true))); 130resultBuilder.Add(_factory.Assignment(_factory.Local(resultTemp), _factory.Literal(false))); 133return _factory.SpillSequence(_tempAllocator.AllTemps().Add(resultTemp), resultBuilder.ToImmutableAndFree(), _factory.Local(resultTemp));
Lowering\LocalRewriter\LocalRewriter_StringInterpolation.cs (2)
79BoundLocal builderTemp = _factory.Local(builderTempSymbol); 104appendShouldProceedLocal = _factory.Local(outLocal);
Lowering\LocalRewriter\LocalRewriter_SwitchExpression.cs (2)
101sectionBuilder.Add(_factory.Assignment(_factory.Local(resultTemp), loweredValue)); 146return _factory.SpillSequence(outerVariables.ToImmutableAndFree(), result.ToImmutableAndFree(), _factory.Local(resultTemp));
Lowering\SpillSequenceSpiller.cs (19)
927leftBuilder.AddStatement(_F.Assignment(_F.Local(tmp), left)); 929node.OperatorKind == BinaryOperatorKind.LogicalBoolAnd ? _F.Local(tmp) : _F.Not(_F.Local(tmp)), 930UpdateStatement(builder, _F.Assignment(_F.Local(tmp), right)))); 932return UpdateExpression(leftBuilder, _F.Local(tmp)); 985var cache = _F.Local(_F.SynthesizedLocal(receiverType)); 1069UpdateStatement(consequenceBuilder, _F.Assignment(_F.Local(tmp), consequence)), 1070UpdateStatement(alternativeBuilder, _F.Assignment(_F.Local(tmp), alternative)))); 1072return conditionBuilder.Update(_F.Local(tmp)); 1154leftBuilder.AddStatement(_F.Assignment(_F.Local(tmp), left)); 1156_F.ObjectEqual(_F.Local(tmp), _F.Null(left.Type)), 1157UpdateStatement(builder, _F.Assignment(_F.Local(tmp), right)))); 1159return UpdateExpression(leftBuilder, _F.Local(tmp)); 1222_F.AssignmentExpression(_F.Local(clone), receiver), 1224_F.Convert(_F.SpecialType(SpecialType.System_Object), _F.Local(clone)), 1228receiver = _F.ComplexConditionalReceiver(receiver, _F.Local(clone)); 1245var whenNotNullStatement = UpdateStatement(whenNotNullBuilder, _F.Assignment(_F.Local(tmp), whenNotNull)); 1254UpdateStatement(whenNullBuilder, _F.Assignment(_F.Local(tmp), whenNullOpt)))); 1256return receiverBuilder.Update(_F.Local(tmp));
Lowering\StateMachineRewriter\MethodToStateMachineRewriter.cs (8)
247var result = F.Switch(F.Local(cachedState), sections.ToImmutableArray()); 268=> _resumableStateAllocator.GenerateThrowMissingStateDispatch(F, F.Local(cachedState), EncMissingStateMessage); 527return F.Sequence(ImmutableArray.Create(sacrificialTemp), sideEffects.ToImmutableAndFree(), F.AssignmentExpression(F.Local(sacrificialTemp), replacement, isRef: true)); 892return F.IntLessThan(F.Local(cachedState), F.Literal(StateMachineState.FirstUnusedState)); 901return F.Assignment(F.Field(F.This(), stateField), F.AssignmentExpression(F.Local(cachedState), F.Literal(stateNumber))); 911return F.Assignment(F.Local(this.cachedThis), fetchThis); 923return F.Local(this.cachedThis); 957return F.Local(this.cachedThis);
Lowering\StateMachineRewriter\StateMachineRewriter.cs (7)
313bodyBuilder.Add(F.Assignment(proxy.Replacement(F.Syntax, frameType1 => F.Local(stateMachineVariable)), F.This())); 322bodyBuilder.Add(F.Assignment(proxy.Replacement(F.Syntax, frameType1 => F.Local(stateMachineVariable)), 415BoundStatement makeIterator = F.Assignment(F.Local(resultVariable), F.New(stateMachineType.Constructor, F.Literal(initialState))); 428F.Assignment(F.Local(resultVariable), F.This())); 460proxy.Replacement(F.Syntax, stateMachineType => F.Local(resultVariable)), 473BoundExpression resultParameter = proxy.Replacement(F.Syntax, stateMachineType => F.Local(resultVariable)); 482bodyBuilder.Add(F.Return(F.Local(resultVariable)));
Lowering\SyntheticBoundNodeFactory.cs (2)
269return (thisTempOpt != null) ? Local(thisTempOpt) : (BoundExpression)This(); 1470var source = Local(local);
Symbols\Synthesized\Records\SynthesizedRecordToString.cs (1)
63BoundLocal builderLocal = F.Local(builderLocalSymbol);