mirror of
https://github.com/encounter/dawn-cmake.git
synced 2025-12-15 16:16:08 +00:00
tint/spir-v backend: emit OpSRem instead of OpSMod for remainder
operation Bug: tint:1802 Change-Id: I690ef658874ba8d0d9cd8efa2a91324db175650b Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/118100 Commit-Queue: Antonio Maiorano <amaiorano@google.com> Reviewed-by: David Neto <dneto@google.com> Kokoro: Ben Clayton <bclayton@google.com> Reviewed-by: Ben Clayton <bclayton@google.com>
This commit is contained in:
committed by
Dawn LUCI CQ
parent
18204a71c3
commit
635c5d0f04
@@ -2129,7 +2129,7 @@ uint32_t Builder::GenerateBinaryExpression(const ast::BinaryExpression* expr) {
|
||||
} else if (lhs_is_unsigned) {
|
||||
op = spv::Op::OpUMod;
|
||||
} else {
|
||||
op = spv::Op::OpSMod;
|
||||
op = spv::Op::OpSRem;
|
||||
}
|
||||
} else if (expr->IsMultiply()) {
|
||||
if (lhs_type->is_integer_scalar_or_vector()) {
|
||||
|
||||
@@ -119,7 +119,7 @@ INSTANTIATE_TEST_SUITE_P(BuilderTest,
|
||||
testing::Values(BinaryData{ast::BinaryOp::kAdd, "OpIAdd"},
|
||||
BinaryData{ast::BinaryOp::kAnd, "OpBitwiseAnd"},
|
||||
BinaryData{ast::BinaryOp::kDivide, "OpSDiv"},
|
||||
BinaryData{ast::BinaryOp::kModulo, "OpSMod"},
|
||||
BinaryData{ast::BinaryOp::kModulo, "OpSRem"},
|
||||
BinaryData{ast::BinaryOp::kMultiply, "OpIMul"},
|
||||
BinaryData{ast::BinaryOp::kOr, "OpBitwiseOr"},
|
||||
BinaryData{ast::BinaryOp::kSubtract, "OpISub"},
|
||||
@@ -1458,7 +1458,7 @@ INSTANTIATE_TEST_SUITE_P(BuilderTest,
|
||||
|
||||
Param{Type::i32, ast::BinaryOp::kAdd, "OpIAdd"},
|
||||
Param{Type::i32, ast::BinaryOp::kDivide, "OpSDiv"},
|
||||
Param{Type::i32, ast::BinaryOp::kModulo, "OpSMod"},
|
||||
Param{Type::i32, ast::BinaryOp::kModulo, "OpSRem"},
|
||||
Param{Type::i32, ast::BinaryOp::kMultiply, "OpIMul"},
|
||||
Param{Type::i32, ast::BinaryOp::kSubtract, "OpISub"},
|
||||
|
||||
|
||||
Reference in New Issue
Block a user