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

Side by Side Diff: src/compiler/js-operator.cc

Issue 653093002: Test monotonicity of expression typings. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 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 | Annotate | Revision Log
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 6
7 #include <limits> 7 #include <limits>
8 8
9 #include "src/base/lazy-instance.h" 9 #include "src/base/lazy-instance.h"
10 #include "src/compiler/opcodes.h" 10 #include "src/compiler/opcodes.h"
(...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after
202 } 202 }
203 203
204 204
205 const StoreNamedParameters& StoreNamedParametersOf(const Operator* op) { 205 const StoreNamedParameters& StoreNamedParametersOf(const Operator* op) {
206 DCHECK_EQ(IrOpcode::kJSStoreNamed, op->opcode()); 206 DCHECK_EQ(IrOpcode::kJSStoreNamed, op->opcode());
207 return OpParameter<StoreNamedParameters>(op); 207 return OpParameter<StoreNamedParameters>(op);
208 } 208 }
209 209
210 210
211 #define SHARED_OP_LIST(V) \ 211 #define SHARED_OP_LIST(V) \
212 V(Equal, Operator::kNoProperties, 2, 1) \ 212 SHARED_SIMPLE_BINOP_LIST(V) \
213 V(NotEqual, Operator::kNoProperties, 2, 1) \
214 V(StrictEqual, Operator::kPure, 2, 1) \
215 V(StrictNotEqual, Operator::kPure, 2, 1) \
216 V(LessThan, Operator::kNoProperties, 2, 1) \
217 V(GreaterThan, Operator::kNoProperties, 2, 1) \
218 V(LessThanOrEqual, Operator::kNoProperties, 2, 1) \
219 V(GreaterThanOrEqual, Operator::kNoProperties, 2, 1) \
220 V(BitwiseOr, Operator::kNoProperties, 2, 1) \
221 V(BitwiseXor, Operator::kNoProperties, 2, 1) \
222 V(BitwiseAnd, Operator::kNoProperties, 2, 1) \
223 V(ShiftLeft, Operator::kNoProperties, 2, 1) \
224 V(ShiftRight, Operator::kNoProperties, 2, 1) \
225 V(ShiftRightLogical, Operator::kNoProperties, 2, 1) \
226 V(Add, Operator::kNoProperties, 2, 1) \
227 V(Subtract, Operator::kNoProperties, 2, 1) \
228 V(Multiply, Operator::kNoProperties, 2, 1) \
229 V(Divide, Operator::kNoProperties, 2, 1) \
230 V(Modulus, Operator::kNoProperties, 2, 1) \
231 V(UnaryNot, Operator::kNoProperties, 1, 1) \ 213 V(UnaryNot, Operator::kNoProperties, 1, 1) \
232 V(ToBoolean, Operator::kNoProperties, 1, 1) \ 214 V(ToBoolean, Operator::kNoProperties, 1, 1) \
233 V(ToNumber, Operator::kNoProperties, 1, 1) \ 215 V(ToNumber, Operator::kNoProperties, 1, 1) \
234 V(ToString, Operator::kNoProperties, 1, 1) \ 216 V(ToString, Operator::kNoProperties, 1, 1) \
235 V(ToName, Operator::kNoProperties, 1, 1) \ 217 V(ToName, Operator::kNoProperties, 1, 1) \
236 V(ToObject, Operator::kNoProperties, 1, 1) \ 218 V(ToObject, Operator::kNoProperties, 1, 1) \
237 V(Yield, Operator::kNoProperties, 1, 1) \ 219 V(Yield, Operator::kNoProperties, 1, 1) \
238 V(Create, Operator::kEliminatable, 0, 1) \ 220 V(Create, Operator::kEliminatable, 0, 1) \
239 V(HasProperty, Operator::kNoProperties, 2, 1) \ 221 V(HasProperty, Operator::kNoProperties, 2, 1) \
240 V(TypeOf, Operator::kPure, 1, 1) \ 222 V(TypeOf, Operator::kPure, 1, 1) \
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
364 const Operator* JSOperatorBuilder::CreateCatchContext( 346 const Operator* JSOperatorBuilder::CreateCatchContext(
365 const Unique<String>& name) { 347 const Unique<String>& name) {
366 return new (zone()) Operator1<Unique<String>>(IrOpcode::kJSCreateCatchContext, 348 return new (zone()) Operator1<Unique<String>>(IrOpcode::kJSCreateCatchContext,
367 Operator::kNoProperties, 1, 1, 349 Operator::kNoProperties, 1, 1,
368 "JSCreateCatchContext", name); 350 "JSCreateCatchContext", name);
369 } 351 }
370 352
371 } // namespace compiler 353 } // namespace compiler
372 } // namespace internal 354 } // namespace internal
373 } // namespace v8 355 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698