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);
350
EmitCalli((BoundFunctionPointerInvocation)expression, used ?
UseKind
.UsedAsValue :
UseKind
.Unused);
1640
private void EmitCallExpression(BoundCall call,
UseKind
useKind)
1677
private void EmitStaticCallExpression(BoundCall call,
UseKind
useKind)
1690
MightEscapeTemporaryRefs(call, used: useKind !=
UseKind
.Unused));
1714
private void EmitInstanceCallExpression(BoundCall call,
UseKind
useKind)
1745
UseKind
receiverUseKind;
1748
receiverUseKind =
UseKind
.UsedAsValue;
1756
receiverUseKind =
UseKind
.UsedAsValue;
1776
receiverUseKind =
UseKind
.UsedAsAddress;
1783
receiverUseKind =
UseKind
.UsedAsValue;
1802
Debug.Assert(receiverUseKind ==
UseKind
.UsedAsValue);
1812
Debug.Assert(receiverUseKind ==
UseKind
.UsedAsValue);
1819
if (receiverUseKind !=
UseKind
.UsedAsAddress)
1821
Debug.Assert(receiverUseKind ==
UseKind
.UsedAsValue);
1854
_builder.LocalSlotManager.EndScopeOfTrackingAddressedLocals(countBefore, MightEscapeTemporaryRefs(call, used: useKind !=
UseKind
.Unused));
1982
void emitArgumentsAndCallEpilogue(BoundCall call, CallKind callKind,
UseKind
useKind)
2559
private void EmitAssignmentExpression(BoundAssignmentOperator assignmentOperator,
UseKind
useKind)
2561
if (TryEmitAssignmentInPlace(assignmentOperator, useKind !=
UseKind
.Unused))
2993
EmitCallExpression(left,
UseKind
.UsedAsAddress);
3004
EmitCalli(left,
UseKind
.UsedAsAddress);
3032
EmitAssignmentExpression(assignment,
UseKind
.UsedAsAddress);
3083
private LocalDefinition EmitAssignmentDuplication(BoundAssignmentOperator assignmentOperator,
UseKind
useKind, bool lhsUsesStack)
3086
if (useKind !=
UseKind
.Unused)
3227
private void EmitAssignmentPostfix(BoundAssignmentOperator assignment, LocalDefinition temp,
UseKind
useKind)
3231
if (useKind ==
UseKind
.UsedAsAddress)
3242
if (useKind ==
UseKind
.UsedAsValue && assignment.IsRef)
4074
private void EmitCalli(BoundFunctionPointerInvocation ptrInvocation,
UseKind
useKind)
4096
MightEscapeTemporaryRefs(ptrInvocation, used: useKind !=
UseKind
.Unused));
4111
private void EmitCallCleanup(SyntaxNode syntax,
UseKind
useKind, MethodSymbol method)
4115
EmitPopIfUnused(useKind !=
UseKind
.Unused);
4121
Debug.Assert(useKind ==
UseKind
.Unused, "Using the return value of a void method.");
4155
if (useKind ==
UseKind
.UsedAsValue && method.RefKind != RefKind.None)
4159
else if (useKind ==
UseKind
.UsedAsAddress)