- 20 Sep, 2019 1 commit
-
-
Joshua Litt authored
doc: https://docs.google.com/document/d/1Y9uF3hS2aUrwKU56vGxlvEs_IiGgmWSzau8097Y-XBM/edit Bug: v8:7427 Change-Id: Iedd36c146cefff7e6687fdad48d263889c5c8347 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1778902 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#63913}
-
- 11 Sep, 2019 1 commit
-
-
Joyee Cheung authored
This patch uses a bit in the Variable bit fields to distinguish static private names from instance private names, so that we can check the conflicts of private accessors that are complementary but with different staticness in the parser, and use this information later when generating code for checking static brands for private method access. Design doc: https://docs.google.com/document/d/1rgGRw5RdzaRrM-GrIMhsn-DLULtADV2dmIdh_iIZxlc/edit Bug: v8:8330 Change-Id: I8d70600e594e3d07f77ea519751b7ca2e0de87b5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1781010Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Joyee Cheung <joyee@igalia.com> Cr-Commit-Position: refs/heads/master@{#63677}
-
- 06 Sep, 2019 1 commit
-
-
Shu-yu Guo authored
Expressions in class heritage position do not have access to the inheriting class's private names, only its lexical bindings. The parser currently uses the same scope chain for both. This CL makes scopes in class heritage position skip their outer class when resolving private names. Whether a scope needs to skip is kept as a bit on various scope-related data structures. See implementation doc at https://docs.google.com/document/d/1d3o_SQqcICxfjLMw53OOaiIQux0ppNHQJnjZHtCQLwA Bug: v8:9177 Change-Id: I77e491a9d4a261131274f12ddf052af7ac31a921 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1769486 Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Mathias Bynens <mathias@chromium.org> Cr-Commit-Position: refs/heads/master@{#63586}
-
- 29 Aug, 2019 2 commits
-
-
Seth Brenith authored
This patch is mostly mechanical. A few changes in implementation-visitor.cc might be worth mentioning: - Don't generate both field offset macros and class definitions for the same class. This was mostly just to keep me from forgetting to remove the DEFINE_FIELD_OFFSET_CONSTANTS part when converting classes, but also helpfully flagged that FixedArrayBase wasn't using the generated class that it requested. - Generate forward declarations for all tq-defined classes in internal-class-definitions-tq.h. This is helpful for making things compile when classes have fields of other class types. - When generating accessors for union types, use the nearest class type that contains the entire union rather than plain Object. This is important for compile-time type safety. It also required a few minor fixes elsewhere (isolate.cc, modules.cc, scope-info.cc, source-text-module.cc, and a correction of the field types in CallHandlerInfo to match how they're set in api.cc). Change-Id: I3b9280e30779ce57fb9f3629eecfec898e26d708 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1774976Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#63458}
-
Leszek Swirski authored
Sloppy eval extends the outer declaration scope's context. This is also true for sloppy eval inside of other sloppy evals -- the outer declaration scope's context is extended rather than the outer sloppy eval's declaration scope. However, we consider eval scopes to also be declaration scopes, for the purposes of strict eval and caching lookup variables. So, we need to make sure that we skip through sloppy eval scopes when marking a scope as calls_sloppy_eval. In fact, we implement this rather as never marking sloppy eval scopes as calls_sloppy_eval, under the assumption that the parent scope will already have been marked calls_sloppy_eval by the outer eval. As a drive-by, fix a TODO to move this logic from calls_sloppy_eval() to RecordEvalCall(), rename the variable to something more meaningful, and make Snapshotting to use a new calls_eval bit on Scope. Bug: chromium:996751 Change-Id: I27ccc7ef429a7ce60b3bb02bf64a3820ae4a2c36 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1773247 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#63455}
-
- 12 Aug, 2019 1 commit
-
-
Ross McIlroy authored
Create canonical ScopeInfos for the global this binding and empty function in the read only space, rather than creating them during bootstrapping for each native context. This saves some memory, and also means we don't need to access the native context to get the global this binding in when deserializing a scope info, which is important since parsing should be native context independent. BUG=chromium:992063 Change-Id: I800f576e8e9b95d46e043cba0c1a03ae19a683c7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1748690 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#63174}
-
- 07 Aug, 2019 1 commit
-
-
Joyee Cheung authored
Currently, the private name symbols are displayed in the block scopes in DevTools, though these are just implementation details of private fields. This patch hides them from the block scope by marking variables with names starting with `#` as synthetic. The private fields are still going to show up in the previews of objects, only the key symbols themselves are going to be hidden. Bug: v8:8773, chromium:982267 Change-Id: I059472d05c26a1f035ab92718a1b7e5ecafa8dc4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1741846Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Joyee Cheung <joyee@igalia.com> Cr-Commit-Position: refs/heads/master@{#63112}
-
- 30 Jul, 2019 1 commit
-
-
Joyee Cheung authored
This patch adds: - VariableMode::kPrivateMethod - VariableMode::kPrivateSetterOnly - VariableMode::kPrivateGetterOnly - VariableMode::kPrivateGetterAndSetter And replace the previous RequiresBrandCheckFlag by inferring whether the brand check is required from these VariableModes. It is then possible to check duplicate non-complementary accessors in the parsers and throw early errors, and allow complementary accessors to be associated with the same private name variable. This patch also adds the following AssignType: - PRIVATE_METHOD - PRIVATE_GETTER_ONLY - PRIVATE_SETTER_ONLY - PRIVATE_GETTER_AND_SETTER corresponding to the new VariableModes so that it's possible to generate specialized code for different type of private accessor declarations. Design doc: https://docs.google.com/document/d/10W4begYfs7lmldSqBoQBBt_BKamgT8igqxF9u50RGrI/edit Bug: v8:8330 Change-Id: I0fb61b1be248630d1eadd74fb16d7d64a421f4c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1695204 Commit-Queue: Joyee Cheung <joyee@igalia.com> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#62988}
-
- 19 Jun, 2019 1 commit
-
-
Daniel Clark authored
Introduce SourceTextModule as a subclass of Module. Move all the JavaScript-module-specific code down from Module to SourceTextModule, with all code applicable to other future module types remaining in Module. With this change, Module is roughly equivalent to the spec's Abstract Module Record and SourceTextModule is roughly equivalent to Source Text Module Record. Bug: v8:9292 Change-Id: I6e9cd3ece9d0c1da57e52f8af8ed5848d87dd22d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1633154 Commit-Queue: Dan Clark <daniec@microsoft.com> Reviewed-by:
Adam Klein <adamk@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#62296}
-
- 18 Jun, 2019 1 commit
-
-
Joyee Cheung authored
This patch adds a new assign type `PRIVATE_METHOD`. We now use this for private method references in the form `obj.#key` when `#key` resolves to a private method. To obtain the type of the key variables after scope analysis, this patch add a bit to Variable to recognize private method variables whose load requires a brand check. Also renamed `PropertyExpressionWithPrivateFieldKey` in ExpressionType to `PrivateReference` and added `PRIVATE_CALL` to `CallType` - we'll use the new types later when we implement private methods, which require special brand checking semantics to load methods directly from the context instead of from the object in order to save memory. Bug: v8:8330 Change-Id: Idc1dcd4d514c1b3f8a31c99e49e34249449f0677 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1642772 Commit-Queue: Joyee Cheung <joyee@igalia.com> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#62255}
-
- 23 May, 2019 2 commits
-
-
Yang Guo authored
TBR=bmeurer@chromium.org,leszeks@chromium.org Bug: v8:9247 Change-Id: I8d14d0192ea8c705f8274e8e61a162531826edb6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624220Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#61769}
-
Clemens Hammacher authored
This CL was generated by an automatic clang AST rewriter using this matcher expression: callExpr( callee( cxxMethodDecl( hasName("operator->"), ofClass(isSameOrDerivedFrom("v8::internal::Object")) ) ), argumentCountIs(1) ) The "->" at the expression location was then rewritten to ".". R=jkummerow@chromium.org TBR=mstarzinger@chromium.org,verwaest@chromium.org,yangguo@chromium.org Bug: v8:9183, v8:3770 No-Try: true No-Tree-Checks: true Change-Id: I0a7ecabdeafe51d0cf427f5280af0c7cab96869e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624209Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61764}
-
- 16 May, 2019 1 commit
-
-
Yang Guo authored
R=jkummerow@chromium.org, neis@chromium.org, rmcilroy@chromium.org, ulan@chromium.org Bug: v8:9247 Change-Id: If55cdec37c031df5ae101fdf93082f32ca5beade Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1613992Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61573}
-
- 13 May, 2019 1 commit
-
-
Joyee Cheung authored
Added null check when printing the brand with --print-ast. Bug: chromium:961507, chromium:961508 Original change's description: > [class] implement private method declarations > > This patch implements the declarations of private methods, the access > of private methods would be left to a future patch. > When a private methods declaration is encountered, we now: > > - Create a brand symbol during class evaluation and store it in the > context. > - Create the closures for the private methods > - Load the brand from the context and store it in the instance in the > constructor. > > Design: https://docs.google.com/document/d/1T-Ql6HOIH2U_8YjWkwK2rTfywwb7b3Qe8d3jkz72KwA/edit# > > Bug: v8:8330 > Change-Id: I2d695cbdc8a7367ddc7620d627b318f779d36150 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1568708 > Commit-Queue: Joyee Cheung <joyee@igalia.com> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61387} Change-Id: I3bf465f70c27914c9ec19f3f59ae018b28c9a866 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1605521 Commit-Queue: Joyee Cheung <joyee@igalia.com> Reviewed-by:
Adam Klein <adamk@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#61459}
-
- 10 May, 2019 1 commit
-
-
Ross McIlroy authored
This reverts commit b9191bd3. Reason for revert: Clusterfuzz bugs BUG=chromium:961507,chromium:961508 Original change's description: > [class] implement private method declarations > > This patch implements the declarations of private methods, the access > of private methods would be left to a future patch. > When a private methods declaration is encountered, we now: > > - Create a brand symbol during class evaluation and store it in the > context. > - Create the closures for the private methods > - Load the brand from the context and store it in the instance in the > constructor. > > Design: https://docs.google.com/document/d/1T-Ql6HOIH2U_8YjWkwK2rTfywwb7b3Qe8d3jkz72KwA/edit# > > Bug: v8:8330 > Change-Id: I2d695cbdc8a7367ddc7620d627b318f779d36150 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1568708 > Commit-Queue: Joyee Cheung <joyee@igalia.com> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61387} TBR=rmcilroy@chromium.org,gsathya@chromium.org,verwaest@chromium.org,joyee@igalia.com Change-Id: I429bbe8af9f94598de132814aa2c3ab9fa69b986 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8330 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1605730 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#61406}
-
- 09 May, 2019 1 commit
-
-
Joyee Cheung authored
This patch implements the declarations of private methods, the access of private methods would be left to a future patch. When a private methods declaration is encountered, we now: - Create a brand symbol during class evaluation and store it in the context. - Create the closures for the private methods - Load the brand from the context and store it in the instance in the constructor. Design: https://docs.google.com/document/d/1T-Ql6HOIH2U_8YjWkwK2rTfywwb7b3Qe8d3jkz72KwA/edit# Bug: v8:8330 Change-Id: I2d695cbdc8a7367ddc7620d627b318f779d36150 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1568708 Commit-Queue: Joyee Cheung <joyee@igalia.com> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#61387}
-
- 09 Apr, 2019 1 commit
-
-
Joyee Cheung authored
- Add a new ClassScope for block scopes created for classes. - Add a VariableMap in the class scope for private name resolution, and a separate UnresolvedList for private names that will be resolved only using ClassScopes. These are stored in RareData and will only be allocated when there are private name declaration or access in the class. Design: https://docs.google.com/document/d/1l-D70uaHzXU8QVgQZ3ACikb3FLO6LTAfQVdGDXsh5mw/edit?usp=sharing TBR: hpayer@chromium.org Bug: v8:8330 Bug: v8:7468 Change-Id: I78191fc075f7f195f6c56c959773c382346cce8a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1488271 Commit-Queue: Joyee Cheung <joyee@igalia.com> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#60726}
-
- 12 Mar, 2019 1 commit
-
-
Hannes Payer authored
Bug: v8:8945 Change-Id: I14ca4b29f1b12ff95e718d431f65d88ab1238c53 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1511478Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#60177}
-
- 06 Feb, 2019 1 commit
-
-
Toon Verwaest authored
"this" is a very common expression. By using a single ThisExpression object we can both avoid allocating many unnecessary VariableProxies and specialize the resolution of this since we know where it's declared up-front. This also avoids having to special-case "this" reference handling in the paths that would behave differently for "this" than for regular references; e.g., with-scopes. The tricky pieces are due to DebugEvaluate and this/super() used as default parameters of arrow functions. In the former case we replace the WITH_SCOPE with FUNCTION_SCOPE so that we make sure that "this" is intercepted, and still rely on regular dynamic variable lookup. Arrow functions are dealt with by marking "this" use in ArrowHeadParsingScopes. If the parenthesized expression ends up being an arrow function, we force context allocate on the outer scope (and mark "has_this_reference" on the FUNCTION_SCOPE so DebugEvaluate in the arrow function can expose "this"). The CL also removes the now unused ThisFunction AST node. Change-Id: I0ca38ab92ff58c2f731e07db2fbe91df901681ef Reviewed-on: https://chromium-review.googlesource.com/c/1448313Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#59393}
-
- 31 Jan, 2019 1 commit
-
-
Camillo Bruni authored
Drive-by-fix: - Inline Scope::num_parameters - Provide inlineable DataGatheringScope destructor precheck Change-Id: I337a79e0d5cf0f26c526e2ac53de8aa632d86c53 Reviewed-on: https://chromium-review.googlesource.com/c/1445879 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#59253}
-
- 30 Jan, 2019 1 commit
-
-
Camillo Bruni authored
We can directly skip the write barrier in the case we set only a Smi. Change-Id: Ic2f4f13f9edb851a18878bec14981a2ad7687433 Reviewed-on: https://chromium-review.googlesource.com/c/1444957Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#59197}
-
- 28 Jan, 2019 2 commits
-
-
Camillo Bruni authored
- Dehandlify ScopeInfo::ContextSlotIndex - Dehandlify ScriptContextTable::Lookup - Introduce function-kind.h with range-based helper methods - Spread usage of Scope::is_script_scope and friends Change-Id: I8ed1d82cc5bb9ea3fce856e16e9eafe194fb57ba Reviewed-on: https://chromium-review.googlesource.com/c/1430100Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#59120}
-
Camillo Bruni authored
Change-Id: Ia082e676e2cabab07c99b424f80b91e9459f1d3d Reviewed-on: https://chromium-review.googlesource.com/c/1430070Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#59112}
-
- 26 Dec, 2018 1 commit
-
-
Jakob Kummerow authored
Tbr: ahaas@chromium.org,leszeks@chromium.org,verwaest@chromium.org Bug: v8:3770 Change-Id: Ia6530fbb70dac05e9972283781c3550d8b50e1eb Reviewed-on: https://chromium-review.googlesource.com/c/1390116 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Alexei Filippov <alph@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#58470}
-
- 17 Dec, 2018 1 commit
-
-
Camillo Bruni authored
Parser::MaybeResetCharacterStream calls Scope::ContainsAsmModule which recursively checks whether a Scope is an asm module or any of its sub-scopes. This is sub-optimal for deeply nested scopes and many functions which do not contain any asm modules. Drive-by-fix: - rename Scope::asm_module to Scope::is_asm_module Change-Id: I922270c608b54c6525f0672ead4aca90f57a6551 Reviewed-on: https://chromium-review.googlesource.com/c/1360636Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#58288}
-
- 12 Dec, 2018 1 commit
-
-
Mythri authored
Currently, the runtime IC functions deduce the IC kind and the language mode from the feedback slot kind. To support feedback free execution (for V8 lite mode and lazy allocation of feedback vectors) we need to infer the IC kind even when feedback vectors are not present. To be able to infer the language mode without feedback vectors, this cl forces context allocation in cases where we raise the language mode in the middle of a function. The language mode is the stricter of the language mode on the SFI and the language mode of the current context. This cl updates the bytecode handlers to check for valid feedback vectors and to call into runtime if the feedback vector is not allocated. It also adds new runtime functions to be able to infer the IC kind when there is no feedback vector. Most of the builtins and handlers remain unchanged because they are only used when feedback vector is present. Bug: v8:8394 Change-Id: I1f77740c0d68ddaa0de076597f5f6bcb2e966d70 Reviewed-on: https://chromium-review.googlesource.com/c/1358516 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#58191}
-
- 27 Nov, 2018 1 commit
-
-
Jakob Kummerow authored
Bug: v8:3770 Change-Id: I4da6404aa968adca1fbb49029fc304622101d6c3 Reviewed-on: https://chromium-review.googlesource.com/c/1349112 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#57853}
-
- 26 Nov, 2018 1 commit
-
-
Marja Hölttä authored
- Remove heap-inl.h includes from places where it looked unnecessary. (This is a non-scientific approach, because it's probably pulled in indirectly anyway.) - Annotate places which include heap-inl.h because they need heap/ internals. - ACCESSORS legitimately needs heap-inl.h because of Heap::FromWritableHeapObject. - Add includes to heap/heap-write-barrier(-inl).h - A bunch of IWYU fixes discovered when working on this CL (includes which were missing because heap-inl.h pulls them in indirectly). BUG=v8:7490,v8:8238,v8:8499 Change-Id: I00f9a74d430f13d7c080dca77a92b03bcca7ef96 Reviewed-on: https://chromium-review.googlesource.com/c/1349241Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#57814}
-
- 25 Nov, 2018 1 commit
-
-
Jakob Kummerow authored
Removing the temporarily duplicated classes FixedArrayPtr and FixedArrayBasePtr. Bug: v8:3770 Change-Id: I056ad74ff69593e9f134ef5c976766812c4d9275 Reviewed-on: https://chromium-review.googlesource.com/c/1345913 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#57807}
-
- 24 Nov, 2018 1 commit
-
-
Jakob Kummerow authored
Bug: v8:3770 Change-Id: I06f7fb1b2915d1c87162cb464d0ed34d08516e24 Reviewed-on: https://chromium-review.googlesource.com/c/1345909 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#57800}
-
- 15 Nov, 2018 1 commit
-
-
Toon Verwaest authored
Now that we always cache lookups through scope-info-backed scopes on the entry-point scope-info-backed scope, we don't need additional caching per scope-info. The one missing piece was negative lookups, but they automatically turn into DynamicGlobals which we also cache on the entry scope. The one possible difference is that we don't cache across compilation, but seems unlikely to be very beneficial. We'll keep an eye out for regressions though. Change-Id: I23186d2b085d2042fafa32fb3cca88f88c61074c Reviewed-on: https://chromium-review.googlesource.com/c/1337731 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#57544}
-
- 17 Sep, 2018 1 commit
-
-
Georg Neis authored
... as well as ScopeInfo::ContextLength. Bug: v8:7790 Change-Id: I3ca8b6f252d96b21d0990f8fc08e076eeeea4176 Reviewed-on: https://chromium-review.googlesource.com/1226973 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#55939}
-
- 03 Jul, 2018 2 commits
-
-
Dan Elphick authored
In future the RO_SPACE root accessors in Heap will become private, so instead convert them all to use ReadOnlyRoots. Bug: v8:7786 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Ia24803003f1e6ce0782dffe448c662695620f026 Reviewed-on: https://chromium-review.googlesource.com/1124326 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54182}
-
Dan Elphick authored
Adds a ReadOnlyRoots class trivially constructable from a Heap* or Isolate* and which can be obtained from a any HeapObject which provides access to roots objects that will always be in RO_SPACE. In the longer term this object will be accessed via a global variable without requiring an Isolate or using the memory address of a HeapObject to infer it. Moves the list macros in heap.h to roots.h and splits some of them into two parts (read-only and mutable). Convert cases of heap_object->GetHeap()->root_accessor() to heap_objects->GetReadOnlyRoots().root_accessor(). Bug: v8:7786 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I14b01052adb2af9a5ec82b970e933d6a423d17a5 Reviewed-on: https://chromium-review.googlesource.com/1122127 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54160}
-
- 26 Jun, 2018 1 commit
-
-
Leszek Swirski authored
Remove the GetHeap call in object setters, replacing it with a new Heap::FromHeapObject method which explicitly tests for the object not being in RO space. The hope is that this method is used sparingly. As a drive-by, memoize the heap access in the write barrier macros, to avoid having to calculate the heap location twice. Bug: v8:7786 Change-Id: I26d1c41c673eddced17be316da6d51a16ac853e7 Reviewed-on: https://chromium-review.googlesource.com/1114614 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#54033}
-
- 20 Jun, 2018 1 commit
-
-
Toon Verwaest authored
Bug: chromium:854213 Change-Id: I01fafbf63009f309758b07ba59013c72c7439a10 Reviewed-on: https://chromium-review.googlesource.com/1107707Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#53877}
-
- 19 Jun, 2018 3 commits
-
-
Toon Verwaest authored
Change-Id: I5fd42cd70aaba15cfef32eea54232f8292aaa874 Reviewed-on: https://chromium-review.googlesource.com/1105775Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#53841}
-
Toon Verwaest authored
Change-Id: I566ab09800f4a2873aca86423c858b63c58d6d98 Reviewed-on: https://chromium-review.googlesource.com/1105049 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#53823}
-
Leszek Swirski authored
We want to remove GetIsolate calls, but this particular one is safe and necessary to avoid either storing the isolate in the parser/scopes, or passing it through as a parameter throughout the parser. Bug: v8:7786 Change-Id: I07765f5c20b2c9925bb0b980bc9fe850c91d7811 Reviewed-on: https://chromium-review.googlesource.com/1104685Reviewed-by:
Dan Elphick <delphick@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#53822}
-
- 18 Jun, 2018 1 commit
-
-
Toon Verwaest authored
For now we keep params since NewSloppyArguments uses it to figure out how to structure the arguments object. We should be able to only keep params in case we have a special case though. E.g., leaf functions with no duplicate parameters don't need special treatment. Or we simply encode the parameter index for each context slot. (I'm not sure duplicates need special treatment.) Change-Id: Icfbb844e5331aeb93c50bc07edd58246c8aeb1d7 Reviewed-on: https://chromium-review.googlesource.com/1104420 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#53802}
-