- 03 Aug, 2015 1 commit
-
-
ofrobots authored
The recursion between AllocateRaw* and SlowAllocateRaw makes incremental stepping very complicated. This patch removes the recursion. Follow-on patches will improve accounting of allocations done by incremental mark. See: https://codereview.chromium.org/1252053003/#msg5 BUG= R=hpayer@chromium.org Review URL: https://codereview.chromium.org/1265443003 Cr-Commit-Position: refs/heads/master@{#29989}
-
- 23 Jul, 2015 1 commit
-
-
hpayer authored
Use a lock in pages to synchronize sweeper threads to allow others to wait on concurrently swept pages. BUG= Review URL: https://codereview.chromium.org/1244353002 Cr-Commit-Position: refs/heads/master@{#29804}
-
- 02 Jun, 2015 1 commit
-
-
bbudge authored
Adds SIMD 128 alignment sizes and masks. Adds support in Heap for SIMD alignments and fills. Reworks cctest so that each test independently aligns its allocation address, rather than depending on the previous tests ending state. Adds test cases for SIMD. LOG=N BUG=v8:4124 Committed: https://crrev.com/4347d56a6919ae06a70e4a4a8b2f1179cf47bc7e Cr-Commit-Position: refs/heads/master@{#28767} Review URL: https://codereview.chromium.org/1159453004 Cr-Commit-Position: refs/heads/master@{#28771}
-
- 29 May, 2015 1 commit
-
-
bbudge authored
Moves alignment fill calculations into two static Heap methods. Adds a Heap method to handle the complex case where filler is potentially needed before and after a heap object. Makes DoubleAlignForDeserialization explicitly fill after an already aligned object. LOG=N BUG=v8:4124 Committed: https://crrev.com/fcfb080eb9a637f0ae066bed4c45095e60df8a84 Cr-Commit-Position: refs/heads/master@{#28687} Review URL: https://codereview.chromium.org/1150593003 Cr-Commit-Position: refs/heads/master@{#28702}
-
- 28 May, 2015 2 commits
-
-
bbudge authored
Revert of Clean up aligned allocation code in preparation for SIMD alignments. (patchset #14 id:300001 of https://codereview.chromium.org/1150593003/) Reason for revert: Breaks mjsunit, webkit, mozilla, benchmarks. TBR=hpayer@chromium.org Original issue's description: > Clean up aligned allocation code in preparation for SIMD alignments. > > Moves alignment fill calculations into two static Heap methods. > Adds a Heap method to handle the complex case where filler is potentially needed before and after a heap object. > Makes DoubleAlignForDeserialization explicitly fill after an already > aligned object. > > LOG=N > BUG=v8:4124 > > Committed: https://crrev.com/fcfb080eb9a637f0ae066bed4c45095e60df8a84 > Cr-Commit-Position: refs/heads/master@{#28687} TBR=hpayer@chromium.org,bmeurer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4124 Review URL: https://codereview.chromium.org/1159123002 Cr-Commit-Position: refs/heads/master@{#28688}
-
bbudge authored
Moves alignment fill calculations into two static Heap methods. Adds a Heap method to handle the complex case where filler is potentially needed before and after a heap object. Makes DoubleAlignForDeserialization explicitly fill after an already aligned object. LOG=N BUG=v8:4124 Review URL: https://codereview.chromium.org/1150593003 Cr-Commit-Position: refs/heads/master@{#28687}
-
- 15 May, 2015 1 commit
-
-
hpayer authored
BUG= Review URL: https://codereview.chromium.org/1138643005 Cr-Commit-Position: refs/heads/master@{#28430}
-
- 12 May, 2015 1 commit
-
-
hpayer authored
In follow-up CLs the scavenger and the MC collector should also respect the unalignment of heap numbers. BUG= Review URL: https://codereview.chromium.org/1141523002 Cr-Commit-Position: refs/heads/master@{#28360}
-
- 09 May, 2015 1 commit
-
-
hpayer authored
BUG=chromium:486003 LOG=n Review URL: https://codereview.chromium.org/1136783002 Cr-Commit-Position: refs/heads/master@{#28326}
-
- 06 May, 2015 1 commit
-
-
hpayer authored
BUG=chromium:436911 Review URL: https://codereview.chromium.org/1127993002 Cr-Commit-Position: refs/heads/master@{#28262}
-
- 07 Apr, 2015 1 commit
-
-
hpayer authored
This reverts commit cbfcee55. BUG= Review URL: https://codereview.chromium.org/1051233002 Cr-Commit-Position: refs/heads/master@{#27623}
-
- 19 Mar, 2015 1 commit
-
-
hpayer authored
TBR=verwaest@chromium.org,ulan@chromium.org,ishell@chromium.org NOTRY=true Review URL: https://codereview.chromium.org/1027463002 Cr-Commit-Position: refs/heads/master@{#27323}
-
- 18 Mar, 2015 1 commit
-
-
hpayer authored
BUG= Review URL: https://codereview.chromium.org/1012023002 Cr-Commit-Position: refs/heads/master@{#27259}
-
- 27 Jan, 2015 3 commits
-
-
yangguo authored
Review URL: https://codereview.chromium.org/882633002 Cr-Commit-Position: refs/heads/master@{#26296}
-
yangguo authored
Revert of Only use FreeSpace objects in the free list. (patchset #3 id:40001 of https://codereview.chromium.org/876613002/) Reason for revert: Test failures Original issue's description: > Only use FreeSpace objects in the free list. > > This solves an issue with the custom startup snapshot, in cases where > deserializing the isolate requires more than one page per space. > > R=hpayer@chromium.org > > Committed: https://crrev.com/66964395108f03220cb6f45ddc73c5965e2c76a9 > Cr-Commit-Position: refs/heads/master@{#26285} TBR=hpayer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/882443004 Cr-Commit-Position: refs/heads/master@{#26287}
-
yangguo authored
This solves an issue with the custom startup snapshot, in cases where deserializing the isolate requires more than one page per space. R=hpayer@chromium.org Review URL: https://codereview.chromium.org/876613002 Cr-Commit-Position: refs/heads/master@{#26285}
-
- 08 Jan, 2015 1 commit
-
-
hpayer authored
BUG= Review URL: https://codereview.chromium.org/823583010 Cr-Commit-Position: refs/heads/master@{#25999}
-
- 21 Aug, 2014 1 commit
-
-
commit-bot@chromium.org authored
BUG=chromium:403409,chromium:178409 R=jkummerow@chromium.org LOG=N Review URL: https://codereview.chromium.org/480763003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23268 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 05 Aug, 2014 1 commit
-
-
jochen@chromium.org authored
BUG=none R=hpayer@chromium.org LOG=n Review URL: https://codereview.chromium.org/437993003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22850 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
-
- 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
-
- 20 Jun, 2014 1 commit
-
-
ishell@chromium.org authored
In order to be able to use it one should pass verifypredictable=on to the make tool or specify v8_enable_verify_predictable=1 in GYP_DEFINES. R=hpayer@chromium.org Review URL: https://codereview.chromium.org/325553002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21892 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 03 Jun, 2014 1 commit
-
-
jochen@chromium.org authored
- this avoids using relative include paths which are forbidden by the style guide - makes the code more readable since it's clear which header is meant - allows for starting to use checkdeps BUG=none R=jkummerow@chromium.org, danno@chromium.org LOG=n Review URL: https://codereview.chromium.org/304153016 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 May, 2014 1 commit
-
-
jarin@chromium.org authored
BUG=369943 LOG=N R=hpayer@chromium.org Review URL: https://codereview.chromium.org/261253006 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21260 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Apr, 2014 1 commit
-
-
yangguo@chromium.org authored
R=hpayer@chromium.org Review URL: https://codereview.chromium.org/259173003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21086 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Apr, 2014 1 commit
-
-
bmeurer@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/259183002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@21035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Jan, 2014 2 commits
-
-
hpayer@chromium.org authored
BUG= R=mstarzinger@chromium.org, mvstanton@chromium.org Review URL: https://codereview.chromium.org/141653016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18776 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/145493004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18774 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Nov, 2013 1 commit
-
-
mstarzinger@chromium.org authored
R=yurys@chromium.org Review URL: https://codereview.chromium.org/68663002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 08 Nov, 2013 1 commit
-
-
mstarzinger@chromium.org authored
R=yurys@chromium.org Review URL: https://codereview.chromium.org/66683004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17605 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Oct, 2013 1 commit
-
-
hpayer@chromium.org authored
Make top and limit field in AllocationInfo private, assert on non-aligned setting of these fields, and eliminate indirect access over top address on top pointer. BUG= R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/40083002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17391 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Oct, 2013 1 commit
-
-
yurys@chromium.org authored
BUG=277984 R=hpayer@chromium.org Review URL: https://codereview.chromium.org/22852024 Patch from Alexandra Mikhaylova <amikhaylova@google.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17191 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Sep, 2013 3 commits
-
-
mstarzinger@chromium.org authored
Original descriptions were: - "Refactor and cleanup VirtualMemory." - "Fix typo." - "Deuglify V8_INLINE and V8_NOINLINE." - "Don't align size on allocation granularity for unaligned ReserveRegion calls." Reasons for the revert are: - Our mjsunit test suite slower by a factor of 5(!) in release mode. - Flaky cctest/test-alloc/CodeRange on all architectures and platforms. - Tankage of Sunspider by about 6% overall (unverified). TBR=bmeurer@chromium.org Review URL: https://codereview.chromium.org/23970004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16662 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
Remove a lot of platform duplication, and simplify the virtual memory implementation. Also improve readability by avoiding bool parameters for executability (use a dedicated Executability type instead). Get rid of the Isolate::UncheckedCurrent() call in the platform code, as part of the Isolate TLS cleanup. Use a dedicated random number generator for the address randomization, instead of messing with the per-isolate random number generators. TEST=cctest/test-virtual-memory R=verwaest@chromium.org Review URL: https://codereview.chromium.org/23641009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16637 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=svenpanne@chromium.org BUG= Review URL: https://codereview.chromium.org/23468021 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16631 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 Mar, 2013 1 commit
-
-
yangguo@chromium.org authored
R=hpayer@chromium.org BUG= Review URL: https://chromiumcodereview.appspot.com/12440061 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14088 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 Mar, 2013 1 commit
-
-
ulan@chromium.org authored
R=mstarzinger@chromium.org Review URL: https://chromiumcodereview.appspot.com/11275229 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@13896 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 Oct, 2012 1 commit
-
-
mstarzinger@chromium.org authored
The patch introduces CommittedPhysicalMemory function to the Heap class that reports committed *physical* memory acquired for the heap from the OS. It is important because some OSes may defer actual committment on e.g. first access to the region. So reporting just plain committed size led to various weird artifacts like showing V8 allocated memory higher than the whole process private size. BUG=v8:2191 Review URL: https://codereview.chromium.org/11066118 Patch from Alexei Filippov <alph@chromium.org>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12793 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 14 Sep, 2012 1 commit
-
-
erik.corry@gmail.com authored
the speed of deserializing code. The current startup time improvement for V8 is around 6%, but code deserialization is speeded up disproportionately, and we will soon have more code in the snapshot. * Removed support for deserializing into large object space. The regular pages are 1Mbyte now and that is plenty. This is a big simplification. * Instead of reserving space for the snapshot we actually allocate it now. This removes some special casing from the memory management and simplifies deserialization since we are just bumping a pointer rather than calling the normal allocation routines during deserialization. * Record in the snapshot how much we need to boot up and allocate it instead of just assuming that allocations in a new VM will always be linear. * In the snapshot we always address an object as a negative offset from the current allocation point. We used to sometimes address from the start of the deserialized data, but this is less useful now that we have good support for roots and repetitions in the deserialization data. * Code objects were previously deserialized (like other objects) by alternating raw data (deserialized with memcpy) and pointers (to external references, other objects, etc.). Now we deserialize code objects with a single memcpy, followed by a series of skips and pointers that partially overwrite the code we memcopied out of the snapshot. The skips are sometimes merged into the following instruction in the deserialization data to reduce dispatch time. * Integers in the snapshot were stored in a variable length format that gives a compact representation for small positive integers. This is still the case, but the new encoding can be decoded without branches or conditional instructions, which is faster on a modern CPU. Review URL: https://chromiumcodereview.appspot.com/10918067 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@12505 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Apr, 2012 1 commit
-
-
erik.corry@gmail.com authored
preceeding change (stress-compaction). Review URL: https://chromiumcodereview.appspot.com/10161027 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@11432 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-