- 02 Jun, 2015 1 commit
-
-
verwaest authored
This also fixes issues with - kMaxUint32 being a valid length but not index cornercases - exotic integer objects masking "exotic indexes" even though its in the prototype chain - concating of holey sloppy arguments BUG=v8:4137 LOG=n Review URL: https://codereview.chromium.org/1159433003 Cr-Commit-Position: refs/heads/master@{#28754}
-
- 26 May, 2015 1 commit
-
-
erikcorry authored
* Hash code is now just done with a private own symbol instead of the hidden string, which predates symbols. * In the long run we should do all hidden properties this way and get rid of the hidden magic 0-length string with the zero hash code. The advantages include less complexity and being able to do things from JS in a natural way. * Initially, the performance of weak set regressed, because it's a little harder to do the lookup in C++. Instead of heroics in C++ to make things faster I moved some functionality into JS and got the performance back. JS is supposed to be good at looking up named properties on objects. * This also changes hash codes of Smis so that they are always Smis. Performance figures are in the comments to the code review. Summary: Most of js-perf-test/Collections is neutral. Set and Map with object keys are 40-50% better. WeakMap is -5% and WeakSet is +9%. After the measurements, I fixed global proxies, which cost 1% on most tests and 5% on the weak ones :-(. In the code review comments is a patch with an example of the heroics we could do in C++ to make lookup faster (I hope we don't have to do this. Instead of checking for the property, then doing a new lookup to insert it, we could do one lookup and handle the addition immediately). With the current benchmarks above this buys us nothing, but if we go back to doing more lookups in C++ instead of in stubs and JS then it's a win. In a similar vein we could give the magic zero hash code to the hash code symbol. Then when we look up the hash code we would sometimes see the table with all the hidden properties. This dual use of the field for either the hash code or the table with all hidden properties and the hash code is rather ugly, and this CL gets rid of it. I'd be loath to bring it back. On the benchmarks quoted above it's slightly slower than moving the hash code lookup to JS like in this CL. One worry is that the benchmark results above are more monomorphic than real world code, so may be overstating the performance benefits of moving to JS. I think this is part of a general issue we have with handling polymorphic code in JS and any solutions there will benefit this solution, which boils down to regular property access. Any improvement there will lift all boats. R=adamk@chromium.org, verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/1149863005 Cr-Commit-Position: refs/heads/master@{#28622}
-
- 29 Apr, 2015 1 commit
-
-
hpayer authored
Note, that it also moves incremental marking traces behind the --trace-incremental-marking flag. Other PrintF's of the GC should be moved as well to PrintPIDAndIsolate. BUG= Review URL: https://codereview.chromium.org/1109133002 Cr-Commit-Position: refs/heads/master@{#28135}
-
- 21 Apr, 2015 1 commit
-
-
svenpanne authored
Baby steps towards saner #includes... Review URL: https://codereview.chromium.org/1051393003 Cr-Commit-Position: refs/heads/master@{#27958}
-
- 20 Apr, 2015 1 commit
-
-
svenpanne authored
Review URL: https://codereview.chromium.org/1098863003 Cr-Commit-Position: refs/heads/master@{#27947}
-
- 10 Apr, 2015 1 commit
-
-
wingo authored
R=svenpanne@chromium.org LOG=N BUG= Review URL: https://codereview.chromium.org/1072333002 Cr-Commit-Position: refs/heads/master@{#27752}
-
- 07 Apr, 2015 1 commit
-
-
baptiste.afsa authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/1056543002 Cr-Commit-Position: refs/heads/master@{#27612}
-
- 24 Feb, 2015 1 commit
-
-
dcarney authored
R=bmeurer@chromium.org BUG= Review URL: https://codereview.chromium.org/947153002 Cr-Commit-Position: refs/heads/master@{#26809}
-
- 11 Feb, 2015 1 commit
-
-
rodolph.perfetta authored
BUG= Review URL: https://codereview.chromium.org/905383003 Cr-Commit-Position: refs/heads/master@{#26592}
-
- 05 Feb, 2015 1 commit
-
-
marja authored
size_t is the correct data type for this purpose. Our APIs (in particular ExternalSourceStream::GetMoreData) are already using it, and there were some static_casts to convert between them. This CL doesn't intend to fix all of V8, just the minimal sense-making part around scanner character streams. BUG= Review URL: https://codereview.chromium.org/864273005 Cr-Commit-Position: refs/heads/master@{#26449}
-
- 16 Jan, 2015 1 commit
-
-
Sven Panne authored
Contribution of PowerPC port (continuation of 422063005). The inital patch covers the core changes to the common files. Subsequent patches will cover changes to common files to support AIX and to update the ppc directories so they are current with the changes in the rest of the project. This is based off of the GitHub repository https://github.com/andrewlow/v8ppc BUG= R=svenpanne@chromium.org, danno@chromium.org, sevnpanne@chromium.org Review URL: https://codereview.chromium.org/817143002 Cr-Commit-Position: refs/heads/master@{#26091}
-
- 13 Jan, 2015 1 commit
-
-
Sven Panne authored
We could use BoolToInt consistently, but for now let's just fix the warnings. R=jochen@chromium.org Review URL: https://codereview.chromium.org/825913005 Cr-Commit-Position: refs/heads/master@{#26037}
-
- 18 Dec, 2014 1 commit
-
-
jochen authored
The input string is not necessarily zero terminated BUG=chromium:443230 R=adamk@chromium.org LOG=n Review URL: https://codereview.chromium.org/795383003 Cr-Commit-Position: refs/heads/master@{#25879}
-
- 05 Nov, 2014 1 commit
-
-
jkummerow@chromium.org authored
Shave this yak from orbit, it's the only way to be sure. BUG=chromium:427616 LOG=n R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/700963002 Cr-Commit-Position: refs/heads/master@{#25148} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 27 Oct, 2014 1 commit
-
-
mvstanton@chromium.org authored
This CL adds a bitset to describe the type of IC in each IC slot. This is necessary for clearing ICs of different types. With FLAG_vector_ics off (the current state), it's not required because CALL_IC is the only type of IC in the vector. R=ishell@chromium.org Review URL: https://codereview.chromium.org/679073002 Cr-Commit-Position: refs/heads/master@{#24911} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24911 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Oct, 2014 2 commits
-
-
bmeurer@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/656143004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24735 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mvstanton@chromium.org authored
BUG=v8:3605 LOG=N R=jkummerow@chromium.org, ulan@chromium.org Review URL: https://codereview.chromium.org/650073002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24732 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Oct, 2014 1 commit
-
-
mvstanton@chromium.org authored
It's good to have typing around this value. R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/641373002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24528 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Oct, 2014 1 commit
-
-
bmeurer@chromium.org authored
The StaticParameterTraits are broken by design, and cause way too much trouble. The compilers usually pick the wrong specialization (i.e. the default specialization is picked for Load and Phi even tho there is a specialization for MachineType), which is not only the reason why GVN is ineffective and slow, but can also lead to correctness issues in some rare cases. Also clean up some minor bugs/inconsistencies on the way. TEST=cctest,unittests R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/636893002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24437 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Oct, 2014 1 commit
-
-
jkummerow@chromium.org authored
Bonus: fix bitrot in (disabled) Hydrogen-BCH R=yangguo@chromium.org Review URL: https://codereview.chromium.org/623513002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24392 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Sep, 2014 1 commit
-
-
svenpanne@chromium.org authored
* Make the detailed deopt reason mandatory on x64, other platforms will follow in separate CLs. * Extracted and improved jump table entry sharing logic: When --trace-deopt is on, we get separate entries for different deopt reasons. This enables us to distinguish the several reasons single instructions can have. * Don't emit superfluous jump table comments: The bailout ID is still visible, and the jump table entry number is not interesting (but easy to determine if really needed). * Unify the internal name of the jump table member across platforms. R=jarin@chromium.org Review URL: https://codereview.chromium.org/595513002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24123 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Sep, 2014 1 commit
-
-
yangguo@chromium.org authored
BUG=chromium:412967 LOG=N R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/571903002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23938 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Sep, 2014 2 commits
-
-
yangguo@chromium.org authored
This reverts r23915. TBR=machenbach@chromium.org Review URL: https://codereview.chromium.org/569783003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23925 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=jkummerow@chromium.org BUG=chromium:412967 LOG=Y Review URL: https://codereview.chromium.org/568753002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23915 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Sep, 2014 1 commit
-
-
yangguo@chromium.org authored
R=jkummerow@chromium.org BUG=chromium:412967 LOG=Y Review URL: https://codereview.chromium.org/566583002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23876 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 10 Sep, 2014 1 commit
-
-
yangguo@chromium.org authored
R=dcarney@chromium.org, marja@chromium.org Review URL: https://codereview.chromium.org/559913002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23840 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Sep, 2014 2 commits
-
-
bmeurer@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/553843002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23767 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/544043002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23760 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Sep, 2014 1 commit
-
-
bmeurer@chromium.org authored
TEST=base-unittests,cctest,mjsunit R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/528993002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23617 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 Aug, 2014 1 commit
-
-
bmeurer@chromium.org authored
TBR=svenpanne@chromium.org Review URL: https://codereview.chromium.org/443823002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Aug, 2014 1 commit
-
-
bmeurer@chromium.org authored
This way we don't clash with the ASSERT* macros defined by GoogleTest, and we are one step closer to being able to replace our homegrown base/ with base/ from Chrome. R=jochen@chromium.org, svenpanne@chromium.org Review URL: https://codereview.chromium.org/430503007 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22812 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Jul, 2014 1 commit
-
-
yangguo@chromium.org authored
R=danno@chromium.org BUG=v8:3477 LOG=N Review URL: https://codereview.chromium.org/429603003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22674 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Jul, 2014 1 commit
-
-
svenpanne@chromium.org authored
This involves avoiding signed multiplication overflow, shifting too far and overflow during negation. R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/382153003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22351 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jul, 2014 1 commit
-
-
jochen@chromium.org authored
BUG=none R=yangguo@chromium.org LOG=n Review URL: https://codereview.chromium.org/369073002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22182 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Jun, 2014 1 commit
-
-
jochen@chromium.org authored
Also split v8-core independent methods from checks.h to base/logging.h and merge v8checks with the rest of checks. The CPU::FlushICache method is moved to CpuFeatures::FlushICache RoundUp and related methods are moved to base/macros.h Remove all layering violations from src/libplatform BUG=none R=jkummerow@chromium.org LOG=n Review URL: https://codereview.chromium.org/358363002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22092 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Jun, 2014 2 commits
-
-
marja@chromium.org authored
This is a reincarnation of r21841. The previous try was https://codereview.chromium.org/314603004/ but it regressed JSBench and morejs. BUG= R=rossberg@chromium.org Review URL: https://codereview.chromium.org/335293004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
haitao.feng@intel.com authored
R=verwaest@chromium.org Review URL: https://codereview.chromium.org/18014003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21955 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Jun, 2014 1 commit
-
-
marja@chromium.org authored
Plus the fixes on top. Reason: regresses benchmarks (JSBench) and perf (morejs). TBR=rossberg@chromium.org BUG=385404 LOG=N Review URL: https://codereview.chromium.org/345513003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21882 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Jun, 2014 1 commit
-
-
jochen@chromium.org authored
This will allow for using the RNG from platform files without depending on isolates. BUG=none R=bmeurer@chromium.org LOG=n Review URL: https://codereview.chromium.org/333053002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21879 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Jun, 2014 1 commit
-
-
jochen@chromium.org authored
Add wrappers to utils.h instead. BUG=none R=jkummerow@chromium.org LOG=n Review URL: https://codereview.chromium.org/328343003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21846 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-