private void CompileBuiltinPredicateCall(PrologCodePredicate p)
{
AMPredicateSet pset = AMPredicateSet.Instance;
_generator.EmitBCall((IAbstractMachinePredicate)pset.CreatePredicate(p.Name, p.Arity));
if (_dictionary.InLastGoal)
{
if (_dictionary.GoalCount > 2)
{
_generator.Emit(OpCodes.Deallocate);
}
// Emit 'proceed'
_generator.EndProcedure();
}
}