diff options
Diffstat (limited to 'src/ir-util.cc')
-rw-r--r-- | src/ir-util.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/ir-util.cc b/src/ir-util.cc index 7c32d442..9b664611 100644 --- a/src/ir-util.cc +++ b/src/ir-util.cc @@ -140,6 +140,11 @@ ModuleContext::Arities ModuleContext::GetExprArity(const Expr& expr) const { ci_expr->decl.GetNumResults() }; } + case ExprType::CallRef: { + const Var& var = cast<CallRefExpr>(&expr)->function_type_index; + return { GetFuncParamCount(var) + 1, GetFuncResultCount(var) }; + } + case ExprType::ReturnCallIndirect: { const auto* rci_expr = cast<ReturnCallIndirectExpr>(&expr); return { rci_expr->decl.GetNumParams() + 1, |