1 instantiation of CodeGenerator
Microsoft.CodeAnalysis.CSharp (1)
Compiler\MethodCompiler.cs (1)
1670
var codeGen = new CodeGen.
CodeGenerator
(method, block, builder, moduleBuilder, diagnosticsForThisMethod, optimizations, emittingPdb);
45 references to CodeGenerator
Microsoft.CodeAnalysis.CSharp (45)
CodeGen\CodeGenerator_HasHome.cs (3)
40
/// with those APIs should be limited to <see cref="
CodeGenerator
"/>. In other words, it should not be used
42
/// which it is valid to obtain a readonly reference). Usages like that in <see cref="
CodeGenerator
"/> are
114
if (
CodeGenerator
.IsStackLocal(local, stackLocalsOpt) && localRefKind == RefKind.None)
CodeGen\Optimizer.cs (5)
1221
if (
CodeGenerator
.IsRef(receiver) &&
1222
CodeGenerator
.IsPossibleReferenceTypeReceiverOfConstrainedCall(receiver) &&
1223
!
CodeGenerator
.IsSafeToDereferenceReceiverRefAfterEvaluatingArguments(call.Arguments))
1276
RefKind argRefKind =
CodeGenerator
.GetArgumentRefKind(arguments, parameters, argRefKindsOpt, i);
1371
CodeGenerator
.FieldLoadMustUseRef(receiver)))
Compiler\MethodCompiler.cs (1)
1670
var
codeGen = new CodeGen.CodeGenerator(method, block, builder, moduleBuilder, diagnosticsForThisMethod, optimizations, emittingPdb);
Lowering\LocalRewriter\LocalRewriter_AssignmentOperator.cs (2)
290
CodeGen.
CodeGenerator
.HasHome(rewrittenReceiver,
291
CodeGen.
CodeGenerator
.AddressKind.ReadOnly,
Lowering\LocalRewriter\LocalRewriter_Call.cs (14)
304
&& !
CodeGenerator
.HasHome(
306
thisRefKind == RefKind.Ref ?
CodeGenerator
.AddressKind.Writeable :
CodeGenerator
.AddressKind.ReadOnly,
726
CodeGenerator
.HasHome(rewrittenReceiver,
727
CodeGenerator
.AddressKind.Constrained,
810
!
CodeGenerator
.ReceiverIsKnownToReferToTempIfReferenceType(receiverTemp) &&
812
!
CodeGenerator
.IsSafeToDereferenceReceiverRefAfterEvaluatingArguments(rewrittenArguments)))
970
if (
CodeGenerator
.HasHome(rewrittenReceiver,
971
CodeGenerator
.AddressKind.ReadOnly,
984
if (
CodeGenerator
.HasHome(rewrittenReceiver,
995
static
CodeGenerator
.AddressKind getArgumentAddressKind(RefKind refKind)
1005
return
CodeGenerator
.AddressKind.ReadOnly;
1009
return
CodeGenerator
.AddressKind.Writeable;
1072
Debug.Assert(
CodeGenerator
.ReceiverIsKnownToReferToTempIfReferenceType(receiverTemp));
Lowering\LocalRewriter\LocalRewriter_CollectionExpression.cs (1)
676
CodeGenerator
.IsTypeAllowedInBlobWrapper(elementType.EnumUnderlyingTypeOrSelf().SpecialType) &&
Lowering\LocalRewriter\LocalRewriter_CompoundAssignmentOperator.cs (3)
317
!
CodeGenerator
.HasHome(rewrittenReceiver,
318
CodeGenerator
.AddressKind.Constrained,
334
!
CodeGenerator
.ReceiverIsKnownToReferToTempIfReferenceType(receiverTemp))
Lowering\LocalRewriter\LocalRewriter_IndexerAccess.cs (5)
585
!
CodeGenerator
.ReceiverIsKnownToReferToTempIfReferenceType(receiverLocal) &&
587
!
CodeGenerator
.IsSafeToDereferenceReceiverRefAfterEvaluatingArguments(ImmutableArray.Create(makeOffsetInput))))
849
:
CodeGenerator
.IsPossibleReferenceTypeReceiverOfConstrainedCall(receiverLocal);
904
!
CodeGenerator
.ReceiverIsKnownToReferToTempIfReferenceType(receiverLocal))
923
if (!
CodeGenerator
.IsSafeToDereferenceReceiverRefAfterEvaluatingArguments(argumentsBuilder.ToImmutableAndFree()))
Lowering\LocalRewriter\LoweredDynamicOperationFactory.cs (2)
551
var hasHome =
CodeGenerator
.HasHome(loweredReceiver,
552
CodeGenerator
.AddressKind.Writeable,
Lowering\SpillSequenceSpiller.cs (3)
1053
CodeGenerator
.IsPossibleReferenceTypeReceiverOfConstrainedCall(receiver) &&
1054
!
CodeGenerator
.ReceiverIsKnownToReferToTempIfReferenceType(receiver) &&
1055
!
CodeGenerator
.IsSafeToDereferenceReceiverRefAfterEvaluatingArguments(node.Arguments))
Lowering\SyntheticBoundNodeFactory.cs (6)
577
CodeGen.
CodeGenerator
.AssertIsEmitConversionKind(conversion.Kind);
1440
if (!method.ContainingType.IsValueType || !Microsoft.CodeAnalysis.CSharp.CodeGen.
CodeGenerator
.MayUseCallForStructMethod(this.CompilationState.Compilation.SourceModule, method))
1512
CodeGen.
CodeGenerator
.AssertIsEmitConversionKind(c.Kind);
1522
CodeGen.
CodeGenerator
.AssertIsEmitConversionKind(conversion.Kind);
1674
if (!
CodeGenerator
.HasHome(argument,
1675
CodeGenerator
.AddressKind.ReadOnly,