@@ -328,7 +328,6 @@ class ExceptionHandlerInfo;
328328 V (CheckHeapObject) \
329329 V (CheckInt32Condition) \
330330 V (CheckCacheIndicesNotCleared) \
331- V (CheckFloat64IsNan) \
332331 V (CheckJSDataViewBounds) \
333332 V (CheckTypedArrayBounds) \
334333 V (CheckTypedArrayNotDetached) \
@@ -347,7 +346,7 @@ class ExceptionHandlerInfo;
347346 V (CheckSymbol) \
348347 V (CheckValue) \
349348 V (CheckValueEqualsInt32) \
350- V (CheckValueEqualsFloat64) \
349+ V (CheckFloat64SameValue) \
351350 V (CheckValueEqualsString) \
352351 V (CheckInstanceType) \
353352 V (Dead) \
@@ -6663,22 +6662,19 @@ class CheckValueEqualsInt32 : public FixedInputNodeT<1, CheckValueEqualsInt32> {
66636662 const int32_t value_;
66646663};
66656664
6666- class CheckValueEqualsFloat64
6667- : public FixedInputNodeT<1 , CheckValueEqualsFloat64> {
6668- using Base = FixedInputNodeT<1 , CheckValueEqualsFloat64>;
6665+ class CheckFloat64SameValue : public FixedInputNodeT <1 , CheckFloat64SameValue> {
6666+ using Base = FixedInputNodeT<1 , CheckFloat64SameValue>;
66696667
66706668 public:
6671- explicit CheckValueEqualsFloat64 (uint64_t bitfield, Float64 value,
6672- DeoptimizeReason reason)
6673- : Base(bitfield | ReasonField::encode(reason)), value_(value) {
6674- DCHECK (!value.is_nan ());
6675- }
6669+ explicit CheckFloat64SameValue (uint64_t bitfield, Float64 value,
6670+ DeoptimizeReason reason)
6671+ : Base(bitfield | ReasonField::encode(reason)), value_(value) {}
66766672
66776673 static constexpr OpProperties kProperties = OpProperties::EagerDeopt();
66786674 static constexpr
66796675 typename Base::InputTypes kInputTypes {ValueRepresentation::kFloat64 };
66806676
6681- double value () const { return value_. get_scalar () ; }
6677+ Float64 value () const { return value_; }
66826678
66836679 static constexpr int kTargetIndex = 0 ;
66846680 Input& target_input () { return input (kTargetIndex ); }
@@ -6695,29 +6691,6 @@ class CheckValueEqualsFloat64
66956691 const Float64 value_;
66966692};
66976693
6698- class CheckFloat64IsNan : public FixedInputNodeT <1 , CheckFloat64IsNan> {
6699- using Base = FixedInputNodeT<1 , CheckFloat64IsNan>;
6700-
6701- public:
6702- explicit CheckFloat64IsNan (uint64_t bitfield, DeoptimizeReason reason)
6703- : Base(bitfield | ReasonField::encode(reason)) {}
6704-
6705- static constexpr OpProperties kProperties = OpProperties::EagerDeopt();
6706- static constexpr
6707- typename Base::InputTypes kInputTypes {ValueRepresentation::kFloat64 };
6708-
6709- static constexpr int kTargetIndex = 0 ;
6710- Input& target_input () { return input (kTargetIndex ); }
6711-
6712- void SetValueLocationConstraints ();
6713- void GenerateCode (MaglevAssembler*, const ProcessingState&);
6714- void PrintParams (std::ostream&, MaglevGraphLabeller*) const ;
6715-
6716- auto options () const { return std::tuple{deoptimize_reason ()}; }
6717-
6718- DEOPTIMIZE_REASON_FIELD
6719- };
6720-
67216694class CheckValueEqualsString
67226695 : public FixedInputNodeT<1 , CheckValueEqualsString> {
67236696 using Base = FixedInputNodeT<1 , CheckValueEqualsString>;
0 commit comments