yangguo@chromium.org
b7b92bd9ac
Short-circuit embedded cons strings.
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/17418003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15263 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-21 09:24:30 +00:00
yurys@chromium.org
6f09cb471b
Delete deprecated methods from v8-profiler.h
...
All these methods were already marked as V8_DEPRECATED in V8 Version 3.18.0 (see https://code.google.com/p/v8/source/browse/trunk/include/v8-profiler.h?r=14304 ) so it is time to delete them.
BUG=None
R=loislo@chromium.org , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/17524007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15260 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-21 07:56:22 +00:00
yurys@chromium.org
c7b3ef0e05
Make sure ExternalCallbackScope is always created when VM state changes to EXTERNAL
...
ExternalCallbackScope is used to let CPU profiler know which API callback is being executed. Whenever such callback is called we should create VMState<ETERNAL> and ExternalCallbackScope. This patch fixes several places where VMState<ETERNAL> went without ExternalCallbackScope.
BUG=244580
R=dcarney@chromium.org , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/17059005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15249 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-20 14:47:35 +00:00
dcarney@chromium.org
a74f511e61
remove all old style callbacks - patch 3
...
TBR=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/17336003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15237 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-20 12:28:27 +00:00
hpayer@chromium.org
77f5c6c122
Don't let the GC clear the cache between cache invocations to pass test.
...
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/17218005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15233 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-20 11:23:34 +00:00
yangguo@chromium.org
928cbcdc8d
Skip parallel recompilation tests if parallel recompilation is disabled.
...
Parallel recompilation is usually disabled on single-core systems.
R=jkummerow@chromium.org
BUG=v8:2733
Review URL: https://codereview.chromium.org/17261021
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15231 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-20 11:01:33 +00:00
wingo@igalia.com
f7ba3a7bb1
Fix stack frame reconstruction for generators with formal arguments
...
The formal parameter count was always being treated as an untagged
integer, but it is actually a Smi on ia32 and arm.
R=mstarzinger@chromium.org
BUG=v8:2355
TEST=mjsunit/harmony/generators-iteration
Review URL: https://codereview.chromium.org/17485002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15230 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-20 10:48:34 +00:00
mstarzinger@chromium.org
ea87d08557
Revert r14930 and r14935 temporarily.
...
This is a temporary revert to track down a potential perf regression
introduced in r14930. The following two changes were reverted:
- "Deprecate HAllocateObject in favor of HAllocate."
- "Added pretenuring support for call new."
R=danno@chromium.org
BUG=chromium:247504
Review URL: https://codereview.chromium.org/17491002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15229 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-20 10:48:14 +00:00
hpayer@chromium.org
1609402534
Abort incremental marking in stress gc tests whenever we expect a full collection after executing CollectAllGarbage.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/17482003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15227 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-20 10:04:53 +00:00
rossberg@chromium.org
eb099a1a8c
Introduce Type::Intersect function
...
Also, fix bugs in Type::Union and Type::Maybe.
(This subsumes the in-flight fix for Union in https://codereview.chromium.org/16925008/ , including test cases).
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/17335003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15224 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-20 09:10:10 +00:00
dcarney@chromium.org
640353d088
remove all old style callbacks - patch 1 of many
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/17064004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15222 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-20 08:12:59 +00:00
dcarney@chromium.org
89fb509c77
remove all old style callbacks - patch 2
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/17071004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15221 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-20 08:07:45 +00:00
yurys@chromium.org
2ab2e4843e
Introduce THREADED_PROFILED_TEST macro
...
A bunch of tests in test-api.cc need to be executed two times: with CPU profiler on and off to check different code paths. There are only two such tests at the moment but I'm going to add more and having this logic duplicated in all these tests look awkward. The tests are executed as part of Threading* tests and there is no much sense in running CPU profiler in that case. This change addresses both problems by introducing THREADED_PROFILED_TEST macro which mosly resembles THREADED_TEST except that when such test is executed as a standalone test (not part of a test-api/Threading*) it will first run the test normally and the start CPU profiler and run the test again.
BUG=244580
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/17072002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15220 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-20 06:46:56 +00:00
verwaest@chromium.org
2ca5c6cd03
Fix using monomorphic store instruction for polymorphic stores.
...
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/16875008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15214 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-19 18:07:35 +00:00
plind44@gmail.com
127af45629
MIPS: Fix test-cpu-profiler/SampleWhenFrameIsNotSetup flakiness on MIPS simulator.
...
BUG=v8:2628
TEST=cctest/test-cpu-profiler/SampleWhenFrameIsNotSetup
R=jkummerow@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/17265004
Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15213 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-19 17:20:25 +00:00
plind44@gmail.com
e6b83db740
MIPS: Fix cctest/test-assembler-mips on MIPS32R1 architecture.
...
TEST=cctest/test-assembler-mips/MIPS3
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/17099010
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15212 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-19 17:15:21 +00:00
jkummerow@chromium.org
aea73c155d
Remove unused counters
...
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/17157006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15208 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-19 16:50:38 +00:00
mvstanton@chromium.org
7f0f022792
Bugfix in hydrogen array literal code generation.
...
If an array literal contains some non-constant elements, is of type SMI, and
then the boilerplate transitions to double or fast sometime after we've
crankshafted the code, then we could incorrectly store smis in double arrays.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/17334004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15207 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-19 13:48:50 +00:00
svenpanne@chromium.org
010d9aba16
Avoid relying on monkey-patchable things in String.prototype.split.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/17391016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15206 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-19 12:25:40 +00:00
dslomov@chromium.org
51f3e2f055
Do not use weak handles for ArrayBuffers.
...
Instead of allocating weak handles to free ArrayBuffer backing store, dispose of memory while walking the weak list of ArrayBuffers on GC.
Also, free all array buffers on isolate tear-down.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/16950013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15205 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-19 11:53:30 +00:00
yangguo@chromium.org
1be45275c6
Fix test for bots that force --parallel-recompilation as shell flag.
...
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16914006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15202 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-19 09:32:05 +00:00
mvstanton@chromium.org
c70b41684d
Use type feedback for Array (non-constructor) call sites.
...
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/17155010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15201 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-19 09:25:24 +00:00
hpayer@chromium.org
8f8461aff5
Disable stress_compaction flag in several GC tests to meet test
...
expectations.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/17262002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15199 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-19 08:58:09 +00:00
yangguo@chromium.org
627872ec67
Do not modify FLAG_parallel_recompilation after start up.
...
R=jkummerow@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/17202006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15195 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-18 14:25:24 +00:00
mstarzinger@chromium.org
0524263a27
Remove obsolete elements kind check for array literals.
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/17378005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15194 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-18 13:32:06 +00:00
svenpanne@chromium.org
fb7310b1fd
Fixed read-only attribute of Function.length in strict mode.
...
R=cira@chromium.org
Review URL: https://codereview.chromium.org/17006006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15189 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-18 07:51:50 +00:00
palfia@homejinni.com
f8fc5c443e
Allow running mjsunit/manual-parallel-recompile on single-core systems.
...
- Add an %IsParallelSupported() builtin function to make possible to check support of parallel processing from JavaScripts.
- Change the test script that if parallel recompilation is forced on a single core CPU, expect that it won't be recompiled in parallel.
- Change the JSFunction::MarkForParallelRecompilation() to fall back gracefully if parallel recompilation is not supported.
BUG=v8:2733
TEST=mjsunit/manual-parallel-recompile
Review URL: https://codereview.chromium.org/17277002
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15184 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-17 16:27:18 +00:00
palfia@homejinni.com
93609033e1
MIPS: Optimise Math.floor(x/y) to use integer division for MIPS.
...
Use div instruction if some divisors do not have magic number.
Based on commit r11427 (318a9598).
This commit also ports commit r15161 (554d45c1).
BUG=
Review URL: https://codereview.chromium.org/16951016
Patch from Dusan Milosavljevic <Dusan.Milosavljevic@rt-rk.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15181 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-17 15:06:41 +00:00
hpayer@chromium.org
2f731575f5
Fix Iteration on gc stress builder.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/17069004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15178 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-17 06:52:01 +00:00
hpayer@chromium.org
1adbc6134d
Fix Regress1465 on gc stress builder.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/17059006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15177 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-17 06:44:44 +00:00
hpayer@chromium.org
bbdf6dc6cf
Fix Regress2237 on gc stress builder.
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/17081002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15176 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-17 06:36:46 +00:00
verwaest@chromium.org
328aeb14fb
Revert "Improved range analysis for bitwise operations."
...
This reverts commit r15170
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/17093005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15173 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-14 17:25:03 +00:00
verwaest@chromium.org
98167ed0a8
Improved range analysis for bitwise operations.
...
R=fschneider@chromium.org , verwaest@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9156001
Patch from Stephen Adams <sra@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15170 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-14 16:55:34 +00:00
hpayer@chromium.org
08a4a37616
Decrease size of first page of property cell space.
...
BUG=
R=danno@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/17027006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-14 11:36:55 +00:00
dcarney@chromium.org
b0860dd2b0
arm build fix for 15142
...
TBR=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/17030007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15144 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-14 10:49:57 +00:00
dcarney@chromium.org
022ee63f5c
build fix for 15142
...
TBR=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16942004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15143 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-14 10:34:12 +00:00
yurys@chromium.org
c4224f09a2
Notify CPU profiler when calling native getters
...
This change modifies code produced by BaseLoadStubCompiler::GenerateLoadCallback so that instead of calling AccessorGetter direcly it calls InvokeAccessorGetter which changes VM state and calls the actual callback. This way CPU profiler knows which external callback is being executed in this case. Indirect call happens only if CpuProfiler::is_profiling() is true.
This is exactly same change as r15116 with a build fix for test-api.cc
BUG=244580
TBR=danno@chromium.org
Review URL: https://codereview.chromium.org/16858013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15135 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-13 19:16:35 +00:00
mvstanton@chromium.org
5b2c1a50d9
HCheckFunction is needed to protect new array constructors in
...
crankshafted code.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/16944006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15118 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-13 14:29:01 +00:00
yurys@chromium.org
24ec017182
Revert "Notify CPU profiler when calling native getters"
...
This reverts commit f323d984a73bab345c4eab5c1907552ccfa7ccaa.
Broke compilation on the bots with an error that doesn't occur locally:
CXX(target) /mnt/data/b/build/slave/v8-linux-debug/build/v8/out/Debug/obj.target/cctest/test/cctest/test-bignum-dtoa.o
../test/cctest/test-api.cc: In function ‘void FastReturnValueCallback(const v8::FunctionCallbackInfo<v8::Value>&) [with T = int]’:
../test/cctest/test-api.cc:1129: error: insufficient contextual information to determine type
../test/cctest/test-api.cc: In function ‘void FastReturnValueCallback(const v8::FunctionCallbackInfo<v8::Value>&) [with T = unsigned int]’:
../test/cctest/test-api.cc:1136: error: insufficient contextual information to determine type
../test/cctest/test-api.cc: In function ‘void FastReturnValueCallback(const v8::FunctionCallbackInfo<v8::Value>&) [with T = double]’:
../test/cctest/test-api.cc:1143: error: insufficient contextual information to determine type
../test/cctest/test-api.cc: In function ‘void FastReturnValueCallback(const v8::FunctionCallbackInfo<v8::Value>&) [with T = bool]’:
../test/cctest/test-api.cc:1150: error: insufficient contextual information to determine type
../test/cctest/test-api.cc: In function ‘void FastReturnValueCallback(const v8::FunctionCallbackInfo<v8::Value>&) [with T = void]’:
../test/cctest/test-api.cc:1157: error: insufficient contextual information to determine type
CXX(target) /mnt/data/b/build/slave/v8-linux-debug/build/v8/out/Debug/obj.target/cctest/test/cctest/test-circular-queue.o
BUG=None
TBR=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/16838013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15117 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-13 14:05:19 +00:00
yurys@chromium.org
1a3c3cee9d
Notify CPU profiler when calling native getters
...
This change modifies code produced by BaseLoadStubCompiler::GenerateLoadCallback so that instead of calling AccessorGetter direcly it calls InvokeAccessorGetter which changes VM state and calls the actual callback. This way CPU profiler knows which external callback is being executed in this case.
BUG=244580
R=dcarney@chromium.org , loislo@chromium.org , svenpanne@chromium.org
Review URL: https://codereview.chromium.org/16286016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15116 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-13 13:46:33 +00:00
mstarzinger@chromium.org
6e0aa78a40
Disable compaction stress for test-heap/Regression144230.
...
R=yangguo@chromium.org
BUG=v8:2724
TEST=cctest/test-heap/Regression144230
Review URL: https://codereview.chromium.org/16858010
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15115 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-13 12:49:38 +00:00
loislo@chromium.org
2f811dbb99
Revert "DevTools: CPUProfiler: provide url for scripts that have sourceURL property."
...
This reverts commit d95b7bb92ad1a191cf505250830d094b86d61e8f.
This reverts commit ca81c09a367600be79452e1fc53ac63b75e369c4.
record-cpu-profile.html is crashing
TBR= yurys@chromium.org , danno@chromium.org
BUG=none
Review URL: https://codereview.chromium.org/16940005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15114 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-13 11:09:19 +00:00
wingo@igalia.com
d73dace0f5
Delegating yield does not re-box result objects
...
Delegating yield (yield*) should just pass on the iterator results it
receives instead of re-boxing them.
R=rossberg@chromium.org
TEST=mjsunit/harmony/generators-iteration
BUG=
Review URL: https://codereview.chromium.org/16695006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15113 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-13 10:57:11 +00:00
dcarney@chromium.org
608a6b8965
another attempt at fixing 15107
...
TBR=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16854009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15112 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-13 10:39:44 +00:00
wingo@igalia.com
09fcac5e39
Use keyed-call inline caches in delegating yield
...
Since we can't assume anything about the shape of the iterator in a
yield* (delegating yield), use an IC to do the next() and throw()
iterator method calls.
BUG=v8:2691
R=rossberg@chromium.org
TEST=mjsunit/regress/regress-2691
Review URL: https://codereview.chromium.org/15455002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15111 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-13 10:18:28 +00:00
dcarney@chromium.org
67c9cd8274
build fix for 15107
...
TBR=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16944003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15110 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-13 10:13:09 +00:00
dcarney@chromium.org
8b2c26d736
remove most uses of raw handle constructors
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/15817014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15107 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-13 09:27:09 +00:00
dcarney@chromium.org
9103afa291
Deprecate the version of MakeWeak which takes an Isolate.
...
BUG=NONE
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/16528009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15105 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-13 07:23:23 +00:00
danno@chromium.org
ba15460ce6
Bump snapshot limits to fix BootUpMemoryUse tests
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/16870003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15102 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 23:02:05 +00:00
mvstanton@chromium.org
75afb8ce79
Fix for bug 245480. Calling new Array(a) with a single argument could result in creating a holey array with a packed elements kind.
...
BUG=245480
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/16341004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15095 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 18:04:16 +00:00
danno@chromium.org
5692ec5599
Fix release serialization tests
...
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/16695008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15094 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 17:59:11 +00:00
rossberg@chromium.org
94f651bc1b
Migrate Compare ICs to new type rep
...
(Does not yet use common AST expression type field.)
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16361015
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15093 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 17:20:37 +00:00
danno@chromium.org
0a2f7acaab
Fix serialization tests and Mac build
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16109018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15092 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 16:23:17 +00:00
danno@chromium.org
baf1ff0667
Increase limit for snapshot size test
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/15821018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15090 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 15:35:03 +00:00
danno@chromium.org
1b89cbf817
Separate Cell and PropertyCell spaces
...
This makes it possible to store additional information on property cells, for example Type and optimized Code dependencies.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/16631002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15089 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 15:03:44 +00:00
loislo@chromium.org
3be6a032d0
two cpu profiler tests are flaky on windows.
...
BUG=none
TEST=LogExistingFunctionSourceURLCheck, SourceURLSupportForNewFunctions
TBR=yurys
Review URL: https://codereview.chromium.org/16280011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15088 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 14:34:19 +00:00
mstarzinger@chromium.org
93ab1864ea
Allow the deoptimizer translation to track de-materialized objects.
...
This allows the deoptimizer to materialize objects (e.g. the arguments
object) while deopting without having a consective stack area holding
the object values. The LEnvironment explicitly tracks locations for
these values and preserves them in the translation.
R=svenpanne@chromium.org
TEST=mjsunit/compiler/inline-arguments
Review URL: https://codereview.chromium.org/16779004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15087 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 14:22:49 +00:00
wingo@igalia.com
cc27c4c41b
GeneratorFunction() makes generator instances
...
The current specification has GeneratorFunction() be like Function(),
except that it makes generator instances. This commit implements that
behavior. It also fills in a piece of the implementation where
otherwise calling GeneratorFunction or GeneratorFunctionPrototype would
cause an abort because they have no code.
R=mstarzinger@chromium.org
TEST=mjsunit/harmony/generators-iteration
TEST=mjsunit/harmony/generators-runtime
BUG=v8:2355,v8:2680
Review URL: https://codereview.chromium.org/15218004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15084 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 12:52:16 +00:00
wingo@igalia.com
1fb2f4b358
For-of statements do not permit initializers.
...
R=rossberg@chromium.org
BUG=v8:2720
Review URL: https://codereview.chromium.org/16739008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15082 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 12:37:44 +00:00
wingo@igalia.com
418ddc800a
Allocate generator result objects before unwinding try handlers
...
When a generator suspends, it saves its state out to the heap and
unwinds try handlers but doesn't pop anything off the stack. Instead it
relies on no GC happening between the suspend and the return from the
generator. However this was not the case: boxing the result object
could cause GC, which would try to traverse the stack but would
misinterpret words from unwound try handlers as heap objects.
This CL changes to allocate the result objects before the suspend. It
also removes the generators-iteration skip introduced in r15065.
R=mstarzinger@chromium.org
TEST=mjsunit/harmony/generators-iteration
BUG=
Review URL: https://codereview.chromium.org/16801006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15079 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 11:02:51 +00:00
yangguo@chromium.org
74556569d1
Reland "Enable map dependency to in-flight compilation info."
...
BUG=248076
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/16782004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15077 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 09:43:22 +00:00
dslomov@chromium.org
ecaf460548
Unify processing of weak lists in heap.cc
...
R=hpayer@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/16641003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15076 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 09:31:39 +00:00
loislo@chromium.org
29abaf4aad
DevTools: CPUProfiler: provide url for scripts that have sourceURL property.
...
BUG=none
TEST=SourceURLSupportForNewFunctions, LogExistingFunctionSourceURLCheck
R=jkummerow@chromium.org , yurys@chromium.org
Review URL: https://codereview.chromium.org/16035027
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15074 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-12 08:27:24 +00:00
yurys@chromium.org
eb037a86fd
Test that functions created using v8::FunctionTemplate::New correctly displayed in CPU profiles
...
BUG=244580
R=jkummerow@chromium.org , loislo@chromium.org
Review URL: https://codereview.chromium.org/16771002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15066 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-11 15:00:41 +00:00
wingo@igalia.com
5760c7b598
Disable --harmony -> --harmony-generators implication
...
A GC-related bug has started showing up after r15060 that unfortunately
I haven't been able to reproduce. Disable generators by default for the
Canary push.
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16638011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15065 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-11 14:45:17 +00:00
plind44@gmail.com
7dc6f57fe8
MIPS: Allow timeout for TerminateMultipleV8ThreadsDefaultIsolate.
...
test-thread-termination/TerminateMultipleV8ThreadsDefaultIsolate
times out on the MIPS simulator.
Allow the timeouts until this is fixed.
BUG=v8:2657
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/16203005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15063 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-11 14:31:46 +00:00
yangguo@chromium.org
6da97b1d4a
Revert "Enable map dependency to in-flight compilation info."
...
This includes r15032, r15030 and r15005.
R=ulan@chromium.org
BUG=248076
Review URL: https://chromiumcodereview.appspot.com/16482004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15061 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-11 11:55:56 +00:00
jkummerow@chromium.org
9447014780
Skip some conditional deopts for Div/Mul when all uses are truncating.
...
- set "can be minus zero" flag properly so minus-zero checks are skipped
- skip "integer result?" check in division code when uses are truncating
- drive-by cleanup: consolidated computation of kCanOverflow flag for Add/Sub into range inference phase
BUG=v8:2132
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/16741002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15060 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-11 11:43:57 +00:00
wingo@igalia.com
f68d6a10f8
Fix crasher when checking for "of", but next token has no literal buffer
...
Also fix a typo in an assertion in scanner.h.
R=mstarzinger@chromium.org
BUG=248025
TEST=mjsunit/regress/regress-crbug-248025.js
Review URL: https://codereview.chromium.org/16549003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15059 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-11 11:30:03 +00:00
dslomov@chromium.org
9278a4b7b1
Change ArrayBuffer API and implementation to use embedder-provided allocator.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/15855012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15056 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-11 10:41:14 +00:00
yurys@chromium.org
b90bd6987b
Make sure CallIC is in monomorphic state when starting profiling in NativeAccessorNameInProfile2
...
Changed cctest/test-cpu-profiler/NativeAccessorNameInProfile2 to make a few warm-up cycles before starting profiler so that accessor invocations performed via monomorphic inline caches and slow paths traces do not distort the profile.
Drive-by: removed logging code that was used to diagnose NativeAccessorNameInProfile2 failures on Windows.
BUG=None
R=jkummerow@chromium.org , loislo@chromium.org
Review URL: https://codereview.chromium.org/16758007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15055 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-11 08:32:48 +00:00
dcarney@chromium.org
c90e697a30
make empty string returnable by ReturnValue
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16621004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15054 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-11 07:42:12 +00:00
olivf@chromium.org
946ea53264
use compare nil ic only for non-strict equality. strict-equality only has one check and cannot deopt. should therefore not be part of the stub.
...
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/16732002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15045 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 15:47:23 +00:00
olivf@chromium.org
3a26dda780
revert accidental dcommit
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15044 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 15:43:40 +00:00
olivf@chromium.org
73b7ab9ae6
remove equality kind from compare nil ic
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15042 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 15:30:02 +00:00
wingo@igalia.com
29a1044409
Keep native fuzzing blacklists in sync
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16436005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 12:25:31 +00:00
wingo@igalia.com
093492f01c
Don't fuzz _GeneratorNext
...
The previous patch that renamed _GeneratorSend to _GeneratorNext missed
the blacklist in fuzz-natives-part4.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16339008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15035 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 12:06:13 +00:00
mstarzinger@chromium.org
ecc41e30c0
Fix re-initialization of existing double field.
...
R=verwaest@chromium.org
BUG=v8:2717
TEST=mjsunit/regress/regress-2717
Review URL: https://codereview.chromium.org/16735003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15033 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 11:55:47 +00:00
yangguo@chromium.org
b0afb77731
Fix parallel recompilation wrt transition maps dependency.
...
R=ulan@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/15896038
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15032 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 11:33:23 +00:00
yangguo@chromium.org
1594eca8ed
Fix parallel recompilation wrt initial object/array map dependency.
...
R=ulan@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/16641002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15030 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 11:17:48 +00:00
wingo@igalia.com
f88bca9576
Generator object "next" method takes optional send value
...
Update the generators implementation to make "next" also do the job of
what was previously called "send" by taking an optional argument.
Remove send, and do a bunch of renamings.
R=rossberg@chromium.org
BUG=v8:2355, v8:2715
Review URL: https://codereview.chromium.org/16136011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15028 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 09:26:18 +00:00
dcarney@chromium.org
a9ce5bb5ea
add a default value for return value
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16642003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15024 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 07:41:16 +00:00
dcarney@chromium.org
8c892ea2a8
do aligned reads in ContainsOnlyOneByte
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16147004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15023 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-10 07:34:58 +00:00
verwaest@chromium.org
3588aa45cd
Take all uses into account to clear int32 truncation.
...
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/16656002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15017 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 17:28:46 +00:00
yurys@chromium.org
e3dbf202c8
Try to deflake cctest/test-cpu-profiler/NativeAccessorNameInProfile1 on Windows
...
Make native accessors sleep for 1ms before measuring elapsed time. This is to check the theory that we cannot pause profiled thread on Win64 for some reason and miss many samples.
BUG=None
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/16656003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15016 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 17:25:47 +00:00
dslomov@chromium.org
cbb11dbe6c
Neutering API for v8::ArrayBuffer
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/16562005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15006 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 15:02:20 +00:00
yangguo@chromium.org
17cfe68015
Enable map dependency to in-flight compilation info.
...
R=ulan@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/16542003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15005 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 13:27:03 +00:00
wingo@igalia.com
b29a78fb02
Baseline for-of implementation
...
Add full-codegen support for the ES6 for-of iteration statement.
R=mstarzinger@chromium.org , rossberg@chromium.org
TEST=mjsunit/harmony/iteration-semantics
BUG=v8:2214
Review URL: https://codereview.chromium.org/15288011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15002 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 11:12:21 +00:00
dslomov@chromium.org
b3282c290e
Recording array buffer views.
...
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/15562008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15000 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 10:52:11 +00:00
dcarney@chromium.org
72098711b7
Add Value::Cast.
...
It's needed for upcasting Persistent<Object> to Persistent<Value> after
handlepocalypse (with Persistent::As or Persistent::Cast).
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/16206014
Patch from Marja Hölttä <marja@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14995 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 08:46:39 +00:00
dcarney@chromium.org
94d6a13682
build fix for build fix for 14990
...
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/16409011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14993 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 08:15:00 +00:00
dcarney@chromium.org
3c8a79caba
ReturnValue::Set(uint32_t) is wrong
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16365008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14990 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-07 07:34:25 +00:00
rossberg@chromium.org
372457a793
Allow smis for singleton types
...
To that end, introduce a generic Box struct.
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16562003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14987 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 15:40:28 +00:00
wingo@igalia.com
cb0d146862
Add initial parser support for harmony iteration
...
This commit adds initial parser support for harmony iteration.
Specifically, it will parse:
for (x of y) {}
for (let x of y) {}
for (var x of y) {}
The semantics are still unimplemented.
TEST=mjsunit/harmony/for-of-syntax
BUG=v8:2214
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/15300018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14984 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 14:38:26 +00:00
verwaest@chromium.org
16199c63d8
Initialized representations of computed values to None.
...
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/14721009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14982 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 14:21:35 +00:00
rossberg@chromium.org
919d64adce
Add type field to AST expression nodes
...
More importantly, do a bunch of renamings of incidental existing "types" to avoid actual and potential name clashes (and also to improve consistency).
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16549002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14978 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 13:28:22 +00:00
mvstanton@chromium.org
701f356bac
Move runtime array constructor functions from builtins.cc to runtime.cc.
...
Not only is runtime.cc a better location, but situations arise soon where we'll
want to make runtime calls to these functions.
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/16399007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14977 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 13:22:42 +00:00
dcarney@chromium.org
6f5d899248
add function to test whether string contents are definitely one byte
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/16530003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14976 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 13:16:52 +00:00
dcarney@chromium.org
c6519a142f
update test to test new style property handlers
...
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/15769014
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14973 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 12:23:37 +00:00
rodolph.perfetta@gmail.com
e19a55df0d
RegExp macro assembler clean up.
...
Removes never called methods and fix a bug on ARM.
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/16280005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14967 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-06-06 10:17:07 +00:00