- 24 Jul, 2018 3 commits
-
-
Tobias Tebbi authored
Change-Id: I02c117ef66480eb73eb9cc1d4f80bbc64e9d3624 Reviewed-on: https://chromium-review.googlesource.com/1146655 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#54649}
-
Leszek Swirski authored
Replace most uses of ZoneList in the parser with ZoneChunkList, which is more Zone allocation friendly. Includes rewriting some index-based loops as iterator-based, since ZoneChunkList random access isn't constant time. Bug: v8:7754 Change-Id: I49052b8afb90a4f3bfbe4076c2f90505b598e47a Reviewed-on: https://chromium-review.googlesource.com/1145382Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54631}
-
Michael Starzinger authored
R=ahaas@chromium.org Change-Id: I7c6fd17f36d33451ce7605e74002515295c7ad1c Reviewed-on: https://chromium-review.googlesource.com/1145195Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54629}
-
- 23 Jul, 2018 3 commits
-
-
Georg Neis authored
We'll soon start collecting data from the JS heap prior to the typed lowering pass, and then refrain from reading the heap in that pass. This CL prepares the broker machinery by introducing a hash table that maps an object (handle) to the corresponding cached data. For the time being, that cached data is essentially just the handle itself. Bug: v8:7790 Change-Id: I830e9c72faafb7ae1d10e8a111636b3a3762bbc6 Reviewed-on: https://chromium-review.googlesource.com/1143405 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@{#54618}
-
Stephan Herhut authored
api.h had an implicit dependency on objects-inl.h. Bug: v8:7490 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I56ef7abefed7205bdbff2aa5f451f1a843bef9f9 Reviewed-on: https://chromium-review.googlesource.com/1145191Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Stephan Herhut <herhut@chromium.org> Cr-Commit-Position: refs/heads/master@{#54616}
-
Ross Mcilroy authored
Replace with isolate version. BUG=v8:7754 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Iac7091b983960d22b892074c5fd0a97dee9025c9 Reviewed-on: https://chromium-review.googlesource.com/1146332 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by:
Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#54604}
-
- 20 Jul, 2018 5 commits
-
-
Sigurd Schneider authored
This reverts commit a462a785. Reason for revert: Breaks a TurboAssembler test: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Arm/7726 Original change's description: > [turboassembler] Introduce hard-abort mode > > For checks and assertions (mostly for debug code, like stack alignment > or zero extension), we had two modes: Emit a call to the {Abort} > runtime function (the default), and emit a debug break (used for > testing, enabled via --trap-on-abort). > In wasm, where we cannot just call a runtime function because code must > be isolate independent, we always used the trap-on-abort behaviour. > This causes problems for our fuzzers, which do not catch SIGTRAP, and > hence do not detect debug code failures. > > This CL introduces a third mode ("hard abort"), which calls a C > function via {ExternalReference}. The C function still outputs the > abort reason, but does not print the stack trace. It then aborts via > "OS::Abort", just like the runtime function. > This will allow fuzzers to detect the crash and even find a nice error > message. > > Even though this looks like a lot of code churn, it is actually not. > Most added lines are new tests, and other changes are minimal. > > R=mstarzinger@chromium.org > > Bug: chromium:863799 > Change-Id: I77c58ff72db552d49014614436259ccfb49ba87b > Reviewed-on: https://chromium-review.googlesource.com/1142163 > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54592} TBR=mstarzinger@chromium.org,clemensh@chromium.org Change-Id: I60c011cfe262ccebbb9abf32699a9fe17e72a3c8 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:863799 Reviewed-on: https://chromium-review.googlesource.com/1145431 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#54597}
-
Caitlin Potter authored
As discussed in https://docs.google.com/document/d/1sBdGe8RHgeYP850cKSSgGABTyfMdvaEWLy-vertuTCo/edit?ts=5b3ba5cc#, this CL introduces a new bytecode (CloneObject), and a new IC type. In this prototype implementation, the type feedback looks like the following: Uninitialized case: { uninitialized_sentinel, uninitialized_sentinel } Monomorphic case: { weak 'source' map, strong 'result' map } Polymorphic case: { WeakFixedArray with { weak 'source' map, strong 'result' map }, cleared value } Megamorphic case: { megamorphic_sentinel, cleared_Value } In the fast case, Object cloning is done by allocating an object with the saved result map, and a shallow clone of the fast properties from the source object, as well as cloned fast elements from the source object. If at any point the fast case can't be taken, the IC transitions to the slow case and remains there. This prototype CL does not include any TurboFan optimization, and the CloneObject operation is merely reduced to a stub call. It may still be possible to get some further improvements by somehow incorporating compile-time boilerplate elements into the cloned object, or simplifying how the boilerplate elements are inserted into the object. In terms of performance, we improve the ObjectSpread score in JSTests/ObjectLiteralSpread/ by about 8x, with substantial improvements over the Babel and ObjectAssign scores. R=gsathya@chromium.org, mvstanton@chromium.org, rmcilroy@chromium.org, neis@chromium.org, bmeurer@chromium.org BUG=v8:7611 Change-Id: I79e1796eb77016fb4feba0e1d3bb9abb348c183e Reviewed-on: https://chromium-review.googlesource.com/1127472 Commit-Queue: Caitlin Potter <caitp@igalia.com> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#54595}
-
Clemens Hammacher authored
For checks and assertions (mostly for debug code, like stack alignment or zero extension), we had two modes: Emit a call to the {Abort} runtime function (the default), and emit a debug break (used for testing, enabled via --trap-on-abort). In wasm, where we cannot just call a runtime function because code must be isolate independent, we always used the trap-on-abort behaviour. This causes problems for our fuzzers, which do not catch SIGTRAP, and hence do not detect debug code failures. This CL introduces a third mode ("hard abort"), which calls a C function via {ExternalReference}. The C function still outputs the abort reason, but does not print the stack trace. It then aborts via "OS::Abort", just like the runtime function. This will allow fuzzers to detect the crash and even find a nice error message. Even though this looks like a lot of code churn, it is actually not. Most added lines are new tests, and other changes are minimal. R=mstarzinger@chromium.org Bug: chromium:863799 Change-Id: I77c58ff72db552d49014614436259ccfb49ba87b Reviewed-on: https://chromium-review.googlesource.com/1142163 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54592}
-
Michael Starzinger authored
R=clemensh@chromium.org BUG=v8:7754 Change-Id: Ia4c2fb2d87c8a5de96fa9f1f0621d21ae3eda611 Reviewed-on: https://chromium-review.googlesource.com/1145181Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54591}
-
Marja Hölttä authored
This reduces the build steps from touching api.h: 269 -> 156 BUG=v8:7754,v8:7490 Change-Id: I75abaeea4cc78027a47304ff9b9f6b12bdb2b75e Reviewed-on: https://chromium-review.googlesource.com/1144929Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#54583}
-
- 19 Jul, 2018 1 commit
-
-
Leszek Swirski authored
Remove the function identifier field from SharedFunctionInfo. This field would store one of a) the function's inferred name, b) the "builtin function id", or c) debug info. We remove these in turn: a) The function's inferred name is available on the ScopeInfo, so like the start/end position we read it off either the ScopeInfo (for compiled functions) or the UncompiledData (for uncompiled functions). As a side-effect, now both UncompiledData and its subclass, UncompiledDataWithPreparsedScope, contain a pointer field. To keep BodyDescriptors manageable, we introduce a SubclassBodyDescriptor which effectively appends two BodyDescriptors together. b) The builtin function id is < 255, so we can steal a byte from expected no. of properies (also <255) and store these together. Eventually we want to get rid of this field and use the builtin ID, but this is pending JS builtin removal. As a side-effect, BuiltinFunctionId becomes an enum class (for better storage size guarantees). c) The debug info can hang off anything (since it stores the field it replaces), so we can attach it to the script field instead. This saves a word on compiled function (uncompiled functions unfortunately still have to store it in UncompiledData). Bug: chromium:818642 Change-Id: I8b4b3a070f0fe328aafcaeac58842d144d12d996 Reviewed-on: https://chromium-review.googlesource.com/1138328Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54543}
-
- 17 Jul, 2018 1 commit
-
-
Dan Elphick authored
Ran GetIsolate/GetHeap removal script over all the header files included into objects.cc. Affected classes include: ScriptContextTable RuntimeCallTimerScope GlobalDictionaryShape Map LookupIterator PrototypeIterator FixedArrayBuilder Manually fixed up Map to mark its write operations as safe for GetIsolate since they modify the object as so can't be done in RO_SPACE. Bug: v8:7786 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I2fd0960f085d1bcb4cf54b3418899ac0217917ca Reviewed-on: https://chromium-review.googlesource.com/1138076 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54488}
-
- 16 Jul, 2018 4 commits
-
-
Leszek Swirski authored
SharedFunctionInfos store their original function literal's id. This is also their index in the Script's SFI list. The function literal id is only needed for lazy compilation and live edit, and access only has to be fast in the former. So, we can move the SFI function literal id field to UncompiledData, and if patching with live edit, or discarding compiled code, we can perform a slower linear search through the Script's SFI list. This is a reland of 1) https://chromium-review.googlesource.com/1082480 and 2) https://chromium-review.googlesource.com/1128854 the differences being: 1) caching the literal id on UncompiledData rather than always linearly searching the SFI list, and removing the unused runtime-liveedit.cc file instead of fixing it to support this change. 2) clearing padding on UncompiledData now that it has 3 int32 fields, making its end unaligned on x64. TBR=yangguo@chromium.org,marja@chromium.org,ulan@chromium.org,cbruni@chromium.org Bug: chromium:818642 Change-Id: I58dcb12a2a60a680f662568da428e01189c62638 Reviewed-on: https://chromium-review.googlesource.com/1138325Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54473}
-
Sigurd Schneider authored
This reverts commit 1d4a1172. Reason for revert: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/21989 Original change's description: > [sfi] Remove SFI function literal id field > > SharedFunctionInfos store their original function literal's id. This is > also their index in the Script's SFI list. > > The function literal id is only needed for lazy compilation and live edit, > and access only has to be fast in the former. So, we can move the SFI > function literal id field to UncompiledData, and if patching with live > edit, or discarding compiled code, we can perform a slower linear search > through the Script's SFI list. > > This is a reland of > https://chromium-review.googlesource.com/c/v8/v8/+/1082480 > but caching the literal id on UncompiledData rather than always linearly > searching the SFI list. Also, removes the unused runtime-liveedit.cc file > instead of fixing it to support this change. > > Bug: chromium:818642 > Change-Id: I977bcca0dc72903ca476a7079d156cc8bbe88fde > Reviewed-on: https://chromium-review.googlesource.com/1128854 > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Marja Hölttä <marja@chromium.org> > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54464} TBR=ulan@chromium.org,marja@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org,cbruni@chromium.org,leszeks@chromium.org,verwaest@chromium.org Change-Id: Icee5ee3ab7688b93e2963f91debed65a58164534 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:818642 Reviewed-on: https://chromium-review.googlesource.com/1138276Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#54466}
-
Leszek Swirski authored
SharedFunctionInfos store their original function literal's id. This is also their index in the Script's SFI list. The function literal id is only needed for lazy compilation and live edit, and access only has to be fast in the former. So, we can move the SFI function literal id field to UncompiledData, and if patching with live edit, or discarding compiled code, we can perform a slower linear search through the Script's SFI list. This is a reland of https://chromium-review.googlesource.com/c/v8/v8/+/1082480 but caching the literal id on UncompiledData rather than always linearly searching the SFI list. Also, removes the unused runtime-liveedit.cc file instead of fixing it to support this change. Bug: chromium:818642 Change-Id: I977bcca0dc72903ca476a7079d156cc8bbe88fde Reviewed-on: https://chromium-review.googlesource.com/1128854Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54464}
-
Yang Guo authored
R=bmeurer@chromium.org, ulan@chromium.org Bug: chromium:680662 Change-Id: I5e1486ad2a42db2998d5485a0c4e711378678e6c Reviewed-on: https://chromium-review.googlesource.com/1136034Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#54460}
-
- 13 Jul, 2018 1 commit
-
-
Dan Elphick authored
All auto-generated with some fix-ups including marking the following classes as NeverReadOnlySpaceObject so their GetIsolate/GetHeap methods are safe to use: Code, CodeDataContainer, AbstractCode, DeoptimizationData, CompilationCacheTable, NormalizedMapCache, Script, SharedFunctionInfo TBR=yangguo@chromium.org Bug: v8:7786 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I6cb5dcca88a0bc99b5afe80f553e06a661b5da3c Reviewed-on: https://chromium-review.googlesource.com/1135306 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54439}
-
- 12 Jul, 2018 4 commits
-
-
Dan Elphick authored
Bug: v8:7786 Change-Id: If9615f5dffc40937f9f35a209730d530be6b424b Reviewed-on: https://chromium-review.googlesource.com/1134986Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#54407}
-
Andreas Haas authored
The instruction got removed from the proposal. R=titzer@chromium.org Bug: v8:7581 Change-Id: I3e27bad923544896ebf6ab8969e5c365a397f6c9 Reviewed-on: https://chromium-review.googlesource.com/1128754Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#54402}
-
Andreas Haas authored
With the introduction of multiple tables the element section is able to initialize any of the defined tables. However, the spec says that only tables of type AnyFunc can be initialized. With this CL we validate that entries in the element section only target AnyFunc tables. R=titzer@chromium.org Bug: v8:7581 Change-Id: Ifea383b13c91f582813b2aa4f01a5f724575cfa0 Reviewed-on: https://chromium-review.googlesource.com/1130519 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54400}
-
Hannes Payer authored
Bug: chromium:842083 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I9a8d8327bfbab95cf9bdddb096804b65270cdfed Reviewed-on: https://chromium-review.googlesource.com/1127944 Commit-Queue: Hannes Payer <hpayer@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#54388}
-
- 11 Jul, 2018 1 commit
-
-
Michael Lippautz authored
Allows embedders using the EmbedderHeapTracer to synchronously finalize an already running garbage collection Bug: chromium:843903 Tbr: ulan@chromium.org Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Iea01451ea2c1204c34dc7904732abae6b63e1704 Reviewed-on: https://chromium-review.googlesource.com/1128971 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#54378}
-
- 10 Jul, 2018 3 commits
-
-
Andreas Haas authored
Allow the decoding of multiple tables, and allow these tables to have any reference type. In addition, rename function-tables (in different occurrences) to tables. R=titzer@chromium.org Bug: v8:7581 Change-Id: I191ea8e303b76563f9d91ae7447b373c4760d8b8 Reviewed-on: https://chromium-review.googlesource.com/1019581 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54355}
-
Georg Neis authored
R=jarin@chromium.org Bug: v8:7790 Change-Id: Idca77ca34c06fddfa73f412f20ba72500bbddf9c Reviewed-on: https://chromium-review.googlesource.com/1128963Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54341}
-
Georg Neis authored
R=jarin@chromium.org Bug: v8:7790 Change-Id: I4d9c561720005f7b667085c7dcf4e777e65d1e05 Reviewed-on: https://chromium-review.googlesource.com/1128891Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54340}
-
- 09 Jul, 2018 5 commits
-
-
Leszek Swirski authored
Add new types for function data for SharedFunctionInfo, for uncompiled functions. UncompiledData holds start/end positions, allowing us to remove these fields from SFI. Uncompiled functions with pre-parsed scope data now hold an UncompiledDataWithScope that has a pointer to PreParsedScopeData -- this allows us to also remove the start/end pos from PreParsedScopeData. Bug: chromium:818642 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I56f3c4e62cbf38929babac734a332709f12a8202 Reviewed-on: https://chromium-review.googlesource.com/1126381 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#54319}
-
Andreas Haas authored
With this CL we now also support the decoding of the AnyFunc type. I will add the type more deeply in subsequent CLs. R=titzer@chromium.org Bug: v8:7581 Change-Id: I9f30706a442462f915adfd8f720eb65168b80bb8 Reviewed-on: https://chromium-review.googlesource.com/1014111 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#54318}
-
Jaroslav Sevcik authored
Bug: v8:7790 Change-Id: I918af0461e86ce8eacb9155de18954d8b6270ecc Reviewed-on: https://chromium-review.googlesource.com/1123831 Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54317}
-
Georg Neis authored
R=jarin@chromium.org Bug: v8:7790 Change-Id: I42c1208f3555a7e5a3a241860d0a1609b8530b79 Reviewed-on: https://chromium-review.googlesource.com/1128740Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54314}
-
Michael Lippautz authored
Deprecates EmbedderHeapTracer::NumberOfWrappersToTrace and replaces it with EmbedderHeapTracer::IsTracingDone. V8 only really cares about the final state (emptiness) here and embedders may choose implementations that have a hard time determinining exact size for their work queues. Bug: chromium:843903 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I1e141c47771ef08aab7dbe204e8175cfee99cf92 Reviewed-on: https://chromium-review.googlesource.com/1127599 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#54311}
-
- 06 Jul, 2018 3 commits
-
-
Bill Budge authored
- Refactors most of the logic into a helper CanonicalizeShuffle overload that is more easily tested. - Reorders these methods to be in the order they're used. - Adds unit tests for this helper. Bug: v8:6020 Change-Id: Ia7e08bd2ff3ae62b13c9283c6de04e0e1e85086b Reviewed-on: https://chromium-review.googlesource.com/1118706Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#54303}
-
Georg Neis authored
- Move the CompilationDependencies member of OptimizedCompilationInfo to Turbofan's PipelineData (and thus into the compiler namespace). - Move compilation-dependencies.{cc,h} to the compiler directory. Bug: v8:7902 Change-Id: I5471d0923daf83abe975357325db5bc5ad0a8571 Reviewed-on: https://chromium-review.googlesource.com/1127793 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54295}
-
Georg Neis authored
This is a reland of 4b9b9b68, which accidentally disabled optimization after dependency changes (instead of retrying). TBR=jarin@chromium.org TBR=mstarzinger@chromium.org Original change's description: > Reland "[turbofan] Rewrite CompilationDependencies" > > This is a reland of 52a10e50, after > eliminating an invalid assumption about maps. > > TBR=jarin@chromium.org > TBR=mstarzinger@chromium.org > > Original change's description: > > [turbofan] Rewrite CompilationDependencies > > > > Instead of installing code dependencies during graph reduction, > > install them after code generation. > > > > Bug: v8:7902, v8:7790 > > Change-Id: I8a3798254abb5b9ec7c295a1592aeb6b51f24c7a > > Reviewed-on: https://chromium-review.googlesource.com/1119913 > > Commit-Queue: Georg Neis <neis@chromium.org> > > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#54170} > > Bug: v8:7902, v8:7790 > Change-Id: I9cbaf98980379b9b17464af5952ec0c47e1cdc6f > Reviewed-on: https://chromium-review.googlesource.com/1126999 > Reviewed-by: Georg Neis <neis@chromium.org> > Commit-Queue: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54254} Bug: v8:7902, v8:7790 Change-Id: I2b7a7d186e03990350e375470569177e3309683c Reviewed-on: https://chromium-review.googlesource.com/1127579 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54280}
-
- 05 Jul, 2018 4 commits
-
-
Alexey Kozyatinskiy authored
- rewritten couple tests, - migrated JSMessageObject to real Script instead of wrapper, - removed wrapper. R=yangguo@chromium.org TBR=ulan@chromium.org Bug: v8:5530 Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: Ia95492344c7b5978a940e2ab007b389384537148 Reviewed-on: https://chromium-review.googlesource.com/1112851Reviewed-by:
Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#54274}
-
Georg Neis authored
This reverts commit 4b9b9b68. Reason for revert: Regresses Octane. Original change's description: > Reland "[turbofan] Rewrite CompilationDependencies" > > This is a reland of 52a10e50, after > eliminating an invalid assumption about maps. > > TBR=jarin@chromium.org > TBR=mstarzinger@chromium.org > > Original change's description: > > [turbofan] Rewrite CompilationDependencies > > > > Instead of installing code dependencies during graph reduction, > > install them after code generation. > > > > Bug: v8:7902, v8:7790 > > Change-Id: I8a3798254abb5b9ec7c295a1592aeb6b51f24c7a > > Reviewed-on: https://chromium-review.googlesource.com/1119913 > > Commit-Queue: Georg Neis <neis@chromium.org> > > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#54170} > > Bug: v8:7902, v8:7790 > Change-Id: I9cbaf98980379b9b17464af5952ec0c47e1cdc6f > Reviewed-on: https://chromium-review.googlesource.com/1126999 > Reviewed-by: Georg Neis <neis@chromium.org> > Commit-Queue: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54254} TBR=mstarzinger@chromium.org,jarin@chromium.org,neis@chromium.org Change-Id: Iece193046c48ee96ab7952d2b3bd7ad05f39b190 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7902, v8:7790 Reviewed-on: https://chromium-review.googlesource.com/1127119Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54260}
-
Georgia Kouveli authored
This is a reland of 8e39af62 Original change's description: > [arm64] Use root register for addressing external references. > > This optimization is already done on x64 (7500e507). > > Bug: v8:7844 > Change-Id: Iccc3bb55aa79ef1d4423576c79d9ce6f829f2828 > Reviewed-on: https://chromium-review.googlesource.com/1120343 > Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54162} Bug: v8:7844 Change-Id: I2eab2d753fd8e374bf7c912a107c93edc58ef4c7 Reviewed-on: https://chromium-review.googlesource.com/1126259Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Cr-Commit-Position: refs/heads/master@{#54257}
-
Georg Neis authored
This is a reland of 52a10e50, after eliminating an invalid assumption about maps. TBR=jarin@chromium.org TBR=mstarzinger@chromium.org Original change's description: > [turbofan] Rewrite CompilationDependencies > > Instead of installing code dependencies during graph reduction, > install them after code generation. > > Bug: v8:7902, v8:7790 > Change-Id: I8a3798254abb5b9ec7c295a1592aeb6b51f24c7a > Reviewed-on: https://chromium-review.googlesource.com/1119913 > Commit-Queue: Georg Neis <neis@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54170} Bug: v8:7902, v8:7790 Change-Id: I9cbaf98980379b9b17464af5952ec0c47e1cdc6f Reviewed-on: https://chromium-review.googlesource.com/1126999Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54254}
-
- 04 Jul, 2018 2 commits
-
-
Rodrigo Bruno authored
Bug: chromium:845409 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I2ab1ca18a900828e4e116f1b087925319d41bf97 Reviewed-on: https://chromium-review.googlesource.com/1124845Reviewed-by:
Hannes Payer <hpayer@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Rodrigo Bruno <rfbpb@google.com> Cr-Commit-Position: refs/heads/master@{#54203}
-
Yang Guo authored
This reverts commit 52a10e50. Reason for revert: https://test-results.appspot.com/data/layout_results/V8-Blink_Linux_64__dbg_/12434/layout-test-results/results.html Crash e.g. in http/tests/devtools/oopif/oopif-performance-cpu-profiles.js crash log for devtools (pid <unknown>): STDOUT: <empty> STDERR: STDERR: STDERR: # STDERR: # Fatal error in ../../v8/src/compilation-dependencies.cc, line 281 STDERR: # Debug check failed: descriptor == owner->LastAdded() (10 vs. 22). STDERR: # STDERR: # STDERR: # STDERR: #FailureMessage Object: 0x7fff86878630#0 0x0000031c642c base::debug::StackTrace::StackTrace() STDERR: #1 0x0000046a56bb gin::(anonymous namespace)::PrintStackTrace() STDERR: #2 0x00000469c528 V8_Fatal() STDERR: #3 0x00000469c285 v8::base::(anonymous namespace)::DefaultDcheckHandler() STDERR: #4 0x000001cc5253 v8::internal::CompilationDependencies::DependOnFieldType() STDERR: #5 0x000001cdcc46 v8::internal::compiler::AccessInfoFactory::ComputePropertyAccessInfo() STDERR: #6 0x000001cde661 v8::internal::compiler::AccessInfoFactory::ComputePropertyAccessInfos() STDERR: #7 0x000001dd982b v8::internal::compiler::JSNativeContextSpecialization::ReduceNamedAccess() STDERR: #8 0x000001ddb715 v8::internal::compiler::JSNativeContextSpecialization::ReduceNamedAccessFromNexus() STDERR: #9 0x000001dd656d v8::internal::compiler::JSNativeContextSpecialization::ReduceJSLoadNamed() STDERR: #10 0x000001d53872 v8::internal::compiler::GraphReducer::Reduce() STDERR: #11 0x000001d534a5 v8::internal::compiler::GraphReducer::ReduceTop() STDERR: #12 0x000001d52e58 v8::internal::compiler::GraphReducer::ReduceNode() STDERR: #13 0x000001e4c201 v8::internal::compiler::InliningPhase::Run() STDERR: #14 0x000001e44f79 v8::internal::compiler::PipelineImpl::Run<>() STDERR: #15 0x000001e41058 v8::internal::compiler::PipelineImpl::CreateGraph() STDERR: #16 0x000001e40c75 v8::internal::compiler::PipelineCompilationJob::PrepareJobImpl() STDERR: #17 0x000001ccd437 v8::internal::OptimizedCompilationJob::PrepareJob() STDERR: #18 0x000001cd071e v8::internal::(anonymous namespace)::GetOptimizedCode() STDERR: #19 0x000001cd0c6f v8::internal::Compiler::CompileOptimized() STDERR: #20 0x00000231fb62 v8::internal::__RT_impl_Runtime_CompileOptimized_Concurrent() STDERR: #21 0x00000288e535 <unknown> Original change's description: > [turbofan] Rewrite CompilationDependencies > > Instead of installing code dependencies during graph reduction, > install them after code generation. > > Bug: v8:7902, v8:7790 > Change-Id: I8a3798254abb5b9ec7c295a1592aeb6b51f24c7a > Reviewed-on: https://chromium-review.googlesource.com/1119913 > Commit-Queue: Georg Neis <neis@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54170} TBR=mstarzinger@chromium.org,jarin@chromium.org,neis@chromium.org Change-Id: Ic58c2bfadbd34bb6ba7dc0d2b74871cc90b0a74f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7902, v8:7790 Reviewed-on: https://chromium-review.googlesource.com/1125680Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#54192}
-