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

Side by Side Diff: src/objects.h

Issue 477263002: ES6: Add support for method shorthand in object literals (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 4 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 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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_OBJECTS_H_ 5 #ifndef V8_OBJECTS_H_
6 #define V8_OBJECTS_H_ 6 #define V8_OBJECTS_H_
7 7
8 #include "src/allocation.h" 8 #include "src/allocation.h"
9 #include "src/assert-scope.h" 9 #include "src/assert-scope.h"
10 #include "src/builtins.h" 10 #include "src/builtins.h"
(...skipping 7182 matching lines...) Expand 10 before | Expand all | Expand 10 after
7193 7193
7194 // Indicates that code for this function cannot be flushed. 7194 // Indicates that code for this function cannot be flushed.
7195 DECL_BOOLEAN_ACCESSORS(dont_flush) 7195 DECL_BOOLEAN_ACCESSORS(dont_flush)
7196 7196
7197 // Indicates that this function is a generator. 7197 // Indicates that this function is a generator.
7198 DECL_BOOLEAN_ACCESSORS(is_generator) 7198 DECL_BOOLEAN_ACCESSORS(is_generator)
7199 7199
7200 // Indicates that this function is an arrow function. 7200 // Indicates that this function is an arrow function.
7201 DECL_BOOLEAN_ACCESSORS(is_arrow) 7201 DECL_BOOLEAN_ACCESSORS(is_arrow)
7202 7202
7203 // Indicates that this function is a concise method.
7204 DECL_BOOLEAN_ACCESSORS(is_concise_method)
7205
7206 FunctionKind kind() const {
7207 // TODO(arv): Update to handle concise generator methods.
7208 if (is_arrow()) return FunctionKind::kArrowFunction;
7209 if (is_generator()) return FunctionKind::kGeneratorFunction;
7210 if (is_concise_method()) return FunctionKind::kConciseMethod;
7211 return FunctionKind::kNormalFunction;
7212 }
7213
7203 // Indicates whether or not the code in the shared function support 7214 // Indicates whether or not the code in the shared function support
7204 // deoptimization. 7215 // deoptimization.
7205 inline bool has_deoptimization_support(); 7216 inline bool has_deoptimization_support();
7206 7217
7207 // Enable deoptimization support through recompiled code. 7218 // Enable deoptimization support through recompiled code.
7208 void EnableDeoptimizationSupport(Code* recompiled); 7219 void EnableDeoptimizationSupport(Code* recompiled);
7209 7220
7210 // Disable (further) attempted optimization of all functions sharing this 7221 // Disable (further) attempted optimization of all functions sharing this
7211 // shared function info. 7222 // shared function info.
7212 void DisableOptimization(BailoutReason reason); 7223 void DisableOptimization(BailoutReason reason);
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after
7389 kNative, 7400 kNative,
7390 kInlineBuiltin, 7401 kInlineBuiltin,
7391 kBoundFunction, 7402 kBoundFunction,
7392 kIsAnonymous, 7403 kIsAnonymous,
7393 kNameShouldPrintAsAnonymous, 7404 kNameShouldPrintAsAnonymous,
7394 kIsFunction, 7405 kIsFunction,
7395 kDontCache, 7406 kDontCache,
7396 kDontFlush, 7407 kDontFlush,
7397 kIsGenerator, 7408 kIsGenerator,
7398 kIsArrow, 7409 kIsArrow,
7410 kIsConciseMethod,
7399 kCompilerHintsCount // Pseudo entry 7411 kCompilerHintsCount // Pseudo entry
7400 }; 7412 };
7401 7413
7402 class DeoptCountBits: public BitField<int, 0, 4> {}; 7414 class DeoptCountBits: public BitField<int, 0, 4> {};
7403 class OptReenableTriesBits: public BitField<int, 4, 18> {}; 7415 class OptReenableTriesBits: public BitField<int, 4, 18> {};
7404 class ICAgeBits: public BitField<int, 22, 8> {}; 7416 class ICAgeBits: public BitField<int, 22, 8> {};
7405 7417
7406 class OptCountBits: public BitField<int, 0, 22> {}; 7418 class OptCountBits: public BitField<int, 0, 22> {};
7407 class DisabledOptimizationReasonBits: public BitField<int, 22, 8> {}; 7419 class DisabledOptimizationReasonBits: public BitField<int, 22, 8> {};
7408 7420
(...skipping 3781 matching lines...) Expand 10 before | Expand all | Expand 10 after
11190 } else { 11202 } else {
11191 value &= ~(1 << bit_position); 11203 value &= ~(1 << bit_position);
11192 } 11204 }
11193 return value; 11205 return value;
11194 } 11206 }
11195 }; 11207 };
11196 11208
11197 } } // namespace v8::internal 11209 } } // namespace v8::internal
11198 11210
11199 #endif // V8_OBJECTS_H_ 11211 #endif // V8_OBJECTS_H_
OLDNEW
« src/ast.h ('K') | « src/mips64/lithium-codegen-mips64.cc ('k') | src/objects-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698