verwaest@chromium.org
453d6fc285
Populate receiver types when there is no type feedback
...
When there is no type feedback yet, ComputeReceiverTypes
should still populate the SmallMapList when the receiver
is a HConstant.
BUG=
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/230363003
Patch from Petka Antonov <p.antonov@partner.samsung.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20646 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 09:49:53 +00:00
svenpanne@chromium.org
5bddec047d
Do not use ranges after range analysis.
...
Due to the SSA vs. SSI difference, we are only allowed to use the
flags computed during range analysis, not the ranges themselves. For
the case at hand, there is no such flag, so the condition is simply
remvoed.
BUG=361608
LOG=y
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/232553004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20645 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 09:40:17 +00:00
ishell@chromium.org
32735ae3a9
Object::GetElements() and friends maybehandlification.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/231103002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20644 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 09:20:11 +00:00
bmeurer@chromium.org
c5b6e76ada
Fix compiler warnings on Win64.
...
TEST=cctest/test-types
TBR=rossberg@chromium.org
Review URL: https://codereview.chromium.org/232773002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20643 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 09:14:46 +00:00
hpayer@chromium.org
21256676ad
Grow small old generation faster.
...
BUG=
R=bmeurer@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/232593003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20640 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 08:32:36 +00:00
bmeurer@chromium.org
4620ae5cf1
Fix symmetry of Maybe() predicate. Fix bug in NowContains() predicate.
...
Add tests for TypeImpl::Of(), TypeImpl::NowOf() and
TypeImpl::NowContains(). Improves the implementation of
TypeImpl::NowIs() to match that of TypeImpl::NowContains().
Mark test-types with NO_VARIANTS to speedup testing, since
the variants do not affect the type system at all.
Also improve test coverage for types.
TEST=cctest/test-types
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/230673002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20639 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 08:04:50 +00:00
hpayer@chromium.org
0387b23552
Disable concurrent sweeping.
...
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/232413003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20638 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 07:56:40 +00:00
bmeurer@chromium.org
5a564648dd
Improve reproducibility of test runs.
...
Add random seed to run-tests.py, using either a user supplied
value or a random number generated by random.SystemRandom().
This same random seed is passed to all test cases, making sure
that we can easily reproduce test failures that depend on
random numbers (i.e. bugs related to our handwritten ASLR).
Also fix all uses of rand() to make use of our RNG class
instead.
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/231443002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20637 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 07:25:49 +00:00
haitao.feng@intel.com
707a583116
Introduce LoadSharedFunctionInfoSpecialField for x64 port.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/231013002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20636 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 02:11:43 +00:00
haitao.feng@intel.com
cee232e6a8
Update Integer32ToSmiField, SmiToInteger32, and SmiComprare to support 31-bit SMI for x32 port
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/222133003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20635 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 01:25:28 +00:00
haitao.feng@intel.com
22ca5b97e4
Guard 32-bit SMI load/store optimization with SmiValuesAre32Bits predicate.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/228073004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20634 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-10 00:32:19 +00:00
ishell@chromium.org
7135c9fde2
ElementsAccessor::Delete() maybehandlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/230733003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20631 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 15:45:12 +00:00
yangguo@chromium.org
f320fe9471
Remove unused function typedefs.
...
R=hpayer@chromium.org
Review URL: https://codereview.chromium.org/230833002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20630 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 15:38:45 +00:00
machenbach@chromium.org
fd8a2a7f7a
Add V8 releases script.
...
This script retrieves the history of all V8 branches and trunk revisions and their corresponding Chromium revisions.
TEST=tools/push-to-trunk/releases.py -c <chrome path> --csv test.csv
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/227583002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20629 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 14:30:02 +00:00
mvstanton@chromium.org
41b6c8a0f1
Handlefy Descriptor and other code in objects.cc
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/228333003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20628 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 14:26:32 +00:00
machenbach@chromium.org
1b841f369d
Fix test expectations for nosnap windows.
...
BUG=v8:3216
LOG=n
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/230913002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20627 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 14:01:03 +00:00
jarin@chromium.org
008a70c47b
Revert "Make new space iterable when transitioning double array to objects"
...
This reverts r20603.
BUG=
Review URL: https://codereview.chromium.org/230863003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20626 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 13:39:03 +00:00
ishell@chromium.org
74e7a4ad07
ElementsAccessor::SetLength() maybehandlified.
...
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/229943006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20621 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 13:16:19 +00:00
jarin@chromium.org
57d70c149c
Avoid hydrogen compare-objects-equal assertions in dead code
...
ClusterFuzz test is triggering assertions for dead code. This fix issues
HDeoptimize instruction when it finds out that the compare instruction
is dead (because of previous checks).
R=yangguo@chromium.org
BUG=359491
LOG=N
Review URL: https://codereview.chromium.org/228883005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20620 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 13:08:28 +00:00
yangguo@chromium.org
ea1dc8eeef
Remove uses of non-handlified GetProperty.
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/229373007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20619 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 13:05:56 +00:00
machenbach@chromium.org
3d427b5599
Skip tests in nosnap mode.
...
Depends on https://codereview.chromium.org/230743002/ .
BUG=v8:3216
LOG=n
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/230583003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20618 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 13:01:54 +00:00
machenbach@chromium.org
a430449c68
Add the ability to disable tests in nosnap mode.
...
BUG=v8:3216
LOG=n
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/230743002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20617 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 12:57:43 +00:00
ishell@chromium.org
1862da47ec
Reland of r20606: Further ElementsAccessor handlification (GetKeyForIndex(), GetCapacity(), GetType() and GetAttributes()).
...
It was not related to test failures.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/230373007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20616 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 12:56:24 +00:00
jochen@chromium.org
dc4ba08d17
Allow the embedder to pass the virtual memory limit to v8
...
The getrlimit() call might be sandboxed, so it's not safe to use it.
BUG=none
R=mstarzinger@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/228923002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20615 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 12:45:56 +00:00
yangguo@chromium.org
4df132a878
Fix argument expectation Runtime_StringParseInt.
...
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/230693002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20614 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 12:33:51 +00:00
m.m.capewell@googlemail.com
936a77087b
ARM64: Use pair memory access in deoptimizer entry
...
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/228573003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20613 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 12:27:51 +00:00
hpayer@chromium.org
24692b306c
Turn on concurrent sweeping.
...
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/230733002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20612 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 12:27:20 +00:00
yangguo@chromium.org
aee76a059a
Remove calls to non-handlified version of GetProperty(name).
...
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/229973004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20611 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 12:21:47 +00:00
hpayer@chromium.org
66d63594bc
Use no barrier size accessor in FreeListCategory::SumFreeList.
...
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/230613002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20610 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 12:21:20 +00:00
bmeurer@chromium.org
a0ac88db82
Fix various bugs in the type systems, and improve test coverage.
...
R=rossberg@chromium.org
Review URL: https://codereview.chromium.org/230463003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20609 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 11:12:15 +00:00
palfia@homejinni.com
a0355e3745
Fix build with gcc 4.8 on Linux.
...
This fixes a build failure on Linux with gcc 4.8, after r20581.
BUG=
R=ishell@chromium.org
Review URL: https://codereview.chromium.org/229683003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20608 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 11:01:58 +00:00
ishell@chromium.org
d49e3fa75a
Revert "Further ElementsAccessor handlification (GetKeyForIndex(), GetCapacity(), GetType() and GetAttributes())."
...
This reverts commit r20606 for breaking tests on windows.
TBR=dcarney@chromium.org
Review URL: https://codereview.chromium.org/230603002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20607 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 10:58:17 +00:00
ishell@chromium.org
773738d4d1
Further ElementsAccessor handlification (GetKeyForIndex(), GetCapacity(), GetType() and GetAttributes()).
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/228643003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20606 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 09:58:26 +00:00
jochen@chromium.org
d426cd1012
Use abstract configurations to switch between opt debug settings
...
The problem is that conditions are evaluated before configuration inheritance is resolved, so we can't just define a configuration like this:
'Optdebug': {
'inherits_from': ['Debug'],
'variables': {
'v8_optimized_debug': 2,
}
}
Instead, we have to put the different settings depending on the optimization level into separate configurations, and use conditions inside the concrete configurations to inherit from the correct base class.
Common settings go in the base configuration DebugBaseCommon, and v8_optimized_debug dependent settings go into DebugBase{0,1,2}
The new Debug configuration inherits from DebugBaseCommon and DebugBase<(v8_optimized_debug), while the new configuration Optdebug inherits from DebugBaseCommon and DebugBase2.
BUG=v8:3252
R=machenbach@chromium.org , jkummerow@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/224443003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20605 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 09:54:49 +00:00
hpayer@chromium.org
728614daf9
Allow race-full access of map instance size when sweeping concurrently.
...
BUG=
R=jarin@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/227133007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20604 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 09:50:25 +00:00
jarin@chromium.org
69d5b3c155
Make new space iterable when transitioning double array to objects
...
R=hpayer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/228643002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20603 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 09:50:08 +00:00
mstarzinger@chromium.org
e3aec7a587
Fix return value of push() and unshift() on Array.prototype.
...
R=ulan@chromium.org
TEST=mjsunit/regress/regress-builtinbust-3
Review URL: https://codereview.chromium.org/230453002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20602 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 09:14:56 +00:00
yangguo@chromium.org
a8ad1390e7
Fix regexp compilation cache.
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/230283002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20601 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 09:01:38 +00:00
mstarzinger@chromium.org
f1a22a0fd2
Handlify all context allocators from the Heap.
...
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/230393002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20600 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 08:51:46 +00:00
hpayer@chromium.org
c85cc472e7
Introduced Atomic8 and added no-barrier Atomic8 accessors.
...
BUG=
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/228613005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20598 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 08:20:10 +00:00
jarin@chromium.org
05670b63bf
Add stack overflow check for inlined property getter
...
We should check for overflow for each inlined property getter;
otherwise, we can get an overflow from inlining property getter while
still having pending overflow exception from some previous inlined
getter (in the same polymorphic access).
R=verwaest@chromium.org
TEST=test/mjsunit/regress/regress-inline-getter-near-stack-limit.js
Review URL: https://codereview.chromium.org/220813003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20588 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-09 07:35:12 +00:00
adamk@chromium.org
902ad4a17a
Use OrderedHashTables as the backing store of JSSet and JSMap
...
This also deletes ObjectHashSet as it's no longer used.
BUG=v8:1793
LOG=N
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/225183009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20585 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 20:06:35 +00:00
jochen@chromium.org
60422b4541
Compile fix for NaCL
...
TBR=mstarzinger@chromium.org
BUG=none
LOG=n
Review URL: https://codereview.chromium.org/228953002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20584 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 18:12:00 +00:00
jochen@chromium.org
a9d9b72989
Return 0 as maximal amount of physical memory if there is no limit.
...
That's what the comment says should happen, and what Heap's ctor
expects.
BUG=none
LOG=n
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/226113006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20583 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 17:19:15 +00:00
hpayer@chromium.org
930ca1b52a
Synchronize store buffer processing and concurrent sweeping.
...
BUG=
R=jarin@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/227533006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20582 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 16:31:57 +00:00
ishell@chromium.org
df4ee49348
Further ElementsAccessor handlification (Get(), AddElementsToFixedArray() and HasElement()).
...
R=verwaest@chromium.org , yangguo@chromium.org
Review URL: https://codereview.chromium.org/227713003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20581 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 14:20:29 +00:00
Jacob.Bramley@arm.com
e93599c502
ARM64: Put all simulator trace on the same stream.
...
The simulator can trace to a specified stream, typically stderr or
stdout. However, several messages (such as ASM_LOCATIONs) were printed
only to stdout. As a result, they often ended up out of order with
respect to the instruction trace. This patch causes all simulator output
to go to the same stream.
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/226503004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20580 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 13:23:04 +00:00
ulan@chromium.org
4b5f38ef0c
Handlify RegExpKey.
...
This fixed mjsunit/unicode-case-overoptimization after r20578.
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/228483004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20579 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 13:14:03 +00:00
ulan@chromium.org
226c1d25f3
Handlify CompilationCache.
...
BUG=
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/224733022
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20578 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 12:33:08 +00:00
rmcilroy@chromium.org
c8df5f42a2
Use correct call size for PredictableCodeSizeScopes.
...
If out-of-line constant pool is enabled, then calls can be 3 instructions
rather than 2. Fix the hard-coded PredictableCodeSizeScopes values with values
based on CallSize instead.
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/226503003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20577 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-04-08 12:28:28 +00:00