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)
2548
private void EmitAssignmentExpression(BoundAssignmentOperator assignmentOperator,
UseKind
useKind)
2550
if (TryEmitAssignmentInPlace(assignmentOperator, useKind !=
UseKind
.Unused))
2982
EmitCallExpression(left,
UseKind
.UsedAsAddress);
2993
EmitCalli(left,
UseKind
.UsedAsAddress);
3021
EmitAssignmentExpression(assignment,
UseKind
.UsedAsAddress);
3072
private LocalDefinition EmitAssignmentDuplication(BoundAssignmentOperator assignmentOperator,
UseKind
useKind, bool lhsUsesStack)
3075
if (useKind !=
UseKind
.Unused)
3216
private void EmitAssignmentPostfix(BoundAssignmentOperator assignment, LocalDefinition temp,
UseKind
useKind)
3220
if (useKind ==
UseKind
.UsedAsAddress)
3231
if (useKind ==
UseKind
.UsedAsValue && assignment.IsRef)
4063
private void EmitCalli(BoundFunctionPointerInvocation ptrInvocation,
UseKind
useKind)
4085
MightEscapeTemporaryRefs(ptrInvocation, used: useKind !=
UseKind
.Unused));
4100
private void EmitCallCleanup(SyntaxNode syntax,
UseKind
useKind, MethodSymbol method)
4104
EmitPopIfUnused(useKind !=
UseKind
.Unused);
4110
Debug.Assert(useKind ==
UseKind
.Unused, "Using the return value of a void method.");
4144
if (useKind ==
UseKind
.UsedAsValue && method.RefKind != RefKind.None)
4148
else if (useKind ==
UseKind
.UsedAsAddress)