summaryrefslogtreecommitdiff
path: root/src/validator.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/validator.cc')
-rw-r--r--src/validator.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/validator.cc b/src/validator.cc
index fed3a950..96d0782c 100644
--- a/src/validator.cc
+++ b/src/validator.cc
@@ -149,6 +149,7 @@ class Validator : public ExprVisitor::Delegate {
Result OnAtomicRmwCmpxchgExpr(AtomicRmwCmpxchgExpr*) override;
Result OnTernaryExpr(TernaryExpr*) override;
Result OnSimdLaneOpExpr(SimdLaneOpExpr*) override;
+ Result OnSimdLoadLaneExpr(SimdLoadLaneExpr*) override;
Result OnSimdShuffleOpExpr(SimdShuffleOpExpr*) override;
Result OnLoadSplatExpr(LoadSplatExpr*) override;
Result OnLoadZeroExpr(LoadZeroExpr*) override;
@@ -573,6 +574,13 @@ Result Validator::OnSimdLaneOpExpr(SimdLaneOpExpr* expr) {
return Result::Ok;
}
+Result Validator::OnSimdLoadLaneExpr(SimdLoadLaneExpr* expr) {
+ result_ |= validator_.OnSimdLoadLane(
+ expr->loc, expr->opcode, expr->opcode.GetAlignment(expr->align),
+ expr->val);
+ return Result::Ok;
+}
+
Result Validator::OnSimdShuffleOpExpr(SimdShuffleOpExpr* expr) {
result_ |= validator_.OnSimdShuffleOp(expr->loc, expr->opcode, expr->val);
return Result::Ok;