- 31 Jan, 2014 7 commits
-
-
svenpanne@chromium.org authored
BUG=v8:2943 LOG=Y TEST=Unit tests for "real life" use cases, edge cases, various types of normalization. ========================== This is identical to the previous CL https://codereview.chromium.org/40133004/ with two differences: * Added a dummy implementation of String.prototype.normalize to be used when v8 is compiled without intl support * Rebased the the test files for webkit. That was the only reason for the previous failure (and revert). Thank you, Mihai R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/68133016 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
* Fixed CompileExternalTwoByteSource: Registered resources should better still be alive when they are accessed. * Fixed ownership in cctest/test-api/VisitExternalStrings. R=ulan@chromium.org Review URL: https://codereview.chromium.org/139923003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18971 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
Move the list to IMMORTAL_IMMOVABLE_ROOT_LIST in heap.h, and automatically include INTERNALIZED_STRING_LIST and STRING_TYPE_LIST. R=hpayer@chromium.org, mstarzinger@chromium.org Review URL: https://codereview.chromium.org/146623003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18970 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= R=bmeurer@chromium.org Review URL: https://codereview.chromium.org/132113004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18969 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
palfia@homejinni.com authored
Port r18958 (5cd635d0) BUG= R=verwaest@chromium.org Review URL: https://codereview.chromium.org/132883017 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18968 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
palfia@homejinni.com authored
Port r18946 (a152f5ae) BUG= R=plind44@gmail.com Review URL: https://codereview.chromium.org/150913002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18967 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
verwaest@chromium.org authored
TBR=dcarney@chromium.org BUG= Review URL: https://codereview.chromium.org/150983002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18966 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 30 Jan, 2014 20 commits
-
-
plind44@gmail.com authored
BUG= TEST=test-api/FixedFloat64Array R=dslomov@chromium.org Review URL: https://codereview.chromium.org/136333011 Patch from Balazs Kilvady <kilvadyb@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18965 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
plind44@gmail.com authored
Port r18941 (517adbf) BUG= R=plind44@gmail.com Review URL: https://codereview.chromium.org/148383017 Patch from Balazs Kilvady <kilvadyb@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18962 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
plind44@gmail.com authored
Port r18945 (699b03e) BUG= R=verwaest@chromium.org Review URL: https://codereview.chromium.org/145083018 Patch from Balazs Kilvady <kilvadyb@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18960 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
plind44@gmail.com authored
The webkit/function-apply-aliased.js test fails on simulators (both MIPS and ARM) as the printed output does not match to the expected. The failing test forces a stack overflow exception and the ToString() operation of the exception object fails because of an other stack overflow and returns an empty string. The problem is that on hardware a common JS and C stack is used so the stack overflow can be caught in C functions also while on simulator separated JS and C stacks are used. This patch adds a "sim" condition to test .status files to skip tests only on simulator. LOG=N BUG=v8:3124 R=jkummerow@chromium.org, plind44@gmail.com Review URL: https://codereview.chromium.org/139233005 Patch from Balazs Kilvady <kilvadyb@homejinni.com>. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18959 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
verwaest@chromium.org authored
R=dcarney@chromium.org Review URL: https://codereview.chromium.org/146303003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18958 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
verwaest@chromium.org authored
BUG= R=dcarney@chromium.org Review URL: https://codereview.chromium.org/150453003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18954 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
This reverts commit r18947. TBR=hpayer@chromium.org Review URL: https://codereview.chromium.org/147493005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18948 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
This allows us to use the faster write barrier, omitting the smi check when storing constant heap objects. R=hpayer@chromium.org Review URL: https://codereview.chromium.org/150303002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18947 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/148333003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18946 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
verwaest@chromium.org authored
R=dcarney@chromium.org Review URL: https://codereview.chromium.org/135593006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18945 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
BUG= R=verwaest@chromium.org Review URL: https://codereview.chromium.org/148963010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18944 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
alph@chromium.org authored
LOG=N R=ulan@chromium.org, yurys@chromium.org Review URL: https://codereview.chromium.org/143263015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18942 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
dcarney@chromium.org authored
R=verwaest@chromium.org BUG= Review URL: https://codereview.chromium.org/150213003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18941 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
bmeurer@chromium.org authored
R=hpayer@chromium.org Review URL: https://codereview.chromium.org/137953008 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18939 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
verwaest@chromium.org authored
This also changes load computation to use HeapTypes rather than Maps. TODO: move conversion between maps and heaptypes earlier in the process, already in the oracle. BUG= R=dcarney@chromium.org Review URL: https://codereview.chromium.org/147763006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18938 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
svenpanne@chromium.org authored
R=ulan@chromium.org Review URL: https://codereview.chromium.org/150213002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18937 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jarin@chromium.org authored
version is passing all the existing test + a bunch of new tests (packaged in the change list, too). The patch extends the SlotRef object to describe captured and duplicated objects. Since the SlotRefs are not independent of each other anymore, there is a new SlotRefValueBuilder class that stores the SlotRefs and later materializes the objects from the SlotRefs. Note that unlike the previous implementation of SlotRefs, we now build the SlotRef entries for the entire frame, not just the particular function. This is because duplicate objects might refer to previous captured objects (that might live inside other inlined function's part of the frame). We also need to store the materialized objects between other potential invocations of the same arguments object so that we materialize each captured object at most once. The materialized objects of frames live in the new MaterielizedObjectStore object (contained in Isolate), indexed by the frame's FP address. Each argument materialization (and deoptimization) tries to lookup its captured objects in the store before building new ones. Deoptimization also removes the materialized objects from the store. We also schedule a lazy deopt to be sure that we always get rid of the materialized objects and that the optmized function adopts the materialized objects (instead of happily computing with its captured representations). Concerns: - Is the FP address the right key for a frame? (Note that deoptimizer's representation of frame is different from the argument object materializer's one - it is not easy to find common ground.) - Performance is suboptimal in several places, but a quick local run of benchmarks does not seem to show a perf hit. Examples of possible improvements: smarter generation of SlotRefs (build other functions' SlotRefs only for captured objects and only if necessary), smarter lookup of stored materialized objects. - Ideally, we would like to share the code for argument materialization with deoptimizer's materializer. However, the supporting data structures (mainly the frame descriptor) are quite different in each case, so it looks more like a separate project. Thanks for any feedback. R=danno@chromium.org, mstarzinger@chromium.org LOG=N BUG= Committed: https://code.google.com/p/v8/source/detail?r=18918 Review URL: https://codereview.chromium.org/103243005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18936 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
BUG=v8:3125 R=bmeurer@chromium.org TBR=verwaest@chromium.org LOG=n Review URL: https://codereview.chromium.org/150173003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18935 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
palfia@homejinni.com authored
Port r18902 (ba394fbc) Original commit message: This has the additional benefit that it is now possible to inline the RegExpResult construction code into Hydrogen builtins. BUG= R=plind44@gmail.com Review URL: https://codereview.chromium.org/149863003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18934 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
R=jkummerow@chromium.org TBR=jkummerow@chromium.org Review URL: https://codereview.chromium.org/149943002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18931 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 29 Jan, 2014 13 commits
-
-
palfia@homejinni.com authored
Port r18905 (88f14cd3) BUG= R=plind44@gmail.com Review URL: https://codereview.chromium.org/130803012 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18930 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
BUG= TBR=hpayer@chromium.org Review URL: https://codereview.chromium.org/149763002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18929 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
hpayer@chromium.org authored
BUG= R=mvstanton@chromium.org Review URL: https://codereview.chromium.org/149393005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18927 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
alph@chromium.org authored
Make sure builtin code objects get their builtin tags first. Otherwise a particular JSFunction object could set its custom name to a generic builtin. LOG=N R=ulan@chromium.org, yurys@chromium.org Review URL: https://codereview.chromium.org/145973006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18926 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
Now including release mode. BUG=v8:3125 LOG=n TBR=verwaest@chromium.org Review URL: https://codereview.chromium.org/149623002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18925 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jarin@chromium.org authored
R=jarin@chromium.org Review URL: https://codereview.chromium.org/130803009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18923 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
BUG= R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/149173006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
These tests register extensions on the isolate and the configuration of the extensions runs out of scope. If run in parallel, other tests access the isolate's state and read the registered extensions. BUG= R=dcarney@chromium.org Review URL: https://codereview.chromium.org/149413005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
BUG=v8:3125 LOG=n TBR=verwaest@chromium.org Review URL: https://codereview.chromium.org/135183015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
jarin@chromium.org authored
mostly to make sure that it is going in the right direction. The current version is passing all the existing test + a bunch of new tests (packaged in the change list, too). The patch extends the SlotRef object to describe captured and duplicated objects. Since the SlotRefs are not independent of each other anymore, there is a new SlotRefValueBuilder class that stores the SlotRefs and later materializes the objects from the SlotRefs. Note that unlike the previous implementation of SlotRefs, we now build the SlotRef entries for the entire frame, not just the particular function. This is because duplicate objects might refer to previous captured objects (that might live inside other inlined function's part of the frame). We also need to store the materialized objects between other potential invocations of the same arguments object so that we materialize each captured object at most once. The materialized objects of frames live in the new MaterielizedObjectStore object (contained in Isolate), indexed by the frame's FP address. Each argument materialization (and deoptimization) tries to lookup its captured objects in the store before building new ones. Deoptimization also removes the materialized objects from the store. We also schedule a lazy deopt to be sure that we always get rid of the materialized objects and that the optmized function adopts the materialized objects (instead of happily computing with its captured representations). Concerns: - Is there a simpler/more correct way to store the already-materialized objects? (At the moment there is a custom root reference to JSArray containing frames' FixedArrays with their captured objects.) - Is the FP address the right key for a frame? (Note that deoptimizer's representation of frame is different from the argument object materializer's one - it is not easy to find common ground.) - Performance is suboptimal in several places, but a quick local run of benchmarks does not seem to show a perf hit. Examples of possible improvements: smarter generation of SlotRefs (build other functions' SlotRefs only for captured objects and only if necessary), smarter lookup of stored materialized objects. - Ideally, we would like to share the code for argument materialization with deoptimizer's materializer. However, the supporting data structures (mainly the frame descriptor) are quite different in each case, so it looks more like a separate project. Thanks for any feedback. R=mstarzinger@chromium.org, danno@chromium.org LOG=N BUG= Review URL: https://codereview.chromium.org/103243005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18918 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
machenbach@chromium.org authored
- Let Mozilla tests with timeouts always run in no-variants mode. Otherwise the stress-run causes a 16 minutes timeout in debug mode and 32 minutes on arm debug. - Four test cases with exponentially long running regular expressions are skipped entirely. BUG= R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/148913006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18916 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
Make a template version of SubStringKey, which allows internalization of substrings of sequential and external strings. R=dcarney@chromium.org, svenpanne@chromium.org Review URL: https://codereview.chromium.org/143223004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18910 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
ulan@chromium.org authored
Follow-up to r18298. R=verwaest@chromium.org Review URL: https://codereview.chromium.org/101123004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18909 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-