- 16 Oct, 2013 1 commit
-
-
yangguo@chromium.org authored
BUG= R=rossberg@chromium.org Review URL: https://codereview.chromium.org/26955004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17238 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Oct, 2013 1 commit
-
-
ulan@chromium.org authored
This introduces a global weak hash table that maps objects embedded in optimized code to dependent code lists. Using this table we can deoptimize optimized code whenever a weak object embedded in the code dies. BUG=v8:2073 R=hpayer@chromium.org, mstarzinger@chromium.org Review URL: https://chromiumcodereview.appspot.com/23477061 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17102 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Sep, 2013 1 commit
-
-
jochen@chromium.org authored
That will make it easier to turn on handle zapping alone and experiment with it. R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/25250002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17004 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Sep, 2013 1 commit
-
-
mstarzinger@chromium.org authored
R=yangguo@chromium.org Review URL: https://codereview.chromium.org/24545002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16937 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Sep, 2013 1 commit
-
-
mstarzinger@chromium.org authored
R=verwaest@chromium.org Review URL: https://codereview.chromium.org/22934006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16708 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Aug, 2013 1 commit
-
-
mstarzinger@chromium.org authored
R=verwaest@chromium.org Review URL: https://codereview.chromium.org/23819003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16455 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Aug, 2013 1 commit
-
-
mstarzinger@chromium.org authored
R=rossberg@chromium.org Review URL: https://codereview.chromium.org/23280004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16210 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Jul, 2013 1 commit
-
-
mstarzinger@chromium.org authored
R=verwaest@chromium.org Review URL: https://codereview.chromium.org/19594002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15738 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Jul, 2013 2 commits
-
-
verwaest@chromium.org authored
Revert "Introduce a handle zapping setting, and enable it by default for release and debug" due to performance impact. R=jochen@chromium.org Review URL: https://chromiumcodereview.appspot.com/18325027 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15558 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
The checks are split out from "extra checks" which are too expensive to turn on by default. R=danno@chromium.org Review URL: https://codereview.chromium.org/18316006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15548 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Jul, 2013 1 commit
-
-
mstarzinger@chromium.org authored
R=rossberg@chromium.org Review URL: https://codereview.chromium.org/18348013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15508 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jul, 2013 1 commit
-
-
yurys@chromium.org authored
This significantly reduces amount of files to be recompiled after changes in cpu-profiler.h and its dependencies. BUG=None R=loislo@chromium.org, yangguo@chromium.org Review URL: https://codereview.chromium.org/18522004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15482 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Jul, 2013 1 commit
-
-
mstarzinger@chromium.org authored
R=rossberg@chromium.org Review URL: https://codereview.chromium.org/18089024 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15455 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Jun, 2013 2 commits
-
-
rossberg@chromium.org authored
Not used yet, only unit tests. R=jkummerow@chromium.org, svenpanne@chromium.org BUG= Review URL: https://codereview.chromium.org/16154027 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14957 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=jkummerow@chromium.org BUG= Review URL: https://chromiumcodereview.appspot.com/16171017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14956 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Jun, 2013 1 commit
-
-
yangguo@chromium.org authored
R=dslomov@chromium.org BUG= Review URL: https://chromiumcodereview.appspot.com/16226007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14929 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jun, 2013 1 commit
-
-
yangguo@chromium.org authored
R=svenpanne@chromium.org BUG= Review URL: https://chromiumcodereview.appspot.com/15691017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14919 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 May, 2013 1 commit
-
-
mstarzinger@chromium.org authored
This makes sure that closed handle scopes are properly zapped even if an enclosing NoHandleAllocation shrunk the limit. It also unifies the code that performs scope closing for internal and external handle scopes. R=svenpanne@chromium.org TEST=cctest/test-api/NestedLockersNoTryCatch Review URL: https://codereview.chromium.org/16004006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14876 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Apr, 2013 1 commit
-
-
yangguo@chromium.org authored
R=mvstanton@chromium.org BUG= Review URL: https://chromiumcodereview.appspot.com/14403015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14388 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Apr, 2013 2 commits
-
-
hpayer@chromium.org authored
BUG= Review URL: https://codereview.chromium.org/12880017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14211 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
Specifically: - Introduce Symbol and SymbolObject classes. - Generalise Object::Has and Object::Delete to arbitrary Value-typed keys. - Generalise some places in the API implementation from String to Name. It is not possible to intercept symbol-named properties. That is consistent with the idea that symbols are private and should not leak. R=svenpanne@chromium.org BUG=v8:2158 Review URL: https://codereview.chromium.org/13626002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14210 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Mar, 2013 2 commits
-
-
mstarzinger@chromium.org authored
R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/12893014 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14049 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/12989019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14048 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Mar, 2013 1 commit
-
-
yangguo@chromium.org authored
BUG= Review URL: https://chromiumcodereview.appspot.com/12832002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13935 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Feb, 2013 1 commit
-
-
svenpanne@chromium.org authored
Unified parameter order of CreateHandle with the rest of v8 on the way. A few Isolate::Current()s had to be introduced, which is not nice, and not every place will win a beauty contest, but we can clean this up later easily in smaller steps. Review URL: https://codereview.chromium.org/12300018 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13717 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Feb, 2013 1 commit
-
-
svenpanne@chromium.org authored
Improved Frames and their iterators on the way, too. BUG=v8:2487 Review URL: https://codereview.chromium.org/12254007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13674 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Jan, 2013 1 commit
-
-
yangguo@chromium.org authored
With parallel recompilation enabled, objects made accessible by handles may have changed between graph construction and graph optimization. Therefore we must not assume that information on those objects remain the same between those two phases. To police this, we forbid handle dereferencing during graph optimization. Exceptions to this rule are: - Dereferencing the handle to obtain the raw location of the object. This is safe since parallel recompilation acquires RelocationLock - Some places that dereference the handle for a type check. These are checked to be safe on a case-by-case basis. R=jkummerow@chromium.org BUG= Review URL: https://chromiumcodereview.appspot.com/12049012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13475 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jan, 2013 1 commit
-
-
yangguo@chromium.org authored
R=yangguo@chromium.org BUG= Review URL: https://chromiumcodereview.appspot.com/11725006 Patch from Dan Carney <dcarney@google.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13302 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Nov, 2012 1 commit
-
-
svenpanne@chromium.org authored
Thread the Isolate through FindCodeInCache, FindCodeInSpecialCache and SetProperty. Reduced the number of TLS accesses while running the Octane benchmark down to 19% compared to the beginning of the cleanups. Review URL: https://codereview.chromium.org/11411033 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13030 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Nov, 2012 1 commit
-
-
svenpanne@chromium.org authored
For Octane, the number of calls go down from 7341629 to 1947880, i.e. they are reduced by more than 73%. TLS access is not especially cheap, so this exercise seems worthwhile. Review URL: https://codereview.chromium.org/11412007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12979 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Nov, 2012 1 commit
-
-
jkummerow@chromium.org authored
GetScriptOrigin is used for DevTools instrumentation. If inspected call-site is inside "eval" then returned script name is "undefined". To fix this problem we can use the "nameOrSourceURL" method of script-wrapper. This is a re-upload of https://codereview.appspot.com/6811090/ for the purpose of landing. BUG=159413 Review URL: https://codereview.chromium.org/11312185 Patch from Eugene Klyuchnikov <eustas@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12929 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 Nov, 2012 1 commit
-
-
rossberg@chromium.org authored
In more detail: - Set observation bit for observed objects (and make NormalizedMapCache respect it). - Mutation of observed objects is always delegated from ICs to runtime. - Introduce JS runtime function for notifying generated changes. - Invoke this function in the appropriate places (including some local refactoring). - Inclusion of oldValue field is not yet implemented, nor element properties. Also, shortened flag to --harmony-observation. R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/11347037 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12867 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Sep, 2012 1 commit
-
-
verwaest@chromium.org authored
This CL adds multiple things: Transition arrays do not directly point at their descriptor array anymore, but rather do so via an indirect pointer (a JSGlobalPropertyCell). An ownership bit is added to maps indicating whether it owns its own descriptor array or not. Maps owning a descriptor array can pass on ownership if a transition from that map is generated; but only if the descriptor array stays exactly the same; or if a descriptor is added. Maps that don't have ownership get ownership back if their direct child to which ownership was passed is cleared in ClearNonLiveTransitions. To detect which descriptors in an array are valid, each map knows its own NumberOfOwnDescriptors. Since the descriptors are sorted in order of addition, if we search and find a descriptor with index bigger than this number, it is not valid for the given map. We currently still build up an enumeration cache (although this may disappear). The enumeration cache is always built for the entire descriptor array, even if not all descriptors are owned by the map. Once a descriptor array has an enumeration cache for a given map; this invariant will always be true, even if the descriptor array was extended. The extended array will inherit the enumeration cache from the smaller descriptor array. If a map with more descriptors needs an enumeration cache, it's EnumLength will still be set to invalid, so it will have to recompute the enumeration cache. This new cache will also be valid for smaller maps since they have their own enumlength; and use this to loop over the cache. If the EnumLength is still invalid, but there is already a cache present that is big enough; we just initialize the EnumLength field for the map. When we apply ClearNonLiveTransitions and descriptor ownership is passed back to a parent map, the descriptor array is trimmed in-place and resorted. At the same time, the enumeration cache is trimmed in-place. Only transition arrays contain descriptor arrays. If we transition to a map and pass ownership of the descriptor array along, the child map will not store the descriptor array it owns. Rather its parent will keep the pointer. So for every leaf-map, we find the descriptor array by following the back pointer, reading out the transition array, and fetching the descriptor array from the JSGlobalPropertyCell. If a map has a transition array, we fetch it from there. If a map has undefined as its back-pointer and has no transition array; it is considered to have an empty descriptor array. When we modify properties, we cannot share the descriptor array. To accommodate this, the child map will get its own transition array; even if there are not necessarily any transitions leaving from the child map. This is necessary since it's the only way to store its own descriptor array. Review URL: https://chromiumcodereview.appspot.com/10909007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12492 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Jul, 2012 1 commit
-
-
sanjoy@chromium.org authored
BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10807024 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Jul, 2012 1 commit
-
-
sanjoy@chromium.org authored
HandleScopeImplementer (since it isn't something specific to a particular thread executing on an Isolate). This patch ensures correct traversal of the handles when when multiple compilations are queued up. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10778036 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12134 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Jul, 2012 1 commit
-
-
mstarzinger@chromium.org authored
BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/10735024 Patch from Jochen Eisinger <jochen@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 Jul, 2012 1 commit
-
-
sanjoy@chromium.org authored
Add a second kind of HandleScope that ties the lifetime of Handles created in its scope to the lifetime of a given CompilationInfo. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10697094 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11998 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Jun, 2012 1 commit
-
-
sanjoy@chromium.org authored
BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10698031 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11943 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 Jun, 2012 1 commit
-
-
sanjoy@chromium.org authored
Add a second kind of HandleScope that ties the lifetime of Handles created in its scope to the lifetime of a given CompilationInfo. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/10640012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11939 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Mar, 2012 1 commit
-
-
erik.corry@gmail.com authored
Review URL: https://chromiumcodereview.appspot.com/9600009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11007 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-