summaryrefslogtreecommitdiff
path: root/src/ir.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/ir.h')
-rw-r--r--src/ir.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/ir.h b/src/ir.h
index 4e49a09e..3c631284 100644
--- a/src/ir.h
+++ b/src/ir.h
@@ -295,6 +295,7 @@ enum class ExprType {
BrTable,
Call,
CallIndirect,
+ CallRef,
Compare,
Const,
Convert,
@@ -578,6 +579,16 @@ class ReturnCallIndirectExpr : public ExprMixin<ExprType::ReturnCallIndirect> {
Var table;
};
+class CallRefExpr : public ExprMixin<ExprType::CallRef> {
+ public:
+ explicit CallRefExpr(const Location &loc = Location())
+ : ExprMixin<ExprType::CallRef>(loc) {}
+
+ // This field is setup only during Validate phase,
+ // so keep that in mind when you use it.
+ Var function_type_index;
+};
+
template <ExprType TypeEnum>
class BlockExprBase : public ExprMixin<TypeEnum> {
public: