verwaest@chromium.org
a5397dce98
Keep IC monomorphic on transition, even if previously not STANDARD_STORE.
...
BUG=
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/18034023
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15626 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 11:54:43 +00:00
rossberg@chromium.org
b17713e405
Introduce type Bounds record
...
Refactoring in anticipation of handling variable bounds.
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/18415005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15625 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 11:47:05 +00:00
hpayer@chromium.org
99d541a486
Allocation folding integrated into the GVN phase.
...
BUG=
R=mstarzinger@chromium.org , titzer@chromium.org
Review URL: https://codereview.chromium.org/18596005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15624 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 11:41:33 +00:00
bmeurer@chromium.org
e3676e9135
Cleanup common POSIX functionality.
...
The Mutex implementation is the same for all 6 POSIX platformats, just
like of them use the sched_yield() to implement Thread::YieldCPU().
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/18335008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15623 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 11:37:08 +00:00
jochen@chromium.org
6170afb734
Roll ICU to 210659
...
See http://crrev.com/210659 for the actual change.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/18507003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15622 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 11:34:46 +00:00
hpayer@chromium.org
fba07ddd23
Perform new space evacuation based on marking bits.
...
BUG=
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/18531004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15621 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 11:24:38 +00:00
rossberg@chromium.org
3d9586c431
This adds the following array iterator methods:
...
Array.prototype.values
Array.prototype.keys
Array.prototype.entries
These all return an Array Iterator object which has a next
method.
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-15.4.5
BUG=v8:2722
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/16848004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15620 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 11:20:54 +00:00
jochen@chromium.org
2809793a4f
Only depend on icudata on windows.
...
On windows, this triggers the dll to be copied to the correct
locations. On other platforms, icudata is compiled in, and depending on
it results in an invalid linker archive ordering.
BUG=v8:2745
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/18734003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15619 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 11:01:00 +00:00
jochen@chromium.org
97409c2363
Move InitializeICU() to the V8 API and use it.
...
I can't get rid of the enable_i18n flag yet, as we need to be able to
turn off all extensions for creating the snapshot.
BUG=v8:2745
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/18860007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15618 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 09:58:54 +00:00
mvstanton@chromium.org
b61dfd4a82
A bug in AllocationSite::GetMode(from, to) meant that we didn't update
...
boilerplates for SMI to SMI_HOLEY transitions.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/18917003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15617 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 09:39:22 +00:00
hpayer@chromium.org
c518bee54e
Implemented lazy sweeping of new space.
...
BUG=
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/18998004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15616 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 09:17:03 +00:00
bmeurer@chromium.org
c294a40e0a
Turn canonicalization into a proper HPhase.
...
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/18758003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15613 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 08:21:50 +00:00
verwaest@chromium.org
e6721cdcb4
Fix StoreIsUninitialized, and add Soft Deopt if keyed store is uninitialized.
...
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/18526005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15612 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 07:52:57 +00:00
yangguo@chromium.org
56e2658eda
Set mime-type of test log file to text/plain.
...
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15611 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-11 07:39:38 +00:00
adamk@chromium.org
25ca62b6ad
HasRealIndexedProperty doesn't work on JSGlobalProxy
...
HasRealIndexedProperty didn't unwrap the JSGlobalProxy and therefore always
returned false.
BUG=257748
R=adamk@chromium.org , rossberg@chromium.org
Review URL: https://codereview.chromium.org/18402007
Patch from Adam Barth <abarth@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15610 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 19:03:58 +00:00
bmeurer@chromium.org
695b18c050
Turn merge removable simulates into a proper HPhase.
...
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/18258004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15609 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 16:34:28 +00:00
machenbach@chromium.org
1d1b846778
Suppress array bounds check for nacl build.
...
The NaCl and the ARM builder started failing to compile at revision 15593 with spurious array bounds warnings.
The ARM builder will be fixed by updating the cross-compiler version. Since the nacl compiler comes with the nacl toolchain, the warning will be suppressed for that builder.
See also: http://gcc.gnu.org/bugzilla/buglist.cgi?quicksearch=array%20subscript%20is%20above%20array%20bounds
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/19009003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15608 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 16:21:17 +00:00
dslomov@chromium.org
5eb63e483d
Change DataView accessors behavior for insufficient args.
...
ES6 spec for DataView is not fully finished, but Blink, WebKit and
Firefox agree in that for DataView use of getters/setters with no
arguments should result in exceptions, while undefined offset argument
is the same as zero.
R=bmeurer@chromium.org , rossberg@chromium.org
Review URL: https://codereview.chromium.org/18313007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15607 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 16:18:59 +00:00
verwaest@chromium.org
6efe8ca229
Flag rewriting an IC while writing to a global constant property as a failure caused by the constant property turning mutable.
...
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/19006002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15606 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 16:06:30 +00:00
olivf@chromium.org
e84649d85e
Fix unary op type feedback.
...
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/18526003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15605 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 16:03:00 +00:00
verwaest@chromium.org
d1155a1f09
Revert "Allow NORMAL ICs to go polymorphic."
...
BUG=
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/18881006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15604 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 16:00:48 +00:00
olivf@chromium.org
01b4c2831e
Use static_cast instead of reinterpret_cast
...
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/18899003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15603 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 16:00:08 +00:00
rodolph.perfetta@gmail.com
762157d697
ARM: Implement memcpy using NEON.
...
Add support for a few NEON and ARM SIMD instructions and use them for various
memcpy operations.
BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/17858002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15602 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 15:32:39 +00:00
palfia@homejinni.com
c04a72e76b
MIPS: Replace custom builtin invocation instructions by a generic version.
...
Port r15582 (585c121)
BUG=
Review URL: https://codereview.chromium.org/18881005
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15601 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 15:26:38 +00:00
verwaest@chromium.org
51aa0c13da
Allow NORMAL ICs to go polymorphic.
...
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/19005002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15600 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 15:24:15 +00:00
machenbach@chromium.org
dfd955ff9f
Enable debug builds with some optimizations turned on.
...
A new gyp variable 'v8_full_debug' can be set to 0 in order to turn on optimization level 1 for debug builds. With the default (=1), it builds in debug mode like before.
The intention is to run some bots on the waterfall with this configuration. Tests have a x5 speed-up like that.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/18516012
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15599 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 15:21:43 +00:00
danno@chromium.org
5bace7178d
Prepare push to trunk. Now working on version 3.20.5.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/18978006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15596 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 14:49:05 +00:00
bmeurer@chromium.org
5664bcaed3
Refactor compute minus zero checks into a proper HPhase.
...
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/18666006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15595 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 14:08:19 +00:00
bmeurer@chromium.org
854e9b99fb
Insert HTrapAllocationMemento only when required for TransitionElementsKindStub.
...
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/18292018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15594 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 13:24:51 +00:00
verwaest@chromium.org
cc877e4836
Turn polymorphic calls using the same prototype monomorphic.
...
R=mvstanton@chromium.org
Review URL: https://chromiumcodereview.appspot.com/18918002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15593 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 13:05:41 +00:00
loislo@chromium.org
487a61934f
Improve test-cpu-profiler.cc tests stability
...
The tests sometimes fail on bots as they don't have time to collect enough samples. This change makes them use counter of samples taken when v8 is either in JS or EXTERNAL state and repeat sampling until desired threshold is reached.
BUG=v8:2628
R=loislo@chromium.org , yangguo@chromium.org
Review URL: https://codereview.chromium.org/18418004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15592 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 12:56:58 +00:00
loislo@chromium.org
daacd5830e
HeapProfiler: check that heap snapshot has no unretained entries except root.
...
TEST=AllocationSitesAreVisible
BUG=
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/18996004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15591 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 12:40:42 +00:00
mvstanton@chromium.org
448b268962
Revert "Calls to HCheckFunction can be eliminated if the value is an HConstant"
...
This reverts commit 3f96122cc572f7a0b638c30f65328c3cb3666795.
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/18998003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15590 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 12:19:37 +00:00
bmeurer@chromium.org
bdff9c70b8
Use BuildGrowElementsCapacity for the TransitionElementsKind stub.
...
R=danno@chromium.org , dslomov@chromium.org
Review URL: https://codereview.chromium.org/18876004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15589 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 12:19:02 +00:00
verwaest@chromium.org
22d7a85519
Unify Count Operation assignment with other assignments
...
This relands 15578, disables 1 test in harmony observe re bug v8:2774
R=dslomov@chromium.org
Review URL: https://chromiumcodereview.appspot.com/18452013
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15588 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 12:02:18 +00:00
olivf@chromium.org
9a61947869
Fix missing spaces
...
BUG=
R=danno@chromium.org
Review URL: https://codereview.chromium.org/18991004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15587 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 12:01:29 +00:00
olivf@chromium.org
c5f20ef8dc
Type::GetName(...) for inspecting Types in the debugger
...
BUG=
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/18587007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15586 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 11:20:00 +00:00
jochen@chromium.org
865ce5806f
Factor out toolset definitions in a separate gypi file
...
That way, third-party libraries use the correct toolset settings.
BUG=v8:2745
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/18846002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15585 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 11:15:16 +00:00
jochen@chromium.org
c61c74d24f
Import intl test suite from v8-i18n project
...
BUG=v8:2745
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/18687003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 10:49:04 +00:00
palfia@homejinni.com
7c8883f3ce
MIPS: Adjust default Heap sizes.
...
This change decreases the default Heap sizes on MIPS (sets the
same sizes as on Android).
Most MIPS hw has smaller RAM size than 700MB, which can lead
to test failures, if a test does not set the Heap sizes explicitly
(like cctest/test-mark-compact/MarkCompactCollector).
BUG=
Review URL: https://codereview.chromium.org/18447003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15583 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 10:01:30 +00:00
olivf@chromium.org
857178ad23
Replace custom builtin invocation instructions by a generic version
...
BUG=
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/18154004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15582 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 09:02:23 +00:00
yangguo@chromium.org
5b70a58ad2
Fix plot script.
...
The script for the time line plot has been broken since r15484, which
changed the format of tick entries in v8.log.
To prevent this from happening in the future, I added a test case.
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/18826008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15581 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 07:53:27 +00:00
dslomov@chromium.org
6071894047
Revert "Unify the Count Operation assignment with other assignments."
...
This reverts commit r15578.
This change made mjsunit/harmony/object-observe.js flaky.
TBR=verwaest@chromium.org
Review URL: https://codereview.chromium.org/18537006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15580 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-10 07:53:16 +00:00
dslomov@chromium.org
cfa91762ac
Allow parameterless typed array constructors.
...
ES6 spec tacitly allows them, and they are allowed in Firefox and in
WebKit/Blink.
R=bmeurer@chromium.org ,rossberg@chromium.org
Review URL: https://codereview.chromium.org/18769005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15579 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-09 19:34:21 +00:00
verwaest@chromium.org
5eeed4636d
Unify the Count Operation assignment with other assignments.
...
This does not enable inlining of setters (yet).
R=danno@chromium.org
Review URL: https://chromiumcodereview.appspot.com/17432004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15578 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-09 17:08:47 +00:00
palfia@homejinni.com
b7a2c88f0f
MIPS: Do not omit the write-barrier if the input value is a smi.
...
Port r15573 (3954d53)
Original commit message:
ARM: Do not omit the write-barrier if the input value is a smi.
The input value isn't what is written into the field if the representation is double. A heap-number is written to the field instead; which requires a write-barrier.
BUG=chromium:254570
Review URL: https://codereview.chromium.org/18118010
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15577 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-09 15:58:31 +00:00
palfia@homejinni.com
17e228d3dd
MIPS: Implement Polymorphic Store ICs.
...
Port r15566 (a76585e)
Original commit message:
- Makes a common superclass for Load and Store stub compiler.
- Splits all non-normal Store ICs into handler and IC.
- Ensures monomorphic store ICs go polymorphic.
- Feeds polymorphic type feedback into count operation.
BUG=
Review URL: https://codereview.chromium.org/18595006
Patch from Balazs Kilvady <kilvadyb@homejinni.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15576 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-09 15:54:43 +00:00
mvstanton@chromium.org
3f1fc1d3ab
Bugfix: AllocationSite objects need to be walkable by the heap snapshot
...
generator.
BUG=
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/18584007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15575 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-09 14:16:59 +00:00
yangguo@chromium.org
b99ca1ab12
Do not implicitly convert receivers for builtin functions when inspecting frames.
...
R=jkummerow@chromium.org
BUG=
Review URL: https://codereview.chromium.org/18900004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15574 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-09 13:58:11 +00:00
verwaest@chromium.org
a1dfbc4627
ARM: Do not omit the write-barrier if the input value is a smi.
...
The input value isn't what is written into the field if the representation is double. A heap-number is written to the field instead; which requires a write-barrier.
BUG=chromium:254570
R=ulan@chromium.org
Review URL: https://chromiumcodereview.appspot.com/18854018
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15573 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-09 12:31:59 +00:00