- 03 Feb, 2016 2 commits
-
-
kozyatinskiy authored
A lot of deverlopers use deprecated sourceURL syntax. We should add console warning message before removing this. Original CL: https://codereview.chromium.org/1495633002/ BUG=chromium:558998 LOG=Y R=yangguo@chromium.org,hablich@chromium.org,adamk@chromium.org Review URL: https://codereview.chromium.org/1654223003 Cr-Commit-Position: refs/heads/master@{#33709}
-
jochen authored
BUG=none R=verwaest@chromium.org LOG=n Review URL: https://codereview.chromium.org/1653423002 Cr-Commit-Position: refs/heads/master@{#33699}
-
- 02 Feb, 2016 2 commits
-
-
vogelheim authored
(Trying to finish FastAccessorAssembler this week. This should make it easier to pick up the Blink side of this work later on.) BUG=chromium:508898 SOUNDTRACK=http://youtu.be/i1EG-MKy4so LOG=Y Review URL: https://codereview.chromium.org/1620293002 Cr-Commit-Position: refs/heads/master@{#33671}
-
jochen authored
BUG=none R=haraken@chromium.org,hpayer@chromium.org LOG=n Review URL: https://codereview.chromium.org/1659433002 Cr-Commit-Position: refs/heads/master@{#33658}
-
- 01 Feb, 2016 1 commit
-
-
littledan authored
This patch adds a UseCounter for each of the following: - Allowing duplicate sloppy-mode block-scoped function declarations in the exact same scope - for-in loops with an initializer The patch also refactors some of the declaration code to clean it up and enable the first counter, and adds additional unit tests to nail down the semantics of edge cases of sloppy-mode block-scoped function declarations. BUG=v8:4693,chromium:579395 LOG=N R=adamk Review URL: https://codereview.chromium.org/1633743003 Cr-Commit-Position: refs/heads/master@{#33650}
-
- 29 Jan, 2016 1 commit
-
-
xaxxon authored
Without this change, the v8::Local<> constructor will be picked up by the compiler as an option for an implicit cast for any pointer type. This leads to bad error messages when accidentally passing an erroneous pointer type to a function wanting a Local<> (complains about a pointer assignment in Local<>'s constructor as opposed to a bad type for the parameter of the function being called) and also causes ambiguity errors where none should exist when calling overloaded functions (for example a function taking either a std::string or a v8::Local<v8::Script> cannot be called with a const char * because the compiler sees both types as being constructable with a const char *). R=jochen@chromium.org BUG= Review URL: https://codereview.chromium.org/1647833005 Cr-Commit-Position: refs/heads/master@{#33602}
-
- 27 Jan, 2016 2 commits
-
-
jochen authored
R=yangguo@chromium.org BUG= Review URL: https://codereview.chromium.org/1641673002 Cr-Commit-Position: refs/heads/master@{#33561}
-
jochen authored
R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/1644603002 Cr-Commit-Position: refs/heads/master@{#33557}
-
- 26 Jan, 2016 1 commit
-
-
alph authored
It allows embedder to inject a stack sample on demand. BUG=chromium:579191 LOG=N Review URL: https://codereview.chromium.org/1631043002 Cr-Commit-Position: refs/heads/master@{#33527}
-
- 22 Jan, 2016 2 commits
-
-
ofrobots authored
Revert "Revert of [profiler] Implement POC Sampling Heap Profiler (patchset #12 id:220001 of https://codereview.chromium.org/1555553002/ )" This reverts commit 77df8659. BUG= Review URL: https://codereview.chromium.org/1618693004 Cr-Commit-Position: refs/heads/master@{#33473}
-
ishell authored
When accessor getter callback is called the v8::PropertyCallbackInfo::ShouldThrowOnError() is always false, since according to ES6 there's no difference between strict and non-strict property loads. For the setter case the v8::PropertyCallbackInfo::ShouldThrowOnError() returns true if the property is set in strict context. Interceptors follow same idea: for getter, enumerator and query callbacks the v8::PropertyCallbackInfo::ShouldThrowOnError() is always false, and for setter and deleter callback the v8::PropertyCallbackInfo::ShouldThrowOnError() returns true in strict context. This CL also cleans up the CallApiGetterStub and removes bogus asserts from [arm] Push(reg1, reg2, ..., regN) that prevented from pushing a set of registers containing duplicates. BUG=v8:4267 LOG=Y Committed: https://crrev.com/1d3e837fcbbd9d9fd5e72dfe85dfd47c025f3c9f Cr-Commit-Position: refs/heads/master@{#33438} Review URL: https://codereview.chromium.org/1587073003 Cr-Commit-Position: refs/heads/master@{#33461}
-
- 21 Jan, 2016 4 commits
-
-
ofrobots authored
Revert of [profiler] Implement POC Sampling Heap Profiler (patchset #12 id:220001 of https://codereview.chromium.org/1555553002/ ) Reason for revert: The random nature of the tests caused the following buildbot to fail: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20gcc%204.8/builds/4724/steps/Check/logs/stdio Original issue's description: > [profiler] Implement POC Sampling Heap Profiler > > This implements a proof-of-concept sampling based heap profiler inspired by > tcmalloc's heap profiler [1] and Go's mprof/memprofile [2]. > > The basic idea is the sample allocations using a randomized Poisson process. At > any point in time we can cheaply request the set of live sample objects that > should be a representative sample of heap. Samples include stack-traces from the > allocation sites, making this an effective tool for memory leak debugging. > > Unlike AllocationTracking, this is intended to be cheap and usable online in > production. > > The proof-of-concept is only sampling new-space allocations at this point. > Support for sampling paged space and native allocations is anticipated in the > future. > > [1] http://goog-perftools.sourceforge.net/doc/heap_profiler.html > [2] http://blog.golang.org/profiling-go-programs > > Committed: https://crrev.com/e5a9947811db9c9e23557dbad27f8b8a349b3262 > Cr-Commit-Position: refs/heads/master@{#33448} TBR=jochen@chromium.org,alph@chromium.org,hpayer@chromium.org,yangguo@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1615173002 Cr-Commit-Position: refs/heads/master@{#33449}
-
ofrobots authored
This implements a proof-of-concept sampling based heap profiler inspired by tcmalloc's heap profiler [1] and Go's mprof/memprofile [2]. The basic idea is the sample allocations using a randomized Poisson process. At any point in time we can cheaply request the set of live sample objects that should be a representative sample of heap. Samples include stack-traces from the allocation sites, making this an effective tool for memory leak debugging. Unlike AllocationTracking, this is intended to be cheap and usable online in production. The proof-of-concept is only sampling new-space allocations at this point. Support for sampling paged space and native allocations is anticipated in the future. [1] http://goog-perftools.sourceforge.net/doc/heap_profiler.html [2] http://blog.golang.org/profiling-go-programs Review URL: https://codereview.chromium.org/1555553002 Cr-Commit-Position: refs/heads/master@{#33448}
-
machenbach authored
Revert of Array length reduction should throw in strict mode if it can't delete an element. (patchset #7 id:220001 of https://codereview.chromium.org/1587073003/ ) Reason for revert: [Sheriff] Breaks layout tests. Please fix upstream. https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/4077 Original issue's description: > Array length reduction should throw in strict mode if it can't delete an element. > > When accessor getter callback is called the v8::PropertyCallbackInfo::ShouldThrowOnError() is always false, since according to ES6 there's no difference between strict and non-strict property loads. For the setter case the v8::PropertyCallbackInfo::ShouldThrowOnError() returns true if the property is set in strict context. > > Interceptors follow same idea: for getter, enumerator and query callbacks the v8::PropertyCallbackInfo::ShouldThrowOnError() is always false, and for setter and deleter callback the v8::PropertyCallbackInfo::ShouldThrowOnError() returns true in strict context. > > This CL also cleans up the CallApiGetterStub and removes bogus asserts from [arm] Push(reg1, reg2, ..., regN) that prevented from pushing a set of registers containing duplicates. > > BUG=v8:4267 > LOG=Y > > Committed: https://crrev.com/1d3e837fcbbd9d9fd5e72dfe85dfd47c025f3c9f > Cr-Commit-Position: refs/heads/master@{#33438} TBR=verwaest@chromium.org,ishell@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4267 Review URL: https://codereview.chromium.org/1611313003 Cr-Commit-Position: refs/heads/master@{#33444}
-
ishell authored
When accessor getter callback is called the v8::PropertyCallbackInfo::ShouldThrowOnError() is always false, since according to ES6 there's no difference between strict and non-strict property loads. For the setter case the v8::PropertyCallbackInfo::ShouldThrowOnError() returns true if the property is set in strict context. Interceptors follow same idea: for getter, enumerator and query callbacks the v8::PropertyCallbackInfo::ShouldThrowOnError() is always false, and for setter and deleter callback the v8::PropertyCallbackInfo::ShouldThrowOnError() returns true in strict context. This CL also cleans up the CallApiGetterStub and removes bogus asserts from [arm] Push(reg1, reg2, ..., regN) that prevented from pushing a set of registers containing duplicates. BUG=v8:4267 LOG=Y Review URL: https://codereview.chromium.org/1587073003 Cr-Commit-Position: refs/heads/master@{#33438}
-
- 18 Jan, 2016 1 commit
-
-
verwaest authored
Review URL: https://codereview.chromium.org/1600353003 Cr-Commit-Position: refs/heads/master@{#33364}
-
- 15 Jan, 2016 2 commits
-
-
hablich authored
TBR=danno@chromium.org,machenbach@chromium.org Review URL: https://codereview.chromium.org/1590283002 Cr-Commit-Position: refs/heads/master@{#33333}
-
epertoso authored
BUG= Review URL: https://codereview.chromium.org/1582793004 Cr-Commit-Position: refs/heads/master@{#33319}
-
- 12 Jan, 2016 1 commit
-
-
hajimehoshi authored
This CL introduces ExternalStringResourceBase::IsCompressible. This CL is a preparation for CompressibleString, which can be compressed for memory reduction in Blink. We've found that JavaScript strings account for a relatively large part of Blink memory usage, and we are now trying to replace JavaScript String/ AtomicString with CompressibleString. When a string is compressed, the original char data is deleted and V8 pointer cache becomes invalid. This CL introduces isCompressible property and if an external string's isCompressble return true, this is stored short_external_*_map instead of external_*_map so that V8 always requires the char pointer whenever V8 needs the string data. BUG=chromium:574317 LOG=n Review URL: https://codereview.chromium.org/1490193002 Cr-Commit-Position: refs/heads/master@{#33224}
-
- 07 Jan, 2016 1 commit
-
-
littledan authored
- Each of the three deprecated Promise functions - Two nonstandard pieces of Intl functionality - Accesses of the RegExp.prototype.unicode getter on the prototype BUG=v8:3785,v8:3238,v8:4633 LOG=N R=adamk TBR=hpayer Review URL: https://codereview.chromium.org/1558113002 Cr-Commit-Position: refs/heads/master@{#33142}
-
- 22 Dec, 2015 4 commits
-
-
cbruni authored
Add API-accessors for [[ProxyTarget]], [[ProxyHandler]]. Additionally create new proxies and revoke proxies via the API. BUG=v8:1543 LOG=n Review URL: https://codereview.chromium.org/1542943002 Cr-Commit-Position: refs/heads/master@{#33013}
-
littledan authored
Reland of Add web compat workarounds for ES2015 RegExp semantics (patchset #3 id:40001 of https://codereview.chromium.org/1543723002/ ) Unexpectedly, websites depend on doing feature testing with RegExp.prototype.sticky and browser testing with RegExp.prototype.toString(). ES2015 newly throws exceptions for both of these. In order to enable shipping new ES2015 semantics, this patch puts in narrow workarounds for those two cases, keeping their old behavior. UseCounters are added for how often those particular cases come up, so we can see if it can be deprecated. This reland replaces problematic legacy const usage with var, to avoid issues with nosnap builds. R=yangguo CC=bmeurer BUG=v8:4637,v8:4617 LOG=Y CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1545633002 Cr-Commit-Position: refs/heads/master@{#33002}
-
bmeurer authored
Revert of Add web compat workarounds for ES2015 RegExp semantics (patchset #3 id:40001 of https://codereview.chromium.org/1543723002/ ) Reason for revert: Breaks nosnap: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap/builds/5883 Original issue's description: > Add web compat workarounds for ES2015 RegExp semantics > > Unexpectedly, websites depend on doing feature testing with > RegExp.prototype.sticky and browser testing with RegExp.prototype.toString(). > ES2015 newly throws exceptions for both of these. In order to enable shipping > new ES2015 semantics, this patch puts in narrow workarounds for those two > cases, keeping their old behavior. UseCounters are added for how often > those particular cases come up, so we can see if it can be deprecated. > > R=yangguo > BUG=v8:4637,v8:4617 > LOG=Y > CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel > > Committed: https://crrev.com/98f819c3e0c92d54a306cdacadda73cf96d21b52 > Cr-Commit-Position: refs/heads/master@{#32997} TBR=yangguo@google.com,yangguo@chromium.org,littledan@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4637,v8:4617 Review URL: https://codereview.chromium.org/1546493003 Cr-Commit-Position: refs/heads/master@{#32999}
-
littledan authored
Unexpectedly, websites depend on doing feature testing with RegExp.prototype.sticky and browser testing with RegExp.prototype.toString(). ES2015 newly throws exceptions for both of these. In order to enable shipping new ES2015 semantics, this patch puts in narrow workarounds for those two cases, keeping their old behavior. UseCounters are added for how often those particular cases come up, so we can see if it can be deprecated. R=yangguo BUG=v8:4637,v8:4617 LOG=Y CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1543723002 Cr-Commit-Position: refs/heads/master@{#32997}
-
- 20 Dec, 2015 1 commit
-
-
jochen authored
R=vogelheim@chromium.org BUG=none LOG=y Review URL: https://codereview.chromium.org/1526643002 Cr-Commit-Position: refs/heads/master@{#32980}
-
- 17 Dec, 2015 1 commit
-
-
fmeawad authored
This is based on the Skia Implementation. More on the project can be found here: https://docs.google.com/a/chromium.org/document/d/1_4LAnInOB8tM_DLjptWiszRwa4qwiSsDzMkO4tU-Qes/edit#heading=h.p97rw6yt8o2j The V8 Tracing platform will replace the isolate->event_logger(). But since the current embedders (namely chromium) currently use the isolate->event_logger, I made the default implementation (event-tracer) call into isolate->event_logger if an event_logger was set. Once the embedders properly implement the interface (for example in chromium it would look like this: https://codereview.chromium.org/707273005/), the default implementation will be doing nothing. Once the embedders side is fixed, we will change how V8 uses the tracing framework beyond the call from Logger:CallEventLogger. (which would also include a d8 implementation) BUG=v8:4560 LOG=N Review URL: https://codereview.chromium.org/988893003 Cr-Commit-Position: refs/heads/master@{#32959}
-
- 16 Dec, 2015 1 commit
-
-
akodat authored
If many threads use the same Isolate (or many Isolates) and then terminate, their PerIsolateThreadData objects are never cleaned up, resulting in a slow memory leak and, worse, the PerIsolateThreadData chain getting larger and larger, adversely affecting performance. In this situation, embedders will now be encouraged to apply DiscardThreadSpecificMetadata against any Isolate a thread is done with, especially if the thread is about to terminate. Note that it is harmless to run DiscardThreadSpecificMetadata against an Isolate for which a thread has no thread data and per-Isolate thread data can be reestablished if a thread starts using an Isolate again after running DiscardThreadSpecificMetadata against it. It is, however, an embedder error to run DiscardThreadSpecificMetadata against an Isolate in thread with a Locker for the Isolate in the stack or against an Entered Isolate. This change cannot cause any change in behavior in existing apps as the only added coded can only be reached via the new DiscardThreadSpecificMetadata method. R=Jakob, jochen BUG= Review URL: https://codereview.chromium.org/1522703002 Cr-Commit-Position: refs/heads/master@{#32909}
-
- 11 Dec, 2015 2 commits
-
-
epertoso authored
Revert of Removes the Callee parameter from FunctionCallbackInfo. (patchset #1 id:1 of https://codereview.chromium.org/1510483002/ ) Reason for revert: Need to figure out a better solution for this. Original issue's description: > Removes the Callee parameter from FunctionCallbackInfo. > > This will help us to instantiate AccessorPair's getters and setters only when they are needed. > > BUG= > > Committed: https://crrev.com/2fe34ebdcdee0f21b88daa4098a7918e91abb8fb > Cr-Commit-Position: refs/heads/master@{#32759} TBR=jochen@chromium.org,verwaest@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG= Review URL: https://codereview.chromium.org/1520843002 Cr-Commit-Position: refs/heads/master@{#32787}
-
vogelheim authored
... using the RawMachineAssembler and the work in crrev.com/1407313004. The original change collided with crrev.com/1513543003. BUG=chromium:508898 LOG=Y Committed: https://crrev.com/515d9ccd8e6df7bf2ca01e2a55aaad30226399e1 Cr-Commit-Position: refs/heads/master@{#32742} patch from issue 1474543004 at patchset 260001 (http://crrev.com/1474543004#ps260001) Committed: https://crrev.com/ee5c38d7db907ff86dd4049721c0cb4bc90a6c4d Cr-Commit-Position: refs/heads/master@{#32753} patch from issue 1504713012 at patchset 20001 (http://crrev.com/1504713012#ps20001) Review URL: https://codereview.chromium.org/1518703002 Cr-Commit-Position: refs/heads/master@{#32786}
-
- 10 Dec, 2015 5 commits
-
-
epertoso authored
This will help us to instantiate AccessorPair's getters and setters only when they are needed. BUG= Review URL: https://codereview.chromium.org/1510483002 Cr-Commit-Position: refs/heads/master@{#32759}
-
vogelheim authored
Revert of Re-land FastAccessorBuilder. (patchset #2 id:20001 of https://codereview.chromium.org/1504713012/ ) Reason for revert: Meeh. Now "V8 Linux - gcmole" bot has issues; apparently due to a somewhat exotic builder configuration. Original issue's description: > Re-land FastAccessorBuilder. > > ... using the RawMachineAssembler and the work in crrev.com/1407313004. > > The original change collided with crrev.com/1513543003. > > BUG=chromium:508898 > LOG=Y > > Committed: https://crrev.com/515d9ccd8e6df7bf2ca01e2a55aaad30226399e1 > Cr-Commit-Position: refs/heads/master@{#32742} > > patch from issue 1474543004 at patchset 260001 (http://crrev.com/1474543004#ps260001) > > Committed: https://crrev.com/ee5c38d7db907ff86dd4049721c0cb4bc90a6c4d > Cr-Commit-Position: refs/heads/master@{#32753} TBR=epertoso@chromium.org,mstarzinger@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:508898 Review URL: https://codereview.chromium.org/1517683002 Cr-Commit-Position: refs/heads/master@{#32754}
-
vogelheim authored
... using the RawMachineAssembler and the work in crrev.com/1407313004. The original change collided with crrev.com/1513543003. BUG=chromium:508898 LOG=Y Committed: https://crrev.com/515d9ccd8e6df7bf2ca01e2a55aaad30226399e1 Cr-Commit-Position: refs/heads/master@{#32742} patch from issue 1474543004 at patchset 260001 (http://crrev.com/1474543004#ps260001) Review URL: https://codereview.chromium.org/1504713012 Cr-Commit-Position: refs/heads/master@{#32753}
-
vogelheim authored
Revert of Implement Fast Accessor Builder (patchset #14 id:260001 of https://codereview.chromium.org/1474543004/ ) Reason for revert: Broke the build, apparently. Original issue's description: > Implement FastAccessorBuilder. > > ... using the RawMachineAssembler and the work in cl/1407313004 > > BUG=chromium:508898 > LOG=Y > > Committed: https://crrev.com/515d9ccd8e6df7bf2ca01e2a55aaad30226399e1 > Cr-Commit-Position: refs/heads/master@{#32742} TBR=epertoso@chromium.org,bmeurer@chromium.org,jochen@chromium.org,mstarzinger@chromium.org,mvstanton@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:508898 Review URL: https://codereview.chromium.org/1513203002 Cr-Commit-Position: refs/heads/master@{#32744}
-
vogelheim authored
... using the RawMachineAssembler and the work in cl/1407313004 BUG=chromium:508898 LOG=Y Review URL: https://codereview.chromium.org/1474543004 Cr-Commit-Position: refs/heads/master@{#32742}
-
- 08 Dec, 2015 2 commits
-
-
mstarzinger authored
This was introduced due to a false positive by the linter script. We have blacklisted the "build/include_what_you_use" linter bucket in our presubmit.py wrapper for that reason. R=jochen@chromium.org Review URL: https://codereview.chromium.org/1509843002 Cr-Commit-Position: refs/heads/master@{#32679}
-
littledan authored
The Promise::Chain logic is moved to a helper function to avoid a violation of deprecated function usage. R=rossberg,jochen BUG=v8:3237 LOG=Y Review URL: https://codereview.chromium.org/1477023002 Cr-Commit-Position: refs/heads/master@{#32670}
-
- 07 Dec, 2015 1 commit
-
-
littledan authored
Fix some minor issues that the linter is complaining about R=jochen Review URL: https://codereview.chromium.org/1507823002 Cr-Commit-Position: refs/heads/master@{#32667}
-
- 04 Dec, 2015 2 commits
-
-
jochen authored
We should consider deprecating the message based API as well in the future. BUG=none R=yangguo@chromium.org LOG=y Review URL: https://codereview.chromium.org/1485333007 Cr-Commit-Position: refs/heads/master@{#32621}
-
cbruni authored
BUG=v8:1543 LOG=N Review URL: https://codereview.chromium.org/1496503002 Cr-Commit-Position: refs/heads/master@{#32616}
-
- 03 Dec, 2015 1 commit
-
-
jochen authored
Embedders should use the factory method that takes an Isolate* instead BUG=none R=vogelheim@chromium.org LOG=y Review URL: https://codereview.chromium.org/1494503003 Cr-Commit-Position: refs/heads/master@{#32573}
-