OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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 #ifndef V8_COMPILER_JS_OPERATOR_H_ | 5 #ifndef V8_COMPILER_JS_OPERATOR_H_ |
6 #define V8_COMPILER_JS_OPERATOR_H_ | 6 #define V8_COMPILER_JS_OPERATOR_H_ |
7 | 7 |
8 #include "src/runtime/runtime.h" | 8 #include "src/runtime/runtime.h" |
9 #include "src/unique.h" | 9 #include "src/unique.h" |
10 | 10 |
(...skipping 153 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
164 | 164 |
165 std::ostream& operator<<(std::ostream&, LoadPropertyParameters const&); | 165 std::ostream& operator<<(std::ostream&, LoadPropertyParameters const&); |
166 | 166 |
167 const LoadPropertyParameters& LoadPropertyParametersOf(const Operator* op); | 167 const LoadPropertyParameters& LoadPropertyParametersOf(const Operator* op); |
168 | 168 |
169 | 169 |
170 // Defines the property being stored to an object by a named store. This is | 170 // Defines the property being stored to an object by a named store. This is |
171 // used as a parameter by JSStoreNamed operators. | 171 // used as a parameter by JSStoreNamed operators. |
172 class StoreNamedParameters FINAL { | 172 class StoreNamedParameters FINAL { |
173 public: | 173 public: |
174 StoreNamedParameters(StrictMode strict_mode, const Unique<Name>& name) | 174 StoreNamedParameters(LanguageMode language_mode, const Unique<Name>& name) |
175 : strict_mode_(strict_mode), name_(name) {} | 175 : language_mode_(language_mode), name_(name) {} |
176 | 176 |
177 StrictMode strict_mode() const { return strict_mode_; } | 177 LanguageMode language_mode() const { return language_mode_; } |
178 const Unique<Name>& name() const { return name_; } | 178 const Unique<Name>& name() const { return name_; } |
179 | 179 |
180 private: | 180 private: |
181 const StrictMode strict_mode_; | 181 const LanguageMode language_mode_; |
182 const Unique<Name> name_; | 182 const Unique<Name> name_; |
183 }; | 183 }; |
184 | 184 |
185 bool operator==(StoreNamedParameters const&, StoreNamedParameters const&); | 185 bool operator==(StoreNamedParameters const&, StoreNamedParameters const&); |
186 bool operator!=(StoreNamedParameters const&, StoreNamedParameters const&); | 186 bool operator!=(StoreNamedParameters const&, StoreNamedParameters const&); |
187 | 187 |
188 size_t hash_value(StoreNamedParameters const&); | 188 size_t hash_value(StoreNamedParameters const&); |
189 | 189 |
190 std::ostream& operator<<(std::ostream&, StoreNamedParameters const&); | 190 std::ostream& operator<<(std::ostream&, StoreNamedParameters const&); |
191 | 191 |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
232 const Operator* CallFunction(size_t arity, CallFunctionFlags flags); | 232 const Operator* CallFunction(size_t arity, CallFunctionFlags flags); |
233 const Operator* CallRuntime(Runtime::FunctionId id, size_t arity); | 233 const Operator* CallRuntime(Runtime::FunctionId id, size_t arity); |
234 | 234 |
235 const Operator* CallConstruct(int arguments); | 235 const Operator* CallConstruct(int arguments); |
236 | 236 |
237 const Operator* LoadProperty(const VectorSlotPair& feedback); | 237 const Operator* LoadProperty(const VectorSlotPair& feedback); |
238 const Operator* LoadNamed(const Unique<Name>& name, | 238 const Operator* LoadNamed(const Unique<Name>& name, |
239 const VectorSlotPair& feedback, | 239 const VectorSlotPair& feedback, |
240 ContextualMode contextual_mode = NOT_CONTEXTUAL); | 240 ContextualMode contextual_mode = NOT_CONTEXTUAL); |
241 | 241 |
242 const Operator* StoreProperty(StrictMode strict_mode); | 242 const Operator* StoreProperty(LanguageMode language_mode); |
243 const Operator* StoreNamed(StrictMode strict_mode, const Unique<Name>& name); | 243 const Operator* StoreNamed(LanguageMode language_mode, |
| 244 const Unique<Name>& name); |
244 | 245 |
245 const Operator* DeleteProperty(StrictMode strict_mode); | 246 const Operator* DeleteProperty(LanguageMode language_mode); |
246 | 247 |
247 const Operator* HasProperty(); | 248 const Operator* HasProperty(); |
248 | 249 |
249 const Operator* LoadContext(size_t depth, size_t index, bool immutable); | 250 const Operator* LoadContext(size_t depth, size_t index, bool immutable); |
250 const Operator* StoreContext(size_t depth, size_t index); | 251 const Operator* StoreContext(size_t depth, size_t index); |
251 | 252 |
252 const Operator* TypeOf(); | 253 const Operator* TypeOf(); |
253 const Operator* InstanceOf(); | 254 const Operator* InstanceOf(); |
254 const Operator* Debugger(); | 255 const Operator* Debugger(); |
255 | 256 |
(...skipping 12 matching lines...) Expand all Loading... |
268 Zone* const zone_; | 269 Zone* const zone_; |
269 | 270 |
270 DISALLOW_COPY_AND_ASSIGN(JSOperatorBuilder); | 271 DISALLOW_COPY_AND_ASSIGN(JSOperatorBuilder); |
271 }; | 272 }; |
272 | 273 |
273 } // namespace compiler | 274 } // namespace compiler |
274 } // namespace internal | 275 } // namespace internal |
275 } // namespace v8 | 276 } // namespace v8 |
276 | 277 |
277 #endif // V8_COMPILER_JS_OPERATOR_H_ | 278 #endif // V8_COMPILER_JS_OPERATOR_H_ |
OLD | NEW |