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);
1629
private void EmitCallExpression(BoundCall call,
UseKind
useKind)
1666
private void EmitStaticCallExpression(BoundCall call,
UseKind
useKind)
1679
MightEscapeTemporaryRefs(call, used: useKind !=
UseKind
.Unused));
1703
private void EmitInstanceCallExpression(BoundCall call,
UseKind
useKind)
1734
UseKind
receiverUseKind;
1737
receiverUseKind =
UseKind
.UsedAsValue;
1745
receiverUseKind =
UseKind
.UsedAsValue;
1765
receiverUseKind =
UseKind
.UsedAsAddress;
1772
receiverUseKind =
UseKind
.UsedAsValue;
1791
Debug.Assert(receiverUseKind ==
UseKind
.UsedAsValue);
1801
Debug.Assert(receiverUseKind ==
UseKind
.UsedAsValue);
1808
if (receiverUseKind !=
UseKind
.UsedAsAddress)
1810
Debug.Assert(receiverUseKind ==
UseKind
.UsedAsValue);
1843
_builder.LocalSlotManager.EndScopeOfTrackingAddressedLocals(countBefore, MightEscapeTemporaryRefs(call, used: useKind !=
UseKind
.Unused));
1971
void emitArgumentsAndCallEpilogue(BoundCall call, CallKind callKind,
UseKind
useKind)
2541
private void EmitAssignmentExpression(BoundAssignmentOperator assignmentOperator,
UseKind
useKind)
2543
if (TryEmitAssignmentInPlace(assignmentOperator, useKind !=
UseKind
.Unused))
2975
EmitCallExpression(left,
UseKind
.UsedAsAddress);
2986
EmitCalli(left,
UseKind
.UsedAsAddress);
3014
EmitAssignmentExpression(assignment,
UseKind
.UsedAsAddress);
3065
private LocalDefinition EmitAssignmentDuplication(BoundAssignmentOperator assignmentOperator,
UseKind
useKind, bool lhsUsesStack)
3068
if (useKind !=
UseKind
.Unused)
3209
private void EmitAssignmentPostfix(BoundAssignmentOperator assignment, LocalDefinition temp,
UseKind
useKind)
3213
if (useKind ==
UseKind
.UsedAsAddress)
3224
if (useKind ==
UseKind
.UsedAsValue && assignment.IsRef)
4056
private void EmitCalli(BoundFunctionPointerInvocation ptrInvocation,
UseKind
useKind)
4078
MightEscapeTemporaryRefs(ptrInvocation, used: useKind !=
UseKind
.Unused));
4093
private void EmitCallCleanup(SyntaxNode syntax,
UseKind
useKind, MethodSymbol method)
4097
EmitPopIfUnused(useKind !=
UseKind
.Unused);
4103
Debug.Assert(useKind ==
UseKind
.Unused, "Using the return value of a void method.");
4137
if (useKind ==
UseKind
.UsedAsValue && method.RefKind != RefKind.None)
4141
else if (useKind ==
UseKind
.UsedAsAddress)