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));
1967
void emitArgumentsAndCallEpilogue(BoundCall call, CallKind callKind,
UseKind
useKind)
2537
private void EmitAssignmentExpression(BoundAssignmentOperator assignmentOperator,
UseKind
useKind)
2539
if (TryEmitAssignmentInPlace(assignmentOperator, useKind !=
UseKind
.Unused))
2971
EmitCallExpression(left,
UseKind
.UsedAsAddress);
2982
EmitCalli(left,
UseKind
.UsedAsAddress);
3010
EmitAssignmentExpression(assignment,
UseKind
.UsedAsAddress);
3061
private LocalDefinition EmitAssignmentDuplication(BoundAssignmentOperator assignmentOperator,
UseKind
useKind, bool lhsUsesStack)
3064
if (useKind !=
UseKind
.Unused)
3205
private void EmitAssignmentPostfix(BoundAssignmentOperator assignment, LocalDefinition temp,
UseKind
useKind)
3209
if (useKind ==
UseKind
.UsedAsAddress)
3220
if (useKind ==
UseKind
.UsedAsValue && assignment.IsRef)
4052
private void EmitCalli(BoundFunctionPointerInvocation ptrInvocation,
UseKind
useKind)
4074
MightEscapeTemporaryRefs(ptrInvocation, used: useKind !=
UseKind
.Unused));
4089
private void EmitCallCleanup(SyntaxNode syntax,
UseKind
useKind, MethodSymbol method)
4093
EmitPopIfUnused(useKind !=
UseKind
.Unused);
4099
Debug.Assert(useKind ==
UseKind
.Unused, "Using the return value of a void method.");
4133
if (useKind ==
UseKind
.UsedAsValue && method.RefKind != RefKind.None)
4137
else if (useKind ==
UseKind
.UsedAsAddress)