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()