From: bmeurer Date: Fri, 2 Jan 2015 07:43:34 +0000 (-0800) Subject: [turbofan] Fix missing MachineOperator unittest. X-Git-Tag: upstream/4.7.83~5092 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=643ed5b8bec269c86cf68b93ed79de9c2410cd46;p=platform%2Fupstream%2Fv8.git [turbofan] Fix missing MachineOperator unittest. The machine-operator-unittest.cc file was missing from unittests.gyp. Fixed the compiler errors and added it back. TBR=machenbach@chromium.org Review URL: https://codereview.chromium.org/824243003 Cr-Commit-Position: refs/heads/master@{#25948} --- diff --git a/src/compiler/machine-operator.h b/src/compiler/machine-operator.h index 35a340f..42f3130 100644 --- a/src/compiler/machine-operator.h +++ b/src/compiler/machine-operator.h @@ -230,11 +230,13 @@ class MachineOperatorBuilder FINAL : public ZoneObject { const MachineOperatorGlobalCache& cache_; const MachineType word_; const Flags flags_; + DISALLOW_COPY_AND_ASSIGN(MachineOperatorBuilder); }; DEFINE_OPERATORS_FOR_FLAGS(MachineOperatorBuilder::Flags) + } // namespace compiler } // namespace internal } // namespace v8 diff --git a/test/unittests/compiler/machine-operator-unittest.cc b/test/unittests/compiler/machine-operator-unittest.cc index 6e41faa..6e0df2a 100644 --- a/test/unittests/compiler/machine-operator-unittest.cc +++ b/test/unittests/compiler/machine-operator-unittest.cc @@ -3,8 +3,10 @@ // found in the LICENSE file. #include "src/compiler/machine-operator.h" -#include "src/compiler/operator-properties-inl.h" -#include "testing/gtest-support.h" +#include "src/compiler/opcodes.h" +#include "src/compiler/operator.h" +#include "src/compiler/operator-properties.h" +#include "test/unittests/test-utils.h" namespace v8 { namespace internal { @@ -14,13 +16,14 @@ namespace compiler { template class MachineOperatorTestWithParam - : public ::testing::TestWithParam< ::testing::tuple > { + : public TestWithZone, + public ::testing::WithParamInterface< ::testing::tuple > { protected: MachineType type() const { return ::testing::get<0>(B::GetParam()); } const T& GetParam() const { return ::testing::get<1>(B::GetParam()); } private: - typedef ::testing::TestWithParam< ::testing::tuple > B; + typedef ::testing::WithParamInterface< ::testing::tuple > B; }; @@ -47,14 +50,14 @@ typedef MachineOperatorTestWithParam TEST_P(MachineLoadOperatorTest, InstancesAreGloballyShared) { - MachineOperatorBuilder machine1(type()); - MachineOperatorBuilder machine2(type()); + MachineOperatorBuilder machine1(zone(), type()); + MachineOperatorBuilder machine2(zone(), type()); EXPECT_EQ(machine1.Load(GetParam()), machine2.Load(GetParam())); } TEST_P(MachineLoadOperatorTest, NumberOfInputsAndOutputs) { - MachineOperatorBuilder machine(type()); + MachineOperatorBuilder machine(zone(), type()); const Operator* op = machine.Load(GetParam()); EXPECT_EQ(2, op->ValueInputCount()); @@ -69,13 +72,13 @@ TEST_P(MachineLoadOperatorTest, NumberOfInputsAndOutputs) { TEST_P(MachineLoadOperatorTest, OpcodeIsCorrect) { - MachineOperatorBuilder machine(type()); + MachineOperatorBuilder machine(zone(), type()); EXPECT_EQ(IrOpcode::kLoad, machine.Load(GetParam())->opcode()); } TEST_P(MachineLoadOperatorTest, ParameterIsCorrect) { - MachineOperatorBuilder machine(type()); + MachineOperatorBuilder machine(zone(), type()); EXPECT_EQ(GetParam(), OpParameter(machine.Load(GetParam()))); } @@ -105,14 +108,14 @@ class MachineStoreOperatorTest TEST_P(MachineStoreOperatorTest, InstancesAreGloballyShared) { - MachineOperatorBuilder machine1(type()); - MachineOperatorBuilder machine2(type()); + MachineOperatorBuilder machine1(zone(), type()); + MachineOperatorBuilder machine2(zone(), type()); EXPECT_EQ(machine1.Store(GetParam()), machine2.Store(GetParam())); } TEST_P(MachineStoreOperatorTest, NumberOfInputsAndOutputs) { - MachineOperatorBuilder machine(type()); + MachineOperatorBuilder machine(zone(), type()); const Operator* op = machine.Store(GetParam()); EXPECT_EQ(3, op->ValueInputCount()); @@ -127,13 +130,13 @@ TEST_P(MachineStoreOperatorTest, NumberOfInputsAndOutputs) { TEST_P(MachineStoreOperatorTest, OpcodeIsCorrect) { - MachineOperatorBuilder machine(type()); + MachineOperatorBuilder machine(zone(), type()); EXPECT_EQ(IrOpcode::kStore, machine.Store(GetParam())->opcode()); } TEST_P(MachineStoreOperatorTest, ParameterIsCorrect) { - MachineOperatorBuilder machine(type()); + MachineOperatorBuilder machine(zone(), type()); EXPECT_EQ(GetParam(), OpParameter(machine.Store(GetParam()))); } @@ -215,14 +218,14 @@ typedef MachineOperatorTestWithParam MachinePureOperatorTest; TEST_P(MachinePureOperatorTest, InstancesAreGloballyShared) { const PureOperator& pop = GetParam(); - MachineOperatorBuilder machine1(type()); - MachineOperatorBuilder machine2(type()); + MachineOperatorBuilder machine1(zone(), type()); + MachineOperatorBuilder machine2(zone(), type()); EXPECT_EQ((machine1.*pop.constructor)(), (machine2.*pop.constructor)()); } TEST_P(MachinePureOperatorTest, NumberOfInputsAndOutputs) { - MachineOperatorBuilder machine(type()); + MachineOperatorBuilder machine(zone(), type()); const PureOperator& pop = GetParam(); const Operator* op = (machine.*pop.constructor)(); @@ -239,7 +242,7 @@ TEST_P(MachinePureOperatorTest, NumberOfInputsAndOutputs) { TEST_P(MachinePureOperatorTest, MarkedAsPure) { - MachineOperatorBuilder machine(type()); + MachineOperatorBuilder machine(zone(), type()); const PureOperator& pop = GetParam(); const Operator* op = (machine.*pop.constructor)(); EXPECT_TRUE(op->HasProperty(Operator::kPure)); @@ -247,7 +250,7 @@ TEST_P(MachinePureOperatorTest, MarkedAsPure) { TEST_P(MachinePureOperatorTest, OpcodeIsCorrect) { - MachineOperatorBuilder machine(type()); + MachineOperatorBuilder machine(zone(), type()); const PureOperator& pop = GetParam(); const Operator* op = (machine.*pop.constructor)(); EXPECT_EQ(pop.opcode, op->opcode()); @@ -266,8 +269,15 @@ INSTANTIATE_TEST_CASE_P( // Pseudo operators. -TEST(MachineOperatorTest, PseudoOperatorsWhenWordSizeIs32Bit) { - MachineOperatorBuilder machine(kRepWord32); +namespace { + +typedef TestWithZone MachineOperatorTest; + +} // namespace + + +TEST_F(MachineOperatorTest, PseudoOperatorsWhenWordSizeIs32Bit) { + MachineOperatorBuilder machine(zone(), kRepWord32); EXPECT_EQ(machine.Word32And(), machine.WordAnd()); EXPECT_EQ(machine.Word32Or(), machine.WordOr()); EXPECT_EQ(machine.Word32Xor(), machine.WordXor()); @@ -288,8 +298,8 @@ TEST(MachineOperatorTest, PseudoOperatorsWhenWordSizeIs32Bit) { } -TEST(MachineOperatorTest, PseudoOperatorsWhenWordSizeIs64Bit) { - MachineOperatorBuilder machine(kRepWord64); +TEST_F(MachineOperatorTest, PseudoOperatorsWhenWordSizeIs64Bit) { + MachineOperatorBuilder machine(zone(), kRepWord64); EXPECT_EQ(machine.Word64And(), machine.WordAnd()); EXPECT_EQ(machine.Word64Or(), machine.WordOr()); EXPECT_EQ(machine.Word64Xor(), machine.WordXor()); diff --git a/test/unittests/unittests.gyp b/test/unittests/unittests.gyp index a32a87e..2ead44f 100644 --- a/test/unittests/unittests.gyp +++ b/test/unittests/unittests.gyp @@ -55,6 +55,7 @@ 'compiler/js-typed-lowering-unittest.cc', 'compiler/load-elimination-unittest.cc', 'compiler/machine-operator-reducer-unittest.cc', + 'compiler/machine-operator-unittest.cc', 'compiler/move-optimizer-unittest.cc', 'compiler/node-matchers-unittest.cc', 'compiler/node-test-utils.cc',