41 references to UseKind
Microsoft.CodeAnalysis.CSharp (41)
CodeGen\EmitAddress.cs (3)
115
EmitCallExpression(call,
UseKind
.UsedAsAddress);
127
EmitCalli(funcPtrInvocation,
UseKind
.UsedAsAddress);
160
EmitAssignmentExpression(assignment,
UseKind
.UsedAsAddress);
CodeGen\EmitExpression.cs (38)
99
EmitAssignmentExpression((BoundAssignmentOperator)expression, used ?
UseKind
.UsedAsValue :
UseKind
.Unused);
103
EmitCallExpression((BoundCall)expression, used ?
UseKind
.UsedAsValue :
UseKind
.Unused);
353
EmitCalli((BoundFunctionPointerInvocation)expression, used ?
UseKind
.UsedAsValue :
UseKind
.Unused);
1618
private void EmitCallExpression(BoundCall call,
UseKind
useKind)
1655
private void EmitStaticCallExpression(BoundCall call,
UseKind
useKind)
1668
MightEscapeTemporaryRefs(call, used: useKind !=
UseKind
.Unused));
1692
private void EmitInstanceCallExpression(BoundCall call,
UseKind
useKind)
1723
UseKind
receiverUseKind;
1726
receiverUseKind =
UseKind
.UsedAsValue;
1734
receiverUseKind =
UseKind
.UsedAsValue;
1754
receiverUseKind =
UseKind
.UsedAsAddress;
1761
receiverUseKind =
UseKind
.UsedAsValue;
1780
Debug.Assert(receiverUseKind ==
UseKind
.UsedAsValue);
1790
Debug.Assert(receiverUseKind ==
UseKind
.UsedAsValue);
1797
if (receiverUseKind !=
UseKind
.UsedAsAddress)
1799
Debug.Assert(receiverUseKind ==
UseKind
.UsedAsValue);
1832
_builder.LocalSlotManager.EndScopeOfTrackingAddressedLocals(countBefore, MightEscapeTemporaryRefs(call, used: useKind !=
UseKind
.Unused));
1956
void emitArgumentsAndCallEpilogue(BoundCall call, CallKind callKind,
UseKind
useKind)
2526
private void EmitAssignmentExpression(BoundAssignmentOperator assignmentOperator,
UseKind
useKind)
2528
if (TryEmitAssignmentInPlace(assignmentOperator, useKind !=
UseKind
.Unused))
2960
EmitCallExpression(left,
UseKind
.UsedAsAddress);
2971
EmitCalli(left,
UseKind
.UsedAsAddress);
2999
EmitAssignmentExpression(assignment,
UseKind
.UsedAsAddress);
3050
private LocalDefinition EmitAssignmentDuplication(BoundAssignmentOperator assignmentOperator,
UseKind
useKind, bool lhsUsesStack)
3053
if (useKind !=
UseKind
.Unused)
3194
private void EmitAssignmentPostfix(BoundAssignmentOperator assignment, LocalDefinition temp,
UseKind
useKind)
3198
if (useKind ==
UseKind
.UsedAsAddress)
3209
if (useKind ==
UseKind
.UsedAsValue && assignment.IsRef)
4041
private void EmitCalli(BoundFunctionPointerInvocation ptrInvocation,
UseKind
useKind)
4063
MightEscapeTemporaryRefs(ptrInvocation, used: useKind !=
UseKind
.Unused));
4078
private void EmitCallCleanup(SyntaxNode syntax,
UseKind
useKind, MethodSymbol method)
4082
EmitPopIfUnused(useKind !=
UseKind
.Unused);
4088
Debug.Assert(useKind ==
UseKind
.Unused, "Using the return value of a void method.");
4122
if (useKind ==
UseKind
.UsedAsValue && method.RefKind != RefKind.None)
4126
else if (useKind ==
UseKind
.UsedAsAddress)