7 types derived from TransitionBlock
ILCompiler.ReadyToRun (7)
Compiler\DependencyAnalysis\ReadyToRun\TransitionBlock.cs (7)
447private sealed class X86TransitionBlock : TransitionBlock 502internal abstract class X64TransitionBlock : TransitionBlock 566private class Arm32TransitionBlock : TransitionBlock 606private class Arm64TransitionBlock : TransitionBlock 672private class LoongArch64TransitionBlock : TransitionBlock 717private class RiscV64TransitionBlock : TransitionBlock 755private 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; 1606if (nSizeOfArgStack > TransitionBlock.MaxArgSize) 1649while (TransitionBlock.InvalidOffset != (ofs = GetNextOffset())) 1682if (endOfs > TransitionBlock.MaxArgSize) 1881if (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) 449public static TransitionBlock Instance = new X86TransitionBlock(); 530public static TransitionBlock Instance = new X64WindowsTransitionBlock(); 547public static readonly TransitionBlock Instance = new X64UnixTransitionBlock(); 568public static TransitionBlock Instance = new Arm32TransitionBlock(); 600public new static TransitionBlock Instance = new Arm32ElTransitionBlock(); 608public static TransitionBlock Instance = new Arm64TransitionBlock(); 649public new static TransitionBlock Instance = new AppleArm64TransitionBlock(); 674public static TransitionBlock Instance = new LoongArch64TransitionBlock(); 719public static TransitionBlock Instance = new RiscV64TransitionBlock(); 757public 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)