- 09 Nov, 2011 15 commits
-
-
yangguo@chromium.org authored
TEST=test/mjsunit/string-slices.js Review URL: http://codereview.chromium.org/8510005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9936 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
Review URL: http://codereview.chromium.org/8508008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9935 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
R=erik.corry@gmail.com BUG= TEST= Review URL: http://codereview.chromium.org/8511010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9934 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
* Remove a couple of unused fields from the FunctionLiteral, ensure that all the bools are packed. * Rename SaveScope and LexicalScope in the parser. * Use an enum to generate the numbers 0..N and the dependent count, rather than static const ints. This is simpler to extend (coming in a future change). R=danno@chromium.org,keuchel@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8505012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9933 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
R=erik.corry@gmail.com Review URL: http://codereview.chromium.org/8477030 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9932 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=erik.corry@gmail.com BUG=v8:1817 TEST=mozilla/js1_5/Regress/regress-360969-05 Review URL: http://codereview.chromium.org/8508006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9931 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
Replaced FIRST_PHANTOM_PROPERTY_TYPE by a predicate. Removed the (hopefully) last default cases for switches on PropertyType. Benchmarks show that both changes are performace-neutral. Now every value of PropertyType should either be handled by an explicit case in a switch or by an equality operator. Therefore, the C++ compiler should finally be able to tell us which places to touch when changing PropertyType. Review URL: http://codereview.chromium.org/8506004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9930 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Port r9916 (d2195670) Original commit message: Change calling convention for CallFunction stub. Some fixes regarding strict mode call traps. BUG= TEST= Review URL: http://codereview.chromium.org/8509004 Patch from Gergely Kis <gergely@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9929 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
Each such string requires small amount of heap memory. Heap snapshot generator copies all the strings into internal hash map for future use. The each copy requires much more memory than original v8 string. I made a workaround for this. The snapshot will copy only first 1024 symbols. A simple drive-by fix was made for a performance problem in ToCString implementation. BUG=v8:1816 TEST=none Review URL: http://codereview.chromium.org/8509003 Patch from Ilya Tikhonovsky <loislo@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9928 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
sync the OpenBSD code with Linux. Committing http://codereview.chromium.org/8499016/ for Robert Nagy git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9927 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
BUG= TEST= Review URL: http://codereview.chromium.org/8507008 Patch from Gergely Kis <gergely@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9926 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
TBR=svenpanne@chromium.org Review URL: http://codereview.chromium.org/8509007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9925 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
R=svenpanne@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8509005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9924 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Port r9909 (56c8728aa). Original commit message: Test at the bottom in the unwind loop. Eliminate the possibility of a useless move to the eax/rax/r0 register (currently impossible because this function has two call sites). Do not explicitly zero the context because we've already saved 0 as the context in the handler. BUG= TEST= Review URL: http://codereview.chromium.org/8507007 Patch from Gergely Kis <gergely@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9923 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
This makes the store buffer size depend on the pointer size so that store buffers can hold the same number of entries on all architectures. The number of pages marked scan-on-scavenge should decrease on x64 and performance of splay should drastically improve on x64. R=erik.corry@gmail.com Review URL: http://codereview.chromium.org/8498013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Nov, 2011 18 commits
-
-
yangguo@chromium.org authored
BUG=103259 TEST=regress-103259.js Review URL: http://codereview.chromium.org/8498011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9917 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rossberg@chromium.org authored
Change calling convention for CallFunction stub. Some fixes regarding strict mode call traps. R=kmillikin@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8318014 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9916 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
keuchel@chromium.org authored
This reverts r9896 "Revert r9870 due to browser-test failures." See below for the diff from the previous version for the ia32 platform. The code for other platforms has been changed accordingly. TEST=mjsunit/compiler/lazy-const-lookup.js diff --git a/src/ia32/full-codegen-ia32.cc b/src/ia32/full-codegen-ia32.cc index 2cbf518..1990f2f 100644 --- a/src/ia32/full-codegen-ia32.cc +++ b/src/ia32/full-codegen-ia32.cc @@ -1258,13 +1258,17 @@ void FullCodeGenerator::EmitVariableLoad(VariableProxy* proxy) { // binding is initialized: // function() { f(); let x = 1; function f() { x = 2; } } // - // Check that we always have valid source position. - ASSERT(var->initializer_position() != RelocInfo::kNoPosition); - ASSERT(proxy->position() != RelocInfo::kNoPosition); - bool skip_init_check = - var->mode() != CONST && - var->scope()->DeclarationScope() == scope()->DeclarationScope() && - var->initializer_position() < proxy->position(); + bool skip_init_check; + if (var->scope()->DeclarationScope() != scope()->DeclarationScope()) { + skip_init_check = false; + } else { + // Check that we always have valid source position. + ASSERT(var->initializer_position() != RelocInfo::kNoPosition); + ASSERT(proxy->position() != RelocInfo::kNoPosition); + skip_init_check = var->mode() != CONST && + var->initializer_position() < proxy->position(); + } + if (!skip_init_check) { // Let and const need a read barrier. Label done; Review URL: http://codereview.chromium.org/8479034 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9915 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
BUG=none TEST=none Review URL: http://codereview.chromium.org/8496011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9914 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
R=jkummerow@chromium.org BUG=none TEST=none Review URL: http://codereview.chromium.org/8495012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9913 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
BUG=v8:1669 TEST=cctest/test-heap/CollectingAllAvailableGarbageShrinksNewSpace Review URL: http://codereview.chromium.org/8065003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9912 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
This also refactors the way we set the length of an arrays' backing store to use the new elements accessor interface. The actual fix is in DictionaryElementsAccessor::SetLengthWithoutNormalize() where we first search for non-deletable elements according to ES5 section 15.4.5.2 specifications. Snippet from the specification: Attempting to set the length property of an Array object to a value that is numerically less than or equal to the largest numeric property name of an existing array indexed non-deletable property of the array will result in the length being set to a numeric value that is one greater than that largest numeric property name. R=danno@chromium.org TEST=test262/15.4.4.??-7-b-16 Review URL: http://codereview.chromium.org/8372064 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9911 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/8503010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9910 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kmillikin@chromium.org authored
Test at the bottom in the unwind loop. Eliminate the possibility of a useless move to the eax/rax/r0 register (currently impossible because this function has two call sites). Do not explicitly zero the context because we've already saved 0 as the context in the handler. R=fschneider@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8493008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9909 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/8497010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9908 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
This moves PropertyType and its related predicate out of v8globals.h, where it didn't belong. Review URL: http://codereview.chromium.org/8501006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9907 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
max heap size on 64 bit from ca. 300Mbytes to ca. 200Mbytes on Ulan's splay variant. On 32 bit not much change. Review URL: http://codereview.chromium.org/8494012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9906 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
In case of a degenerated CFG like in the example below processing predecessors in the wrong order yields n^2 runtime. do { if (x) break; if (x) break; if (x) break; if (x) break; if (x) break; if (x) break; if (x) break; if (x) break; if (x) break; if (x) break; if (x) break; // etc. } while (false); Reversing iteration order avoids this. Review URL: http://codereview.chromium.org/8502012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9905 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
Review URL: http://codereview.chromium.org/8351073 Patch from Jing Zhao <jingzhao@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9904 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
R=svenpanne@chromium.org BUG=none TEST=none Review URL: http://codereview.chromium.org/8493024 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9903 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
There was a test failure on x64 mozilla tests. TBR=ricow@chromium.org Review URL: http://codereview.chromium.org/8495011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9902 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Hydrogen should optimize not only SMI clauses, but clauses with string literals too. Patch from fedor.indutny <fedor.indutny@gmail.com>. R=vegorov@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/8373029 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9901 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
Do not rely on 'default' clauses or 'if's when analysing a PropertyType, because this makes it hard to find the relevant places when a new type is added. Note that the detection of "phantom property types" is left untouched, because this might have a performance impact, especially for the GC (to be investigated). This is a preliminary step for introducing a new kind of map transition. Review URL: http://codereview.chromium.org/8491016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9900 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Nov, 2011 7 commits
-
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/8467014 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9899 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
keuchel@chromium.org authored
This reverts commit 4d5b5f12aac932ad892c7b6f152b6168708d4210. Review URL: http://codereview.chromium.org/8493006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9896 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ricow@chromium.org authored
Review URL: http://codereview.chromium.org/8494005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9893 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
old space size. Review URL: http://codereview.chromium.org/8491009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9892 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
Port r9875 (97dc1e0e). BUG= TEST= Review URL: http://codereview.chromium.org/8467008 Patch from Gergely Kis <gergely@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9891 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
R=yangguo@chromium.org Review URL: http://codereview.chromium.org/8492005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9888 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
keuchel@chromium.org authored
Port r9870 (959ec43). Original commit message: This depends on http://codereview.chromium.org/8352039 and http://codereview.chromium.org/8423005 . BUG= TEST= Review URL: http://codereview.chromium.org/8467007 Patch from Gergely Kis <gergely@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@9887 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-