aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Cpu/LightningJit/Arm32/MultiBlock.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Ryujinx.Cpu/LightningJit/Arm32/MultiBlock.cs')
-rw-r--r--src/Ryujinx.Cpu/LightningJit/Arm32/MultiBlock.cs31
1 files changed, 31 insertions, 0 deletions
diff --git a/src/Ryujinx.Cpu/LightningJit/Arm32/MultiBlock.cs b/src/Ryujinx.Cpu/LightningJit/Arm32/MultiBlock.cs
new file mode 100644
index 00000000..a213c222
--- /dev/null
+++ b/src/Ryujinx.Cpu/LightningJit/Arm32/MultiBlock.cs
@@ -0,0 +1,31 @@
+using System.Collections.Generic;
+
+namespace Ryujinx.Cpu.LightningJit.Arm32
+{
+ class MultiBlock
+ {
+ public readonly List<Block> Blocks;
+ public readonly bool HasHostCall;
+ public readonly bool IsTruncated;
+
+ public MultiBlock(List<Block> blocks)
+ {
+ Blocks = blocks;
+
+ Block block = blocks[0];
+
+ HasHostCall = block.HasHostCall;
+
+ for (int index = 1; index < blocks.Count; index++)
+ {
+ block = blocks[index];
+
+ HasHostCall |= block.HasHostCall;
+ }
+
+ block = blocks[^1];
+
+ IsTruncated = block.IsTruncated;
+ }
+ }
+}