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

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

Issue 2511223003: [turbofan] Properly optimize instanceof (even in the presence of @@hasInstance). (Closed)
Patch Set: Created 4 years, 1 month 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/operator-properties.h" 5 #include "src/compiler/operator-properties.h"
6 6
7 #include "src/compiler/js-operator.h" 7 #include "src/compiler/js-operator.h"
8 #include "src/compiler/linkage.h" 8 #include "src/compiler/linkage.h"
9 #include "src/compiler/opcodes.h" 9 #include "src/compiler/opcodes.h"
10 10
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 54
55 // Compare operations 55 // Compare operations
56 case IrOpcode::kJSEqual: 56 case IrOpcode::kJSEqual:
57 case IrOpcode::kJSNotEqual: 57 case IrOpcode::kJSNotEqual:
58 case IrOpcode::kJSGreaterThan: 58 case IrOpcode::kJSGreaterThan:
59 case IrOpcode::kJSGreaterThanOrEqual: 59 case IrOpcode::kJSGreaterThanOrEqual:
60 case IrOpcode::kJSLessThan: 60 case IrOpcode::kJSLessThan:
61 case IrOpcode::kJSLessThanOrEqual: 61 case IrOpcode::kJSLessThanOrEqual:
62 case IrOpcode::kJSHasProperty: 62 case IrOpcode::kJSHasProperty:
63 case IrOpcode::kJSInstanceOf: 63 case IrOpcode::kJSInstanceOf:
64 case IrOpcode::kJSOrdinaryHasInstance:
64 65
65 // Object operations 66 // Object operations
66 case IrOpcode::kJSCreate: 67 case IrOpcode::kJSCreate:
67 case IrOpcode::kJSCreateArguments: 68 case IrOpcode::kJSCreateArguments:
68 case IrOpcode::kJSCreateArray: 69 case IrOpcode::kJSCreateArray:
69 case IrOpcode::kJSCreateLiteralArray: 70 case IrOpcode::kJSCreateLiteralArray:
70 case IrOpcode::kJSCreateLiteralObject: 71 case IrOpcode::kJSCreateLiteralObject:
71 case IrOpcode::kJSCreateLiteralRegExp: 72 case IrOpcode::kJSCreateLiteralRegExp:
72 73
73 // Property access operations 74 // Property access operations
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 opcode == IrOpcode::kDead || opcode == IrOpcode::kLoop || 123 opcode == IrOpcode::kDead || opcode == IrOpcode::kLoop ||
123 opcode == IrOpcode::kMerge || opcode == IrOpcode::kIfTrue || 124 opcode == IrOpcode::kMerge || opcode == IrOpcode::kIfTrue ||
124 opcode == IrOpcode::kIfFalse || opcode == IrOpcode::kIfSuccess || 125 opcode == IrOpcode::kIfFalse || opcode == IrOpcode::kIfSuccess ||
125 opcode == IrOpcode::kIfException || opcode == IrOpcode::kIfValue || 126 opcode == IrOpcode::kIfException || opcode == IrOpcode::kIfValue ||
126 opcode == IrOpcode::kIfDefault; 127 opcode == IrOpcode::kIfDefault;
127 } 128 }
128 129
129 } // namespace compiler 130 } // namespace compiler
130 } // namespace internal 131 } // namespace internal
131 } // namespace v8 132 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698