- 02 Oct, 2014 16 commits
-
-
yangguo@chromium.org authored
R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/604373008 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24391 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
This tiny change shaves off 112MB from the peak memory usage in the bug mentioned below, more to come... BUG=417697 LOG=y R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/611393004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24390 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
The idea behind of this solution is to use the existing "relocation info" instead of consumption the CodeLinePosition events emitted by the V8 compilers. During generation code and relocation info are generated simultaneously. When code generation is done you each code object has associated "relocation info". Relocation information lets V8 to mark interesting places in the generated code: the pointers that might need to be relocated (after garbage collection), correspondences between the machine program counter and source locations for stack walking. This patch: 1. Add more source positions info in reloc info to make it suitable for source level mapping. The amount of data should not be increased dramatically because (1) V8 already marks interesting places in the generated code and (2) V8 does not write redundant information (it writes a pair (pc_offset, pos) only if pos is changed and skips other). I measured it on Octane benchmark - for unoptimized code the number of source positions may achieve 2x ('lin_solve' from NavierStokes benchmark). 2. When a sample happens, CPU profiler finds a code object by pc, then use its reloc info to match the sample to a source line. If a source line is found that hit counter is increased by one for this line. 3. Add a new public V8 API to get the hit source lines by CDT CPU profiler. Note that it's expected a minor patch in Blink to pack the source level info in JSON to be shown. 4.Add a test that checks how the samples are distributed through source lines. It tests two cases: (1) relocation info created during code generation and (2) relocation info associated with precompiled function's version. Patch from Denis Pravdin <denis.pravdin@intel.com> BUG=None LOG=Y R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/616963005 Patch from Denis Pravdin <denis.pravdin@intel.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24389 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=bmeurer@chromium.org BUG= Review URL: https://codereview.chromium.org/615223005 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24388 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=bmeurer@chromium.org BUG= Review URL: https://codereview.chromium.org/619663002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24387 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
We can only access to external typed arrays; lowering of internal typed arrays would require a map check plus eager deoptimization. Also embed the array buffer reference directly instead of embedding the typed array. TEST=cctest,mjsunit,unittests R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/621863002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24386 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
BUG= R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/622713003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24385 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
There will be at least 2MB of guard pages around allocatable code memory BUG=none R=svenpanne@chromium.org LOG=n Review URL: https://codereview.chromium.org/617103006 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24384 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
On Win64, the first page is reserved for the embedder. BUG=v8:3597 R=svenpanne@chromium.org LOG=n Review URL: https://codereview.chromium.org/619233003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24383 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
BUG=none R=hpayer@chromium.org LOG=y Review URL: https://codereview.chromium.org/618323007 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24382 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=marja@chromium.org Review URL: https://codereview.chromium.org/617123006 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24381 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= R=yangguo@chromium.org Review URL: https://codereview.chromium.org/619853007 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24380 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= R=ulan@chromium.org Review URL: https://codereview.chromium.org/583593006 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24379 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/623453003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24378 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/606083004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24377 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
API=v8::Object::GetIsolate() LOG=Y R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/617263003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24376 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Oct, 2014 24 commits
-
-
marja@chromium.org authored
This adds a bunch of checks so we hopefully get more detailed information about what exactly goes wrong. R=jochen@chromium.org BUG= Review URL: https://codereview.chromium.org/619583005 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24373 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dusan.milosavljevic@imgtec.com authored
TEST=cctest/test-code-stubs-mips64/ConvertDToI BUG= R=paul.lind@imgtec.com Review URL: https://codereview.chromium.org/616853004 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24372 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
rodolph.perfetta@arm.com authored
Those tests were disabled because of an issue in TruncateDoubleToI which has been fixed since. BUG= R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/605253002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24371 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
TBR=bmeurer@chromium.org Review URL: https://codereview.chromium.org/614393002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24370 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24369 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=bmeurer@chromium.org TEST=cctest/test-run-stackcheck/TerminateAtMethodEntry Review URL: https://codereview.chromium.org/621833003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24367 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
BUG=chromium:417508 LOG=y R=jarin@chromium.org Review URL: https://codereview.chromium.org/612423002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24366 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
These are some changes split off from https://codereview.chromium.org/422063005 frames-inl.h, frames.h based on https://github.com/andrewlow/v8ppc/commit/05db7d2d714c44bd4e0b710fdaa51d34938aaa27 On 64bit big endian systems, the integer value is in the second slot, thus we need a new offset. objects-inl.h, objects.h based on https://github.com/andrewlow/v8ppc/commit/09b680b2af7412fe8fa5a3a01f1b8e29698d7797 Similarly, the hash slot is an integer field and we need to do the right thing on 64bit big endian systems objects.cc based on: https://github.com/andrewlow/v8ppc/commit/065742b0783b0705d9f9711198248a92bac11d85 Prettier printing of constant pools test-strings.cc based on: https://github.com/andrewlow/v8ppc/commit/9889d60cd6e68e0d248c4a362ffdff0755b92aec endian fixes BUG= R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/551803004 Patch from Andrew Low <andrew_low@ca.ibm.com>. git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24365 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dslomov@chromium.org authored
R=yangguo@chromium.org Review URL: https://codereview.chromium.org/621833002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24364 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
TBR=bmeurer@chromium.org LOG=n BUG=none Review URL: https://codereview.chromium.org/615423002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24363 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=dslomov@chromium.org Review URL: https://codereview.chromium.org/618213002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24362 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=marja@chromium.org BUG=chromium:419189 LOG=N Review URL: https://codereview.chromium.org/616263003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24361 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mvstanton@chromium.org authored
Clearing this stub doesn't actually make sense, as it neither leaks memory, nor prevents finding a new optimum stable state. As long as strings receivers are observed, this is the best stub. The moment we see a non-string receiver we'll go polymorphic or generic depending on the case. R=yangguo@chromium.org Review URL: https://codereview.chromium.org/605013003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24360 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
Also remove the now obsolete ControlEffect operator. TEST=cctest,mjsunit,unittests R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/620803003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24359 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mstarzinger@chromium.org authored
R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/619043002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24358 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=bmeurer@chromium.org BUG= Review URL: https://codereview.chromium.org/614013002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24357 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
titzer@chromium.org authored
R=bmeurer@chromium.org, mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/620773003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24356 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
BUG=none TBR=svenpanne@chromium.org LOG=n Review URL: https://codereview.chromium.org/621673003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24355 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
BUG=none R=svenpanne@chromium.org LOG=n git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24354 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
BUG=v8:3597 R=svenpanne@chromium.org LOG=n git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24353 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
Job based sweeping is enabled since 3.29, so remove the now obsolete thread based implementation BUG=none R=hpayer@chromium.org LOG=n Review URL: https://codereview.chromium.org/615933003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24352 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
TBR=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/615243003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24351 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
As per discussion on the V8 team, this is the place we want them to live, not following the Chrome Style Guide for this. BUG=v8:3489 LOG=y R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/615393002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24350 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
TBR=bmeurer@chromium.org Review URL: https://codereview.chromium.org/616293002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24349 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-