39 Node* na = graph()->NewNode(&
kOp0);
40 Node* nb = graph()->NewNode(&
kOp0);
41 Node* n1 = graph()->NewNode(&
kOp0, na);
42 Node* n2 = graph()->NewNode(&
kOp0, nb);
43 EXPECT_FALSE(Reduce(n1).Changed());
44 EXPECT_FALSE(Reduce(n2).Changed());
49 Node* n0 = graph()->NewNode(&
kOp0);
50 Node* n1 = graph()->NewNode(&
kOp1, n0);
51 EXPECT_FALSE(Reduce(n1).Changed());
53 EXPECT_FALSE(Reduce(graph()->NewNode(&
kOp1, n0)).Changed());
58 static const size_t kMaxInputCount = 16;
59 Node* inputs[kMaxInputCount];
62 std::numeric_limits<Operator::Opcode>::max() -
i);
66 TRACED_FORRANGE(
size_t, input_count, 0,
arraysize(inputs)) {
69 static_cast<int>(input_count), 1,
"op");
70 Node* n1 = graph()->NewNode(&op1,
static_cast<int>(input_count), inputs);
71 Reduction
r1 = Reduce(n1);
72 EXPECT_FALSE(
r1.Changed());
76 static_cast<int>(input_count), 1,
"op");
77 Node* n2 = graph()->NewNode(&op2,
static_cast<int>(input_count), inputs);
78 Reduction
r2 = Reduce(n2);
79 EXPECT_TRUE(
r2.Changed());
80 EXPECT_EQ(n1,
r2.replacement());
86 static const size_t kMaxInputCount = 16;
87 Node* inputs[kMaxInputCount];
90 std::numeric_limits<Operator::Opcode>::max() -
i);
94 TRACED_FORRANGE(
size_t, input_count, 0,
arraysize(inputs)) {
96 static_cast<int>(input_count), 1,
"op1");
97 Node* n = graph()->NewNode(&op1,
static_cast<int>(input_count), inputs);
98 Reduction r = Reduce(n);
99 EXPECT_FALSE(r.Changed());
101 r = Reduce(graph()->NewNode(&op1,
static_cast<int>(input_count), inputs));
102 ASSERT_TRUE(r.Changed());
103 EXPECT_EQ(n, r.replacement());
105 r = Reduce(graph()->NewNode(&op1,
static_cast<int>(input_count), inputs));
106 ASSERT_TRUE(r.Changed());
107 EXPECT_EQ(n, r.replacement());
113 Node* n = graph()->NewNode(&
kOp0);
114 EXPECT_FALSE(Reduce(n).Changed());
115 EXPECT_FALSE(Reduce(n).Changed());
Reduction Reduce(Node *node)
ValueNumberingReducer reducer_
ValueNumberingReducerTest()
const SimpleOperator kOp0(0, Operator::kNoProperties, 0, 1, "op0")
const SimpleOperator kOp1(1, Operator::kNoProperties, 1, 1, "op1")
TEST_F(InstructionSelectorTest, ChangeFloat32ToFloat64WithParameter)
Debugger support for the V8 JavaScript engine.