diff --git a/src/common/mod.rs b/src/common/mod.rs
index 50f72ae..936a4e3 100644
--- a/src/common/mod.rs
+++ b/src/common/mod.rs
@@ -6,6 +6,10 @@ pub mod stack;
pub const DEFAULT_MEMORY_INDEX: u32 = 0;
/// Index of default table.
pub const DEFAULT_TABLE_INDEX: u32 = 0;
+/// Maximum number of entries in value stack.
+pub const DEFAULT_VALUE_STACK_LIMIT: usize = 16384;
+/// Maximum number of entries in frame stack.
+pub const DEFAULT_FRAME_STACK_LIMIT: usize = 1024;
/// Control stack frame.
#[derive(Debug, Clone)]
diff --git a/src/interpreter/runner.rs b/src/interpreter/runner.rs
index 2842249..d4d14d2 100644
--- a/src/interpreter/runner.rs
+++ b/src/interpreter/runner.rs
@@ -63,7 +63,11 @@ enum RunResult<'a> {
}
impl Interpreter {
- pub fn run_function(function_context: FunctionContext) -> Result