- 01 Mar, 2012 1 commit
-
-
mstarzinger@chromium.org authored
Generates inlined code for object allocation specific to the initial map of the given constructor function. Also forces completion of inobject slack tracking while crankshafting to finalize instance size of these objects. R=vegorov@chromium.org TEST=mjsunit/compiler/alloc-object Review URL: https://chromiumcodereview.appspot.com/9370019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10881 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Feb, 2012 13 commits
-
-
ulan@chromium.org authored
R=jkummerow@chromium.org BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9535010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10874 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
Review URL: https://chromiumcodereview.appspot.com/9535006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10873 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: https://chromiumcodereview.appspot.com/9539010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10872 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9536011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10871 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Review URL: https://chromiumcodereview.appspot.com/9286002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10870 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9533007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10869 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
This reverts r10847. Review URL: https://chromiumcodereview.appspot.com/9536010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10868 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
R=jkummerow@chromium.org Review URL: https://chromiumcodereview.appspot.com/9536005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10867 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
R=jkummerow@chromium.org BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9496003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10866 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Port r10794 (654fe910). Original commit message: Only JSObject enumerables with enum cache (fast case properties, no interceptors, no enumerable properties on the prototype) are supported. HLoadKeyedGeneric with keys produced by for-in enumeration are recognized and rewritten into direct property load by index. For this enum-cache was extended to store property indices in a separate array (see handles.cc). New hydrogen instructions: - HForInPrepareMap: checks for-in fast case preconditions and returns map that contains enum-cache; - HForInCacheArray: extracts enum-cache array from the map; - HCheckMapValue: map check with HValue map instead of immediate; - HLoadFieldByIndex: load fast property by it's index, positive indexes denote in-object properties, negative - out of object properties; Changed hydrogen instructions: - HLoadKeyedFastElement: added hole check suppression for loads from internal FixedArrays that are knows to have no holes inside. BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9453009 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10865 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: https://chromiumcodereview.appspot.com/9496010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10864 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Port r10857 (87e52e7). Original commit message: This is a very mechanical change to reduce the number of calls to Isolate::Current that come with every plain new-allocation. BUG= TEST= Patch from Daniel Kalmar <kalmard@homejinni.com>. Review URL: https://chromiumcodereview.appspot.com/9511003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10863 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
Port r10849 (b0fe79c). Also included: Fixed a bug in GenerateRecordCallTarget. This bug prevented certain functions from being registered as Monomorphic and thus prevented them from being inlined using the new system (b0fe79c). BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9511002 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10862 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Feb, 2012 13 commits
-
-
ulan@chromium.org authored
Review URL: https://chromiumcodereview.appspot.com/9464054 Patch from Iliyan Malchev <malchev@google.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10861 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
This CL is a step towards removing ZoneObject's new operator without a Zone parameter, which uses Isolate::Current. For e.g. the bulletben benchmark, this CL reduces the number of calls to this new operator by roughly 120k, but we are still left with 780k calls from other sites... Review URL: https://chromiumcodereview.appspot.com/9487010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10860 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
This removes roughly 5k invocations of Isolate::Current from the string-tagcloud benchmark. Review URL: https://chromiumcodereview.appspot.com/9490009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10859 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG=v8:1900, 115073 Review URL: https://chromiumcodereview.appspot.com/9495005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10858 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
This is a very mechanical change to reduce the number of calls to Isolate::Current that come with every plain new-allocation. BUG=v8:1802 Review URL: https://chromiumcodereview.appspot.com/9491004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10857 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
This removes approx. 12k calls of Isolate::Current() in string-tagcloud. Review URL: https://chromiumcodereview.appspot.com/9490004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10856 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=yangguo@chromium.org BUG=v8:849 Review URL: https://chromiumcodereview.appspot.com/9491005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10855 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
Define modules as module declarations. Separate function declarations from var declarations. R=jkummerow@chromium.org BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9460064 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10854 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
R=yangguo@chromium.org BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9495004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10851 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=ulan@chromium.org Review URL: https://chromiumcodereview.appspot.com/9495003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10850 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=vegorov@chromium.org,kmillikin@chromium.org Review URL: https://chromiumcodereview.appspot.com/9304001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10849 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
dictionary. This fixes http://code.google.com/p/v8/issues/detail?id=1964 "Closure-uri benchmark is sensitive to hash seed". Review URL: https://chromiumcodereview.appspot.com/9463012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10848 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
With transitions in AccessorPairs, it is not enough to look at the PropertyType alone to decide whether we look at a property or not: For objects with JavaScript accessors, we have to look into the AccessorPair itself and see if one of its 2 parts is actually a JavaScript accessor. Therefore, a predicate with a PropertyType argument alone doesn't make sense anymore, we might need the associated value, too. Things are complicated by the fact that the holder in a LookupResult can be NULL, so we must be careful to retrieve its value only when it is really needed. To achieve the needed call-by-name semantics, a new Entry is introduced, which is basically a closure over a DescriptorArray and an index into this array (C++0x to the rescue!). GCC is clever enough to inline this class, so we pay no runtime penalty for this abstraction. It's all a bit ugly, but this is caused by the current structure of Descriptor, DescriptorArray and LookupResult: Things would be much easier if DescriptorArray were, well, an array of Descriptors, and LookupResult were a 'Maybe Descriptor' (in Haskell-terms). Review URL: https://chromiumcodereview.appspot.com/9466047 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10847 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 Feb, 2012 11 commits
-
-
mikhail.naganov@gmail.com authored
This patch changes the signature of the v8::HeapGraphNode::GetRetainedSize method, but it's not used in Chromium, and it should be easy for other clients (if any) to adjust to this change. BUG=none TEST=none Review URL: https://chromiumcodereview.appspot.com/9466014 Patch from Alexei Filippov <alexeif@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Adds a new API where the host can supply a callback function. The callback function can resolve the location of a return address on stack to the location where a return-address rewriting profiler stashed the original return address. Review URL: https://chromiumcodereview.appspot.com/9401019 Patch from Sigurður Ásgeirsson <siggi@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10845 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Additionally force increment instruction to use int32 representation. R=fschneider@google.com BUG=http://crbug.com/115646 TEST=test/mjsunit/compiler/optimized-for-in.js Review URL: https://chromiumcodereview.appspot.com/9463052 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10844 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
Port r10834 (0ce8cc524). Note: this commit is a simple fix-up for FullCodeGenerator::self_optimization_header_size(). BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9466050 Patch from Daniel Kalmar <kalmard@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10843 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG=v8:1853 Review URL: https://chromiumcodereview.appspot.com/9460059 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10842 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=ulan@chromium.org BUG= TEST= Review URL: https://chromiumcodereview.appspot.com/9455087 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10839 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
R=yangguo@chromium.org Review URL: https://chromiumcodereview.appspot.com/9463049 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10838 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
Review URL: https://chromiumcodereview.appspot.com/9447098 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10837 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
Profiler experiments: Don't add self-optimization headers to functions that can't be optimized anyway Review URL: https://chromiumcodereview.appspot.com/9460058 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10836 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
Review URL: https://chromiumcodereview.appspot.com/9471008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10835 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
Review URL: https://chromiumcodereview.appspot.com/9466012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10834 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Feb, 2012 2 commits
-
-
mstarzinger@chromium.org authored
R=rossberg@chromium.org TEST=test262/S15.10.2.11_A1_T? Review URL: https://chromiumcodereview.appspot.com/9466010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10833 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
Baseline: http://codereview.chromium.org/9401008/ R=lrn@chromium.org,mstarzinger@chromium.org BUG=v8:1957 TEST=mjsunit/harmony/module-parsing Review URL: https://chromiumcodereview.appspot.com/9422001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@10832 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-