7 types derived from TransitionBlock
ILCompiler.ReadyToRun (7)
Compiler\DependencyAnalysis\ReadyToRun\TransitionBlock.cs (7)
441private sealed class X86TransitionBlock : TransitionBlock 496internal abstract class X64TransitionBlock : TransitionBlock 560private class Arm32TransitionBlock : TransitionBlock 600private class Arm64TransitionBlock : TransitionBlock 666private class LoongArch64TransitionBlock : TransitionBlock 711private class RiscV64TransitionBlock : TransitionBlock 749private class Wasm32TransitionBlock : TransitionBlock
42 references to TransitionBlock
ILCompiler.ReadyToRun (42)
Compiler\DependencyAnalysis\ReadyToRun\ArgIterator.cs (18)
263private readonly TransitionBlock _transitionBlock; 275public ArgDestination(TransitionBlock transitionBlock, int offset, ArgLocDesc? argLocDescForStructInRegs) 296return _offset == TransitionBlock.StructInRegsOffset; 442private readonly TransitionBlock _transitionBlock; 534_transitionBlock = TransitionBlock.FromTarget(context.Target); 719return _transitionBlock.OffsetOfArgumentRegisters + TransitionBlock.X86Constants.OffsetOfEcx; 721return _transitionBlock.OffsetOfArgumentRegisters + TransitionBlock.X86Constants.OffsetOfEdx; 762return _transitionBlock.OffsetOfArgumentRegisters + TransitionBlock.X86Constants.OffsetOfEcx; 764return _transitionBlock.OffsetOfArgumentRegisters + TransitionBlock.X86Constants.OffsetOfEdx; 907return TransitionBlock.InvalidOffset; 989if ((cFPRegs + _x64UnixIdxFPReg <= TransitionBlock.X64UnixTransitionBlock.NUM_FLOAT_ARGUMENT_REGISTERS) && (cGenRegs + _x64UnixIdxGenReg) <= _transitionBlock.NumArgumentRegisters) 1002return TransitionBlock.StructInRegsOffset; 1019if (cFPRegs + _x64UnixIdxFPReg <= TransitionBlock.X64UnixTransitionBlock.NUM_FLOAT_ARGUMENT_REGISTERS) 1072return _transitionBlock.OffsetOfFloatArgumentRegisters + idxFpReg * TransitionBlock.SizeOfM128A; 1640if (nSizeOfArgStack > TransitionBlock.MaxArgSize) 1683while (TransitionBlock.InvalidOffset != (ofs = GetNextOffset())) 1716if (endOfs > TransitionBlock.MaxArgSize) 1915if (argOffset == TransitionBlock.StructInRegsOffset)
Compiler\DependencyAnalysis\ReadyToRun\GCRefMapBuilder.cs (7)
57private readonly TransitionBlock _transitionBlock; 66_transitionBlock = TransitionBlock.FromTarget(target); 69internal static (ArgIterator, TransitionBlock) BuildArgIterator(MethodSignature signature, TypeSystemContext context, bool methodRequiresInstArg = false, bool isUnboxingStub = false, bool methodIsArrayAddressMethod = false, bool methodIsStringConstructor = false, bool methodIsAsyncCall = false) 71TransitionBlock transitionBlock = TransitionBlock.FromTarget(context.Target); 123(ArgIterator argit, TransitionBlock transitionBlock) = BuildArgIterator(method.Signature, method.Context, 213while ((argOffset = argit.GetNextOffset()) != TransitionBlock.InvalidOffset)
Compiler\DependencyAnalysis\ReadyToRun\TransitionBlock.cs (11)
19public static TransitionBlock FromTarget(TargetDetails target) 443public static TransitionBlock Instance = new X86TransitionBlock(); 524public static TransitionBlock Instance = new X64WindowsTransitionBlock(); 541public static readonly TransitionBlock Instance = new X64UnixTransitionBlock(); 562public static TransitionBlock Instance = new Arm32TransitionBlock(); 594public new static TransitionBlock Instance = new Arm32ElTransitionBlock(); 602public static TransitionBlock Instance = new Arm64TransitionBlock(); 643public new static TransitionBlock Instance = new AppleArm64TransitionBlock(); 668public static TransitionBlock Instance = new LoongArch64TransitionBlock(); 713public static TransitionBlock Instance = new RiscV64TransitionBlock(); 751public static TransitionBlock Instance = new Wasm32TransitionBlock();
Compiler\DependencyAnalysis\ReadyToRun\WasmImportThunk.cs (2)
127(ArgIterator argit, TransitionBlock transitionBlock) = GCRefMapBuilder.BuildArgIterator(methodSignature, _context); 135while ((argOffset = argit.GetNextOffset()) != TransitionBlock.InvalidOffset)
Compiler\DependencyAnalysis\ReadyToRun\WasmInterpreterToR2RThunkNode.cs (2)
87(ArgIterator argit, TransitionBlock transitionBlock) = GCRefMapBuilder.BuildArgIterator(methodSignature, _context); 102while ((argOffset = argit.GetNextOffset()) != TransitionBlock.InvalidOffset)
Compiler\DependencyAnalysis\ReadyToRun\WasmR2RToInterpreterThunkNode.cs (2)
96(ArgIterator argit, TransitionBlock transitionBlock) = GCRefMapBuilder.BuildArgIterator(methodSignature, _context); 107while ((argOffset = argit.GetNextOffset()) != TransitionBlock.InvalidOffset)