- 31 Aug, 2017 26 commits
-
-
Alexei Filippov authored
Ensure that RuntimeCallStats::Enter is paired with Leave when FLAG_runtime_stats changes in flight. BUG=chromium:669329 Change-Id: I4da7edf88990fdebd7d05325a09cfca0702cfe5a Reviewed-on: https://chromium-review.googlesource.com/643472Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#47749}
-
Benedikt Meurer authored
Since fullcodegen was removed, all baseline code runs in Ignition now, so the code_is_interpreted parameter to FeedbackVector::ComputeCounts is no longer needed. Bug: v8:6409 Change-Id: I27842a4978079f8166f22db6c695b352a38e1d87 Reviewed-on: https://chromium-review.googlesource.com/646106Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47748}
-
Clemens Hammacher authored
... for AbstractValue and AbstractControl. This allows to access the fields directly instead of via {interface_data}, and hence makes the code more readable. Also, it makes AbstractValue and AbstractControl non-templates. They are also renamed to ValueBase and ControlBase. Unfortunately, it requires the introduction of new templates ValueWithNamedConstructors and ControlWithNamedConstructors, in order to provide correctly typed named constructors (we cannot define implicit conversion from {Value,Control}Base to a subtype because of our style guide, checked by a presubmit check). R=titzer@chromium.org Bug: v8:6600 Change-Id: Icb7796d040afbf92309333a03d4286fc782f8d1b Reviewed-on: https://chromium-review.googlesource.com/643392Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#47747}
-
Jaroslav Sevcik authored
We emitted rotation by 24 bits with bitwise and, but that is wrong because the low 8 bits can wrap around and "leak" into the result. Bug: chromium:739902 Change-Id: Id49251e89405afb1581b8c60cde808c2d8bf693d Reviewed-on: https://chromium-review.googlesource.com/645848Reviewed-by: Martyn Capewell <martyn.capewell@arm.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#47746}
-
Yang Guo authored
R=jgruber@chromium.org Bug: v8:6774 Change-Id: Ie87306e9d6cc1574f8e1cc9dde38853eda07fd09 Reviewed-on: https://chromium-review.googlesource.com/645127 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#47745}
-
Clemens Hammacher authored
This violated the style guide, and caused problems for jumbo builds. R=titzer@chromium.org CC=mostynb@opera.com Bug: chromium:746958 Change-Id: Iaa75d444f5b5f595c54058de14b394119390921c Reviewed-on: https://chromium-review.googlesource.com/645529 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47744}
-
Clemens Hammacher authored
They violate the style guide, and cause problems for jumbo builds. This CL removes all occurrences in src/wasm except for the file wasm-objects.cc, which is a bit more involved and will be fixed in a separate CL. R=titzer@chromium.org CC=mostynb@opera.com Bug: chromium:746958 Change-Id: If5d9c03e0d6fa364e1d21feda49773468a48fba6 Reviewed-on: https://chromium-review.googlesource.com/645707 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47743}
-
Michael Lippautz authored
Except registration all calls should be dominated by actual visiation and/or copying. Bug: Change-Id: Iccc58253d627ecf4b4525de5824f76c048c35150 Reviewed-on: https://chromium-review.googlesource.com/645128Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#47742}
-
Michael Starzinger authored
R=leszeks@chromium.org Change-Id: Iae67b6b81459304192c81b1367a11fba076c7512 Reviewed-on: https://chromium-review.googlesource.com/645630Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47741}
-
Michael Hablich authored
TBR=machenbach@chromium.org NOTRY=true Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I59e5a30a469fa1a397ef55d2bc2bce550c5eed2f Reviewed-on: https://chromium-review.googlesource.com/645706 Commit-Queue: Michael Hablich <hablich@chromium.org> Reviewed-by: Michael Hablich <hablich@chromium.org> Cr-Commit-Position: refs/heads/master@{#47740}
-
Clemens Hammacher authored
Use int instead of byte to store the source position when computing a location based on the stack trace stored in an error object. Also add tests, since this code path was not covered before (not even for small position where it would have succeeded). Also, add some comments about which positions are 0-based and 1-based. R=titzer@chromium.org Change-Id: I313dcd6c47b77093ced9bb687415715d04eafb97 Reviewed-on: https://chromium-review.googlesource.com/645527Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#47739}
-
Benedikt Meurer authored
Now that the ticks are stored in the feedback vector the function parameter to CodeStubAssembler::UpdateFeedback is unused and we can remove it (and the need to load the closure on the use sites). Change-Id: I60bdebd2003ab707a7ad8451d0cb2189b70fd9cf Reviewed-on: https://chromium-review.googlesource.com/645626Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47738}
-
Michael Lippautz authored
TBR=ulan@chromium.org Change-Id: I793d99ec5b82d2f2444a20db5f0eb4e08bea4da4 Reviewed-on: https://chromium-review.googlesource.com/645308Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#47737}
-
Michael Starzinger authored
R=yangguo@chromium.org BUG=chromium:760858 Change-Id: I9a4f569a3fb978e1ed33176ac8e5d1ef383cacbe Reviewed-on: https://chromium-review.googlesource.com/645349Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47736}
-
Camillo Bruni authored
This test documents the basic behavior of the EnumCache which is shared on the DescriptorArray. Change-Id: Idd40670d99d81bb5e4b6161ffc47f2898ca9d2a9 Reviewed-on: https://chromium-review.googlesource.com/643297 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#47735}
-
Benedikt Meurer authored
This reverts commit c6b153fd. Reason for revert: Doesn't compile on the tree. Original change's description: > [cctest] Add fuzz tests for generating parallel moves. > > These new tests are somewhat similar to the existing gap resolver tests except > we use the code generator and eventually run the generated code. The main idea > is to cover cases that are difficult to hit, such as move from/to slots which > are out of range of loads and stores, but may happen nonetheless. > > At this time, the tests only make sure the code generator actually generated > some code, and that this code runs. In the future, it would be great to also > check that the moves were actually performed. > > Bug: v8:6553 > Change-Id: I089a25fa05b3a20649658bb8952926ab11f91d68 > Reviewed-on: https://chromium-review.googlesource.com/574850 > Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> > Reviewed-by: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47733} TBR=bbudge@chromium.org,danno@chromium.org,jarin@chromium.org,pierre.langlois@arm.com,bmeurer@chromium.org Change-Id: I875ab38e039fdbf58b8f08658c391147d2ec01fa No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6553 Reviewed-on: https://chromium-review.googlesource.com/645446Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47734}
-
Pierre Langlois authored
These new tests are somewhat similar to the existing gap resolver tests except we use the code generator and eventually run the generated code. The main idea is to cover cases that are difficult to hit, such as move from/to slots which are out of range of loads and stores, but may happen nonetheless. At this time, the tests only make sure the code generator actually generated some code, and that this code runs. In the future, it would be great to also check that the moves were actually performed. Bug: v8:6553 Change-Id: I089a25fa05b3a20649658bb8952926ab11f91d68 Reviewed-on: https://chromium-review.googlesource.com/574850 Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#47733}
-
Franziska Hinkelmann authored
Bug: v8:6704 Change-Id: If636bdd682d76a6d58d36fc9bfbf1302a32468ab Reviewed-on: https://chromium-review.googlesource.com/641671 Commit-Queue: Franziska Hinkelmann <franzih@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47732}
-
Michael Lippautz authored
Bug: Change-Id: I177baaea8031f61a7d57806a65c2286b1af1fb4b Reviewed-on: https://chromium-review.googlesource.com/643926Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#47731}
-
Yang Guo authored
R=jgruber@chromium.org Bug: v8:6624 Change-Id: I4929a404999cf4d2c12471d5ee13533234fbcf7e Reviewed-on: https://chromium-review.googlesource.com/645126Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#47730}
-
Michael Lippautz authored
heap-inl.h exposes the whole world, which is fine from other inline files but not from regular headers. Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I09ec67c6558682cb0d5181031bc39341a3f4c5bf Reviewed-on: https://chromium-review.googlesource.com/643294Reviewed-by: Ben Titzer <titzer@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#47729}
-
Benedikt Meurer authored
When calling Object(value) where the value is known to be a JSReceiver, we can just replace it with value, as the Object constructor call is a no-op in that case. Otherwise when value is known to be not null or undefined then we can replace the Object constructor call with an invocation of ToObject. This covers the common pattern found in bundles generated by Webpack, where the Object constructor is used to call imported functions, i.e. Object(module.foo)(1, 2, 3) There's a lot of detail in https://github.com/webpack/webpack/issues/5600 on this matter and why this pattern was chosen. Bug: v8:6772 Change-Id: I2b4f0b4542b68b97b337ce571d6d79946c73d8bb Reviewed-on: https://chromium-review.googlesource.com/643868Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47728}
-
Marja Hölttä authored
PreParser and Parser didn't agree whether a generator in a sloppy block is a sloppy block function or not, and thus the data generated by PreParser was inconsistent with what the Parser wanted to restore. BUG=v8:5516, chromium:760116 Change-Id: I0fd3c267691b8afd63a1336774769caf551c143e Reviewed-on: https://chromium-review.googlesource.com/642886Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#47727}
-
Sathya Gunasekaran authored
Bug: v8:5046 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I586dad351c950c119ec4d16693ce2a82395a8272 Reviewed-on: https://chromium-review.googlesource.com/640011 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#47726}
-
Andrey Lushnikov authored
This patch: - teaches Runtime.callFunctionOn to accept executionContextId instead of objectId. - adds the optional objectGroup parameter to the Runtime.callFunctionOn. R=kozy TBR=pfeldman BUG=chromium:760367 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel Change-Id: I024654860f23a9e79fb57865ba5bd472692ea526 Reviewed-on: https://chromium-review.googlesource.com/641921 Commit-Queue: Andrey Lushnikov <lushnikov@chromium.org> Reviewed-by: Pavel Feldman <pfeldman@chromium.org> Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Cr-Commit-Position: refs/heads/master@{#47725}
-
Sathya Gunasekaran authored
This patch introduces a new container type ScriptOrModule which provides the name and the host defined options of the script/module. This patch also introduces a new PrimitivesArray that can hold Primitive values, which the embedder can use to store metadata. The HostDefinedOptions is passed to V8 through the ScriptOrigin, and passed back to the embedder through HostImportModuleDynamically for module loading. Bug: v8:5785, v8:6658, v8:6683 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I56c26fc9a680b273ac0a6691e5ad75f15b8dc80a Reviewed-on: https://chromium-review.googlesource.com/622158Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#47724}
-
- 30 Aug, 2017 14 commits
-
-
Jaroslav Sevcik authored
Bug: chromium:760434 Change-Id: I95bcf33f334349de0a81f574ba64128b8e1b2ebd Reviewed-on: https://chromium-review.googlesource.com/643192 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47723}
-
Adam Klein authored
CaseClause never made sense as an Expression; this CL allows us to remove several UNREACHABLEs and slim down the representation of CaseClause by removing its source position (which was only used in prettyprinting). The only real fallout of this change is that SourceRangeMap now stores its keys as ZoneObject*, rather than AstNode*, but since there's already compile time typechecking for inserting items into the map this shouldn't cause any ill effects. While modifying CaseClause, also removed the dead body_target() accessor (and related member variable). Thus this CL overall reduces the memory needed for each CaseClause by two words. Bug: v8:6092 Change-Id: I0021c0590a69e29305c41ec6105c8824ae0cc25b Reviewed-on: https://chromium-review.googlesource.com/639316Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Reviewed-by: Mythri Alle <mythria@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#47722}
-
Michael Lippautz authored
TEST=cctest/test-heap/EnsureAllocationSiteDependentCodesProcessed Bug: Change-Id: I803d6b33258175da32fa79ba9b839e67d5ba11bf Reviewed-on: https://chromium-review.googlesource.com/643210Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#47721}
-
Leszek Swirski authored
Jumps (and returns) in Ignition update the interrupt budget, and call into the runtime if the budget drops below zero. Since forward jumps only ever increase the budget, we don't need to generate this check or the call for them at all. Change-Id: I8c4ae15edab39a3a5725a98f38efba3a16243d91 Reviewed-on: https://chromium-review.googlesource.com/643209Reviewed-by: Mythri Alle <mythria@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#47720}
-
Tobias Tebbi authored
Bug: v8:6761 Change-Id: I65f70cb192fc9cd9a06a0ba8a02532ff24ad1387 Reviewed-on: https://chromium-review.googlesource.com/643206 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#47719}
-
John Barboza authored
I found that v8 will crash when --print-code is turned on while Regexp is interpreted. It crashes when trying to print Relocation info during Disassembly. It should probably avoid printing out disassembly when the Code object is a bytecode regexp. Bug: Change-Id: I35b531cb03996a303248652871452266c78fee38 Reviewed-on: https://chromium-review.googlesource.com/642127Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Jaideep Bajwa <bjaideep@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#47718}
-
Clemens Hammacher authored
It has exactly the inverse meaning of CHECK_ERROR. Since CHECK_ERROR is used in the majority of the cases, and is more readable in most cases, this CL replaces all uses of VALIDATE by CHECK_ERROR. It also includes a few minor refactorings of the touched code. R=titzer@chromium.org Bug: v8:6600 Change-Id: I3d6b3b8bfd131e14f0d852b07622382b11b488f0 Reviewed-on: https://chromium-review.googlesource.com/643268Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#47717}
-
Ben L. Titzer authored
This is a reland of 15fe64c0 Original change's description: > [wasm] Handle non-asm-js case in WasmCompiledModule::GetAsmJsSourcePosition. > > This hides more implementation details and simplifies callers. > > R=ahaas@chromium.org > > Bug: > Change-Id: I4809611c55b810a3b0674713e12f3f17401e6c9c > Reviewed-on: https://chromium-review.googlesource.com/620713 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Commit-Queue: Ben Titzer <titzer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47434} Change-Id: Ica097f43e5f9122eb44b537822f9021d5eab2703 Reviewed-on: https://chromium-review.googlesource.com/643207Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47716}
-
Ben L. Titzer authored
Script::SetEvalOrigin() could do a stackwalk depending on whether one of its arguments is a sentinel value. This is somewhat surprising behavior, and since this function has just one caller, it makes more sense to do this in that location. R=mstarzinger@chromium.org Bug: Change-Id: Iddd38b42d9a3a8f4898aafb20fe165dfee51d516 Reviewed-on: https://chromium-review.googlesource.com/643386Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#47715}
-
jgruber authored
intl_date_time_format_function is only set in i18n builds. Use opaque_reference_function to test for Builtins::kIllegal instead. TBR=yangguo@chromium.org NOTREECHECKS=true NOTRY=true Bug: v8:6624 Change-Id: I0631862e6e022d222b52dceb58a8fe65f7d6a4e8 Reviewed-on: https://chromium-review.googlesource.com/643506Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#47714}
-
Leszek Swirski authored
Use the DEFINE_FIELD_OFFSET_CONSTANTS macro to define the fields in the BytecodeArray layout description. Change-Id: I89ff2d7cd967aa1a503cbedd5d95dcd80f4d038c Reviewed-on: https://chromium-review.googlesource.com/643130Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#47713}
-
jgruber authored
Lazy deserialization needs to determine the underlying builtin by looking at the SharedFunctionInfo. This packs the builtin_id into the SFI::function_data field, and adds convenience functions to Code as a drive-by addition. Bug: v8:6624 Change-Id: I59093815aa6937342302153ebc95dd60edb0064e Reviewed-on: https://chromium-review.googlesource.com/641490 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47712}
-
Clemens Hammacher authored
And reuse the CHECK_ERROR and VALIDATE macros. R=titzer@chromium.org Bug: v8:6600 Change-Id: Ibeabdf0815418b6c70e2441ed9267261eb8883b6 Reviewed-on: https://chromium-review.googlesource.com/643131Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#47711}
-
Michael Lippautz authored
Bug: chromium:738865, chromium:750084 Change-Id: Ife30da4be118cd6f3212e84752978ebb39500f15 Reviewed-on: https://chromium-review.googlesource.com/641414 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#47710}
-