#include "src/compiler/redundancy-elimination.h"
#include "src/codegen/tick-counter.h"
#include "src/compiler/feedback-source.h"
#include "src/compiler/js-graph.h"
#include "test/unittests/compiler/graph-reducer-unittest.h"
#include "test/unittests/compiler/graph-unittest.h"
#include "test/unittests/compiler/node-test-utils.h"
_;
NiceMock;
namespace v8 {
namespace internal {
namespace compiler {
namespace redundancy_elimination_unittest {
class RedundancyEliminationTest : public GraphTest { … };
namespace {
const CheckForMinusZeroMode kCheckForMinusZeroModes[] = …;
const CheckTaggedInputMode kCheckTaggedInputModes[] = …;
const NumberOperationHint kNumberOperationHints[] = …;
}
TEST_F(RedundancyEliminationTest, CheckBounds) { … }
TEST_F(RedundancyEliminationTest, CheckNumberSubsumedByCheckSmi) { … }
TEST_F(RedundancyEliminationTest, CheckReceiver) { … }
TEST_F(RedundancyEliminationTest, CheckReceiverOrNullOrUndefined) { … }
TEST_F(RedundancyEliminationTest,
CheckReceiverOrNullOrUndefinedSubsumedByCheckReceiver) { … }
TEST_F(RedundancyEliminationTest,
CheckStringSubsumedByCheckInternalizedString) { … }
TEST_F(RedundancyEliminationTest, CheckSymbol) { … }
TEST_F(RedundancyEliminationTest, CheckedFloat64ToInt32) { … }
TEST_F(RedundancyEliminationTest, CheckedFloat64ToInt64) { … }
TEST_F(RedundancyEliminationTest, CheckedInt32ToTaggedSigned) { … }
TEST_F(RedundancyEliminationTest, CheckedInt64ToInt32) { … }
TEST_F(RedundancyEliminationTest, CheckedInt64ToTaggedSigned) { … }
TEST_F(RedundancyEliminationTest, CheckedTaggedSignedToInt32) { … }
TEST_F(RedundancyEliminationTest, CheckedTaggedToFloat64) { … }
TEST_F(RedundancyEliminationTest,
CheckedTaggedToFloat64SubsubmedByCheckedTaggedToFloat64) { … }
TEST_F(RedundancyEliminationTest, CheckedTaggedToInt32) { … }
TEST_F(RedundancyEliminationTest,
CheckedTaggedToInt32SubsumedByCheckedTaggedSignedToInt32) { … }
TEST_F(RedundancyEliminationTest, CheckedTaggedToInt64) { … }
TEST_F(RedundancyEliminationTest, CheckedTaggedToTaggedPointer) { … }
TEST_F(RedundancyEliminationTest, CheckedTaggedToTaggedSigned) { … }
TEST_F(RedundancyEliminationTest, CheckedTruncateTaggedToWord32) { … }
TEST_F(RedundancyEliminationTest,
CheckedTruncateTaggedToWord32SubsumedByCheckedTruncateTaggedToWord32) { … }
TEST_F(RedundancyEliminationTest, CheckedUint32Bounds) { … }
TEST_F(RedundancyEliminationTest, CheckedUint32ToInt32) { … }
TEST_F(RedundancyEliminationTest, CheckedUint32ToTaggedSigned) { … }
TEST_F(RedundancyEliminationTest, CheckedUint64Bounds) { … }
TEST_F(RedundancyEliminationTest, CheckedUint64ToInt32) { … }
TEST_F(RedundancyEliminationTest, CheckedUint64ToTaggedSigned) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeNumberEqualWithCheckBoundsBetterType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeNumberEqualWithCheckBoundsSameType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeNumberLessThanWithCheckBoundsBetterType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeNumberLessThanWithCheckBoundsSameType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeNumberLessThanOrEqualWithCheckBoundsBetterType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeNumberLessThanOrEqualWithCheckBoundsSameType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeNumberAddWithCheckBoundsBetterType) { … }
TEST_F(RedundancyEliminationTest, SpeculativeNumberAddWithCheckBoundsSameType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeNumberSubtractWithCheckBoundsBetterType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeNumberSubtractWithCheckBoundsSameType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeSafeIntegerAddWithCheckBoundsBetterType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeSafeIntegerAddWithCheckBoundsSameType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeSafeIntegerSubtractWithCheckBoundsBetterType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeSafeIntegerSubtractWithCheckBoundsSameType) { … }
TEST_F(RedundancyEliminationTest,
SpeculativeToNumberWithCheckBoundsBetterType) { … }
TEST_F(RedundancyEliminationTest, SpeculativeToNumberWithCheckBoundsSameType) { … }
}
}
}
}