aboutsummaryrefslogtreecommitdiff
path: root/ARMeilleure/Translation/EmitterContext.cs
diff options
context:
space:
mode:
Diffstat (limited to 'ARMeilleure/Translation/EmitterContext.cs')
-rw-r--r--ARMeilleure/Translation/EmitterContext.cs13
1 files changed, 4 insertions, 9 deletions
diff --git a/ARMeilleure/Translation/EmitterContext.cs b/ARMeilleure/Translation/EmitterContext.cs
index 7abda1a7..2195830c 100644
--- a/ARMeilleure/Translation/EmitterContext.cs
+++ b/ARMeilleure/Translation/EmitterContext.cs
@@ -609,15 +609,10 @@ namespace ARMeilleure.Translation
private static bool EndsWithUnconditional(BasicBlock block)
{
- Operation lastOp = block.GetLastOp() as Operation;
-
- if (lastOp == null)
- {
- return false;
- }
-
- return lastOp.Instruction == Instruction.Branch ||
- lastOp.Instruction == Instruction.Return;
+ return block.Operations.Last is Operation lastOp &&
+ (lastOp.Instruction == Instruction.Branch ||
+ lastOp.Instruction == Instruction.Return ||
+ lastOp.Instruction == Instruction.Tailcall);
}
public ControlFlowGraph GetControlFlowGraph()