diff options
Diffstat (limited to 'src/validator.cc')
-rw-r--r-- | src/validator.cc | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/validator.cc b/src/validator.cc index c5087dff..3c20cbe8 100644 --- a/src/validator.cc +++ b/src/validator.cc @@ -94,6 +94,7 @@ class Validator : public ExprVisitor::Delegate { Result OnAtomicRmwExpr(AtomicRmwExpr*) override; Result OnAtomicRmwCmpxchgExpr(AtomicRmwCmpxchgExpr*) override; Result OnTernaryExpr(TernaryExpr*) override; + Result OnSimdLaneOpExpr(SimdLaneOpExpr*) override; private: struct ActionResult { @@ -813,6 +814,12 @@ Result Validator::OnTernaryExpr(TernaryExpr* expr) { return Result::Ok; } +Result Validator::OnSimdLaneOpExpr(SimdLaneOpExpr* expr) { + expr_loc_ = &expr->loc; + typechecker_.OnSimdLaneOp(expr->opcode, expr->val); + return Result::Ok; +} + void Validator::CheckFuncSignature(const Location* loc, const FuncDeclaration& decl) { if (decl.has_func_type) { |