- 19 Dec, 2013 5 commits
-
-
vegorov@chromium.org authored
TBR=dcarney@chromium.org BUG= Review URL: https://codereview.chromium.org/116093006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18376 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Introduce API to temporarily interrupt long running JavaScript code. It is different from termination API as interrupted JavaScript will continue to execute normally when registered InterruptCallback returns. /** * Request V8 to interrupt long running JavaScript code and invoke * the given |callback| passing the given |data| to it. After |callback| * returns control will be returned to the JavaScript code. * At any given moment V8 can remember only a single callback for the very * last interrupt request. * Can be called from another thread without acquiring a |Locker|. * Registered |callback| must not reenter interrupted Isolate. */ void RequestInterrupt(InterruptCallback callback, void* data); /** * Clear interrupt request created by |RequestInterrupt|. * Can be called from another thread without acquiring a |Locker|. */ void ClearInterrupt(); Fix Hydrogen SCE pass to avoid eliminating stack guards too aggressively. Only normal JavaScript functions are guaranteed to have stack guard in the prologue. If function is a builtin or has a custom call IC it will lack one. Changes from r18363: - includes r18364 to fix compilation errors: removes debugging only code; - makes interrupiton related tests not threaded, because they rely on having exclusive access to the V8 instance and the fact that they can only interrupt themselves, if they are interrupted from the outside they break; - changes HasStackCheck predicate used during SCE pass to avoid handles dereference to make SCE compatible with parallel recompilation. R=dcarney@chromium.org Review URL: https://codereview.chromium.org/104823008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18375 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
LOG=n R=hpayer@chromium.org, mstarzinger@chromium.org BUG=none Review URL: https://codereview.chromium.org/100433006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18374 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
R=jkummerow@chromium.org BUG= Review URL: https://codereview.chromium.org/98643011 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18371 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
BUG=chromium:329709 LOG=Y R=hpayer@chromium.org Review URL: https://codereview.chromium.org/98643010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18370 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 18 Dec, 2013 35 commits
-
-
mvstanton@chromium.org authored
Pretty printing for array code stubs. The minor keys encode things like specialized ElementsKind for each stub. This can be useful to see in disassembly traces. R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/110103002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18369 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mvstanton@chromium.org authored
FastCloneShallowObjectStub is only called from full code. When the code is optimized, then we'll inline the cloning and respect pretenure mode. R=hpayer@chromium.org Review URL: https://codereview.chromium.org/104403008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18368 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/99133017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18367 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/104903002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18366 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
This reverts commit r18363. Revert "Fix compilation error introduced by r18363." This reverts commit r18364. Changes in SCE pass are incompatible with parallel compilation TBR=dcarney@chromium.org BUG= Review URL: https://codereview.chromium.org/101463003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18365 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
Remove debugging related code. TBR=dcarney@chromium.org Review URL: https://codereview.chromium.org/104793005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18364 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
vegorov@chromium.org authored
It is different from termination API as interrupted JavaScript will continue to execute normally when registered InterruptCallback returns. /** * Request V8 to interrupt long running JavaScript code and invoke * the given |callback| passing the given |data| to it. After |callback| * returns control will be returned to the JavaScript code. * At any given moment V8 can remember only a single callback for the very * last interrupt request. * Can be called from another thread without acquiring a |Locker|. * Registered |callback| must not reenter interrupted Isolate. */ void RequestInterrupt(InterruptCallback callback, void* data); /** * Clear interrupt request created by |RequestInterrupt|. * Can be called from another thread without acquiring a |Locker|. */ void ClearInterrupt(); Fix Hydrogen SCE pass to avoid eliminating stack guards too aggressively. Only normal JavaScript functions are guaranteed to have stack guard in the prologue. If function is a builtin or has a custom call IC it will lack one. BUG= R=danno@chromium.org, dcarney@chromium.org Review URL: https://codereview.chromium.org/102063004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18363 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ishell@chromium.org authored
R=verwaest@chromium.org Review URL: https://codereview.chromium.org/108503004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18362 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
palfia@homejinni.com authored
Port r18347 (64ac25c) Fix of r18351 BUG= R=hpayer@chromium.org Review URL: https://codereview.chromium.org/94103007 Patch from Balazs Kilvady <kilvadyb@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18361 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ishell@chromium.org authored
R=verwaest@chromium.org Review URL: https://codereview.chromium.org/108413003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18360 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ishell@chromium.org authored
R=verwaest@chromium.org Review URL: https://codereview.chromium.org/108933002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18359 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ishell@chromium.org authored
R=hpayer@chromium.org Review URL: https://codereview.chromium.org/93633008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18358 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
danno@chromium.org authored
R=titzer@chromium.org Review URL: https://codereview.chromium.org/108083004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18357 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/112673002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18356 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
R=jkummerow@chromium.org BUG= Review URL: https://codereview.chromium.org/105213006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18353 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
verwaest@chromium.org authored
R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/111603008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18352 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= Review URL: https://codereview.chromium.org/116073004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18351 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
This never worked... TBR=yangguo@chromium.org Review URL: https://codereview.chromium.org/118233002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18350 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
Our toolchains differ in mysterious ways, especially regarding overloading resolution, templates, etc. :-P This fix avoids a call/return just for resolution and uses a static_cast instead. R=dcarney@chromium.org Review URL: https://codereview.chromium.org/118183002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18349 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
R=rossberg@chromium.org Review URL: https://codereview.chromium.org/111573003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18348 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
verwaest@chromium.org authored
R=jkummerow@chromium.org, titzer@chromium.org Review URL: https://chromiumcodereview.appspot.com/110123002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18347 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
TBR=dcarney@chromium.org Review URL: https://codereview.chromium.org/102123008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18346 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jkummerow@chromium.org authored
"log" is an overloaded function, it cannot be resolved without explicit parameter type information TBR=svenpanne@chromium.org Review URL: https://codereview.chromium.org/117723004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18345 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
It was only used for Math.log, and even then only in full code and in %_MathLog. For crankshafted code, Intel already used the FP operations directly, while the ARM/MIPS ports were a bit lazy and simply called the stub. The latter directly call the C library now without any cache. It would be possible to directly generate machine code if somebody has the time, from what I've seen out in the wild it should be only about a dozen instructions. LOG=y R=yangguo@chromium.org Review URL: https://codereview.chromium.org/113343003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18344 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yangguo@chromium.org authored
R=jkummerow@chromium.org, rossberg@chromium.org Review URL: https://codereview.chromium.org/100093004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18343 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
LOG=y R=dcarney@chromium.org Review URL: https://codereview.chromium.org/108063003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18342 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/111723004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18341 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
BUG=chromium:327298 LOG=N TBR=hpayer@chromium.org Review URL: https://codereview.chromium.org/118113002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18340 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
BUG=chromium:327298 LOG=N TBR=hpayer@chromium.org Review URL: https://codereview.chromium.org/115113009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18339 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
All methods for accessing collected profiles by index are deprecated. The indexed storage may well be implemented by the embedder should he need it. CpuProfiler's responsibility is just to create CpuProfile object that contains all collected data and whose lifetime can be managed by the embedder. BUG=chromium:327298 LOG=Y R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/117353002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18337 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
Too many updates to summarize them here. This version of ICU allows for using a .dat file on posix systems that is mmaped instead of compiling the data in like we currently do. BUG=72633 LOG=n R=jshin@chromium.org, machenbach@chromium.org Review URL: https://codereview.chromium.org/109963003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18336 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jochen@chromium.org authored
Blink uses three slots, so instead of having to reallocate the array everytime, make it big enough to begin with. BUG=none LOG=n R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/109953004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18335 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
yurys@chromium.org authored
Object<-->id mapping doesn't depend on a particular snapshot, actually same object may appear in several heap snapshots. The API for converting between id and heap object should be provided by HeapProfiler itself. There is already GetObjectId method which I extended with FindObjectById/ClearObjectIds. As the next step I'm going to deprecate and remove HeapGraphNode::GetHeapValue. BUG=chromium:324769 LOG=N R=alph@chromium.org, hpayer@chromium.org, mstarzinger@chromium.org Review URL: https://codereview.chromium.org/93843004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18334 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
R=jochen@chromium.org, mstarzinger@chromium.org, yurys@chromium.org Review URL: https://codereview.chromium.org/99193002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18333 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
plind44@gmail.com authored
Folded allocations marked for double alignment is not aligned if old dominator size is used for offset to inner object. TEST=mjsunit/big-array-literal on MIPS BUG= R=hpayer@chromium.org Review URL: https://codereview.chromium.org/103963005 Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18332 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-