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

Side by Side Diff: src/compiler/verifier.cc

Issue 2547043002: [Interpreter] Optimize equality check with null/undefined with a check on the map. (Closed)
Patch Set: Fixed a bug in reducing JSIsUndetectable. Created 4 years 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/verifier.h" 5 #include "src/compiler/verifier.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <deque> 8 #include <deque>
9 #include <queue> 9 #include <queue>
10 #include <sstream> 10 #include <sstream>
(...skipping 488 matching lines...) Expand 10 before | Expand all | Expand 10 after
499 // JavaScript operators 499 // JavaScript operators
500 // -------------------- 500 // --------------------
501 case IrOpcode::kJSEqual: 501 case IrOpcode::kJSEqual:
502 case IrOpcode::kJSNotEqual: 502 case IrOpcode::kJSNotEqual:
503 case IrOpcode::kJSStrictEqual: 503 case IrOpcode::kJSStrictEqual:
504 case IrOpcode::kJSStrictNotEqual: 504 case IrOpcode::kJSStrictNotEqual:
505 case IrOpcode::kJSLessThan: 505 case IrOpcode::kJSLessThan:
506 case IrOpcode::kJSGreaterThan: 506 case IrOpcode::kJSGreaterThan:
507 case IrOpcode::kJSLessThanOrEqual: 507 case IrOpcode::kJSLessThanOrEqual:
508 case IrOpcode::kJSGreaterThanOrEqual: 508 case IrOpcode::kJSGreaterThanOrEqual:
509 case IrOpcode::kJSIsUndetectable:
509 // Type is Boolean. 510 // Type is Boolean.
510 CheckTypeIs(node, Type::Boolean()); 511 CheckTypeIs(node, Type::Boolean());
511 break; 512 break;
512 513
513 case IrOpcode::kJSBitwiseOr: 514 case IrOpcode::kJSBitwiseOr:
514 case IrOpcode::kJSBitwiseXor: 515 case IrOpcode::kJSBitwiseXor:
515 case IrOpcode::kJSBitwiseAnd: 516 case IrOpcode::kJSBitwiseAnd:
516 case IrOpcode::kJSShiftLeft: 517 case IrOpcode::kJSShiftLeft:
517 case IrOpcode::kJSShiftRight: 518 case IrOpcode::kJSShiftRight:
518 case IrOpcode::kJSShiftRightLogical: 519 case IrOpcode::kJSShiftRightLogical:
(...skipping 1133 matching lines...) Expand 10 before | Expand all | Expand 10 after
1652 replacement->op()->EffectOutputCount() > 0); 1653 replacement->op()->EffectOutputCount() > 0);
1653 DCHECK(!NodeProperties::IsFrameStateEdge(edge) || 1654 DCHECK(!NodeProperties::IsFrameStateEdge(edge) ||
1654 replacement->opcode() == IrOpcode::kFrameState); 1655 replacement->opcode() == IrOpcode::kFrameState);
1655 } 1656 }
1656 1657
1657 #endif // DEBUG 1658 #endif // DEBUG
1658 1659
1659 } // namespace compiler 1660 } // namespace compiler
1660 } // namespace internal 1661 } // namespace internal
1661 } // namespace v8 1662 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698