Index: src/compiler/effect-control-linearizer.cc |
diff --git a/src/compiler/effect-control-linearizer.cc b/src/compiler/effect-control-linearizer.cc |
index c6629a91b7d20e2dd8730bdf1832e395489e2c5e..4a3d85d99e9d54cb059713049b799674a56b9893 100644 |
--- a/src/compiler/effect-control-linearizer.cc |
+++ b/src/compiler/effect-control-linearizer.cc |
@@ -1811,6 +1811,7 @@ Node* EffectControlLinearizer::LowerTruncateTaggedToWord32(Node* node) { |
Node* EffectControlLinearizer::LowerCheckedTruncateTaggedToWord32( |
Node* node, Node* frame_state) { |
+ CheckTaggedInputMode mode = CheckTaggedInputModeOf(node->op()); |
Node* value = node->InputAt(0); |
auto if_not_smi = __ MakeLabel<1>(); |
@@ -1824,8 +1825,8 @@ Node* EffectControlLinearizer::LowerCheckedTruncateTaggedToWord32( |
// Otherwise, check that it's a heap number or oddball and truncate the value |
// to int32. |
__ Bind(&if_not_smi); |
- Node* number = BuildCheckedHeapNumberOrOddballToFloat64( |
- CheckTaggedInputMode::kNumberOrOddball, value, frame_state); |
+ Node* number = |
+ BuildCheckedHeapNumberOrOddballToFloat64(mode, value, frame_state); |
number = __ TruncateFloat64ToWord32(number); |
__ Goto(&done, number); |