Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(216)

Side by Side Diff: test/unittests/compiler/js-operator-unittest.cc

Issue 1374683002: [turbofan] Make Strict(Not)Equal, TypeOf, ToBoolean, UnaryNot effectful. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Remove the no-write property from Strict(Not)Equal Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/compiler/js-operator.h" 5 #include "src/compiler/js-operator.h"
6 #include "src/compiler/opcodes.h" 6 #include "src/compiler/opcodes.h"
7 #include "src/compiler/operator.h" 7 #include "src/compiler/operator.h"
8 #include "src/compiler/operator-properties.h" 8 #include "src/compiler/operator-properties.h"
9 #include "test/unittests/test-utils.h" 9 #include "test/unittests/test-utils.h"
10 10
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 effect_input_count, control_input_count, value_output_count, \ 62 effect_input_count, control_input_count, value_output_count, \
63 effect_output_count, control_output_count) \ 63 effect_output_count, control_output_count) \
64 { \ 64 { \
65 &JSOperatorBuilder::Name, IrOpcode::kJS##Name, properties, \ 65 &JSOperatorBuilder::Name, IrOpcode::kJS##Name, properties, \
66 value_input_count, frame_state_input_count, effect_input_count, \ 66 value_input_count, frame_state_input_count, effect_input_count, \
67 control_input_count, value_output_count, effect_output_count, \ 67 control_input_count, value_output_count, effect_output_count, \
68 control_output_count \ 68 control_output_count \
69 } 69 }
70 SHARED(Equal, Operator::kNoProperties, 2, 1, 1, 1, 1, 1, 2), 70 SHARED(Equal, Operator::kNoProperties, 2, 1, 1, 1, 1, 1, 2),
71 SHARED(NotEqual, Operator::kNoProperties, 2, 1, 1, 1, 1, 1, 2), 71 SHARED(NotEqual, Operator::kNoProperties, 2, 1, 1, 1, 1, 1, 2),
72 SHARED(StrictEqual, Operator::kPure, 2, 0, 0, 0, 1, 0, 0), 72 SHARED(StrictEqual, Operator::kNoThrow, 2, 0, 1, 1, 1, 1, 0),
73 SHARED(StrictNotEqual, Operator::kPure, 2, 0, 0, 0, 1, 0, 0), 73 SHARED(StrictNotEqual, Operator::kNoThrow, 2, 0, 1, 1, 1, 1, 0),
74 SHARED(UnaryNot, Operator::kPure, 1, 0, 0, 0, 1, 0, 0), 74 SHARED(UnaryNot, Operator::kEliminatable, 1, 0, 1, 0, 1, 1, 0),
75 SHARED(ToBoolean, Operator::kPure, 1, 0, 0, 0, 1, 0, 0), 75 SHARED(ToBoolean, Operator::kEliminatable, 1, 0, 1, 0, 1, 1, 0),
76 SHARED(ToNumber, Operator::kNoProperties, 1, 1, 1, 1, 1, 1, 2), 76 SHARED(ToNumber, Operator::kNoProperties, 1, 1, 1, 1, 1, 1, 2),
77 SHARED(ToString, Operator::kNoProperties, 1, 0, 1, 1, 1, 1, 2), 77 SHARED(ToString, Operator::kNoProperties, 1, 0, 1, 1, 1, 1, 2),
78 SHARED(ToName, Operator::kNoProperties, 1, 1, 1, 1, 1, 1, 2), 78 SHARED(ToName, Operator::kNoProperties, 1, 1, 1, 1, 1, 1, 2),
79 SHARED(ToObject, Operator::kNoProperties, 1, 1, 1, 1, 1, 1, 2), 79 SHARED(ToObject, Operator::kNoProperties, 1, 1, 1, 1, 1, 1, 2),
80 SHARED(Yield, Operator::kNoProperties, 1, 0, 1, 1, 1, 1, 2), 80 SHARED(Yield, Operator::kNoProperties, 1, 0, 1, 1, 1, 1, 2),
81 SHARED(Create, Operator::kEliminatable, 0, 0, 1, 0, 1, 1, 0), 81 SHARED(Create, Operator::kEliminatable, 0, 0, 1, 0, 1, 1, 0),
82 SHARED(HasProperty, Operator::kNoProperties, 2, 1, 1, 1, 1, 1, 2), 82 SHARED(HasProperty, Operator::kNoProperties, 2, 1, 1, 1, 1, 1, 2),
83 SHARED(TypeOf, Operator::kPure, 1, 0, 0, 0, 1, 0, 0), 83 SHARED(TypeOf, Operator::kEliminatable, 1, 0, 1, 0, 1, 1, 0),
84 SHARED(InstanceOf, Operator::kNoProperties, 2, 1, 1, 1, 1, 1, 2), 84 SHARED(InstanceOf, Operator::kNoProperties, 2, 1, 1, 1, 1, 1, 2),
85 SHARED(CreateFunctionContext, Operator::kNoProperties, 1, 0, 1, 1, 1, 1, 2), 85 SHARED(CreateFunctionContext, Operator::kNoProperties, 1, 0, 1, 1, 1, 1, 2),
86 SHARED(CreateWithContext, Operator::kNoProperties, 2, 1, 1, 1, 1, 1, 2), 86 SHARED(CreateWithContext, Operator::kNoProperties, 2, 1, 1, 1, 1, 1, 2),
87 SHARED(CreateBlockContext, Operator::kNoProperties, 2, 0, 1, 1, 1, 1, 2), 87 SHARED(CreateBlockContext, Operator::kNoProperties, 2, 0, 1, 1, 1, 1, 2),
88 SHARED(CreateModuleContext, Operator::kNoProperties, 2, 0, 1, 1, 1, 1, 2), 88 SHARED(CreateModuleContext, Operator::kNoProperties, 2, 0, 1, 1, 1, 1, 2),
89 SHARED(CreateScriptContext, Operator::kNoProperties, 2, 1, 1, 1, 1, 1, 2) 89 SHARED(CreateScriptContext, Operator::kNoProperties, 2, 1, 1, 1, 1, 1, 2)
90 #undef SHARED 90 #undef SHARED
91 }; 91 };
92 92
93 93
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
277 INSTANTIATE_TEST_CASE_P( 277 INSTANTIATE_TEST_CASE_P(
278 JSOperatorTest, JSSharedOperatorWithLanguageModeTest, 278 JSOperatorTest, JSSharedOperatorWithLanguageModeTest,
279 ::testing::Combine(::testing::ValuesIn(kLanguageModes), 279 ::testing::Combine(::testing::ValuesIn(kLanguageModes),
280 ::testing::ValuesIn(kSharedOperatorsWithLanguageMode))); 280 ::testing::ValuesIn(kSharedOperatorsWithLanguageMode)));
281 281
282 #endif // GTEST_HAS_COMBINE 282 #endif // GTEST_HAS_COMBINE
283 283
284 } // namespace compiler 284 } // namespace compiler
285 } // namespace internal 285 } // namespace internal
286 } // namespace v8 286 } // namespace v8
OLDNEW
« no previous file with comments | « test/unittests/compiler/js-intrinsic-lowering-unittest.cc ('k') | test/unittests/compiler/js-typed-lowering-unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698