platform/upstream/v8.git
10 years agoMIPS: optimize Lithium Allocate.
kilvadyb@homejinni.com [Tue, 24 Jun 2014 16:53:25 +0000 (16:53 +0000)]
MIPS: optimize Lithium Allocate.

Port r21968 (f6c757c)

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21988 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoARM64: fix operator precedence issue.
rodolph.perfetta@arm.com [Tue, 24 Jun 2014 16:20:44 +0000 (16:20 +0000)]
ARM64: fix operator precedence issue.

As a result the constant pool marker was always 0.

BUG=
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/350923003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21987 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoCPU profiler: increase the max number of captured frames.
alph@chromium.org [Tue, 24 Jun 2014 16:00:51 +0000 (16:00 +0000)]
CPU profiler: increase the max number of captured frames.

LOG=N
R=jkummerow@chromium.org, loislo@chromium.org, yurys@chromium.org

Review URL: https://codereview.chromium.org/357443003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21986 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMore Map methods moved to private part.
ishell@chromium.org [Tue, 24 Jun 2014 15:56:36 +0000 (15:56 +0000)]
More Map methods moved to private part.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/350023002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21985 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMaking MigrateToMap() a single bottleneck for all migrations except slow-to-fast...
ishell@chromium.org [Tue, 24 Jun 2014 15:28:29 +0000 (15:28 +0000)]
Making MigrateToMap() a single bottleneck for all migrations except slow-to-fast case.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/346743005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21984 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMore set_map() calls replaced with MigrateToMap().
ishell@chromium.org [Tue, 24 Jun 2014 14:53:48 +0000 (14:53 +0000)]
More set_map() calls replaced with MigrateToMap().

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/338793004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21983 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoPromote objects if semi-space copy fails while scavenging.
hpayer@chromium.org [Tue, 24 Jun 2014 14:30:22 +0000 (14:30 +0000)]
Promote objects if semi-space copy fails while scavenging.

BUG=388188
LOG=N
R=jarin@chromium.org

Review URL: https://codereview.chromium.org/351853006

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21980 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoInitialize the Isolate's use_counter_callback_ member
jochen@chromium.org [Tue, 24 Jun 2014 14:13:15 +0000 (14:13 +0000)]
Initialize the Isolate's use_counter_callback_ member

BUG=none
R=marja@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/345363003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21975 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoNew try: Parser: Delay internalizing strings and values
marja@chromium.org [Tue, 24 Jun 2014 14:03:24 +0000 (14:03 +0000)]
New try: Parser: Delay internalizing strings and values

This is a reincarnation of r21841.

The previous try was https://codereview.chromium.org/314603004/ but it regressed
JSBench and morejs.

BUG=
R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/335293004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert assertion change from r21933 in Isolate::RunMicrotasks().
yangguo@chromium.org [Tue, 24 Jun 2014 13:58:56 +0000 (13:58 +0000)]
Revert assertion change from r21933 in Isolate::RunMicrotasks().

R=marja@chromium.org

Review URL: https://codereview.chromium.org/357453002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21971 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSync 'git cl presubmit' and 'tools/presubmit.py'
jkummerow@chromium.org [Tue, 24 Jun 2014 13:56:54 +0000 (13:56 +0000)]
Sync 'git cl presubmit' and 'tools/presubmit.py'

More precisely, add CheckGeneratedRuntimeTests to checks performed by
'git cl presubmit'.

R=machenbach@chromium.org

Review URL: https://codereview.chromium.org/352583005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21970 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoWhitespace change to trigger bots.
machenbach@chromium.org [Tue, 24 Jun 2014 13:55:26 +0000 (13:55 +0000)]
Whitespace change to trigger bots.

BUG=
TBR=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/348583004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21969 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoARM: optimize Lithium Allocate
Jacob.Bramley@arm.com [Tue, 24 Jun 2014 12:54:59 +0000 (12:54 +0000)]
ARM: optimize Lithium Allocate

R=ulan@chromium.org, bmeurer@chromium.org

BUG=

Review URL: https://codereview.chromium.org/331993004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21968 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoDon't list platform-posix.cc twice on android
jochen@chromium.org [Tue, 24 Jun 2014 12:41:17 +0000 (12:41 +0000)]
Don't list platform-posix.cc twice on android

BUG=387326
R=marja@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/350893002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21967 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoARM64: Enable low level profiling.
baptiste.afsa@arm.com [Tue, 24 Jun 2014 12:40:20 +0000 (12:40 +0000)]
ARM64: Enable low level profiling.

R=ulan@chromium.org

Review URL: https://codereview.chromium.org/353643003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21965 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRemove unused variables from assembler-arm.cc.
marja@chromium.org [Tue, 24 Jun 2014 12:20:12 +0000 (12:20 +0000)]
Remove unused variables from assembler-arm.cc.

Local arm.debug build with make fails - not sure why arm build doesn't fail on
the waterfall.

R=rmcilroy@chromium.org
BUG=

Review URL: https://codereview.chromium.org/337273003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21964 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoARM: Fix inline assembly (r21949) for Clang.
Jacob.Bramley@arm.com [Tue, 24 Jun 2014 11:26:48 +0000 (11:26 +0000)]
ARM: Fix inline assembly (r21949) for Clang.

Add a 'c' predicate to the immediate syscall number. This tells the
compiler to omit the leading '#' that immediates usually have in ARM.
The GNU assembler tolerates "ldr r7, =#1234" but Clang does not.

BUG=V8:3403
LOG=N
R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/356463004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21963 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMake Object::IsFoo const.
svenpanne@chromium.org [Tue, 24 Jun 2014 09:47:25 +0000 (09:47 +0000)]
Make Object::IsFoo const.

Removed a few useless const_casts on the way.

R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/351573002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21961 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix a potential overflow in SortedListBSearch
yangguo@chromium.org [Tue, 24 Jun 2014 09:37:51 +0000 (09:37 +0000)]
Fix a potential overflow in SortedListBSearch

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/344513004

Patch from Jianghua Yang <jianghua.jhy@alibaba-inc.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21960 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRemove bogus assertions in HCompareObjectEqAndBranch.
yangguo@chromium.org [Tue, 24 Jun 2014 09:33:05 +0000 (09:33 +0000)]
Remove bogus assertions in HCompareObjectEqAndBranch.

R=jkummerow@chromium.org, danno@chromium.org
BUG=387636
LOG=Y

Review URL: https://codereview.chromium.org/331863015

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21959 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoDo not eagerly update allow_osr_at_loop_nesting_level.
yangguo@chromium.org [Tue, 24 Jun 2014 09:31:30 +0000 (09:31 +0000)]
Do not eagerly update allow_osr_at_loop_nesting_level.

Having debug break points prevents OSR. That causes
allow_osr_at_loop_nesting_level and the actually patched state
to go out of sync.

R=jkummerow@chromium.org
BUG=387599
LOG=Y

Review URL: https://codereview.chromium.org/346223007

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21958 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoARM64: Clean up LiveEdit.
Jacob.Bramley@arm.com [Tue, 24 Jun 2014 08:16:33 +0000 (08:16 +0000)]
ARM64: Clean up LiveEdit.

BUG=
R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/349973007

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21957 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSet host_arch to ia32 on machines with a 32bit userland but a 64bit kernel.
jochen@chromium.org [Tue, 24 Jun 2014 07:12:48 +0000 (07:12 +0000)]
Set host_arch to ia32 on machines with a 32bit userland but a 64bit kernel.

I don't know if there are any v8 bots with that configuration, but it seems
like a good idea to have v8 be consistent with chromium and nacl here, so that
this works fine if such a bot is ever set up.

This is similar to https://codereview.chromium.org/342493002/ , but with a
detect_v8_host_arch.py script that handles the additional machine types that
standalone.gypi used to handle.

Originally reviewed at https://codereview.chromium.org/346643002/

BUG=368384
LOG=Y
R=jochen@chromium.org

Review URL: https://codereview.chromium.org/349333006

Patch from Nico Weber <thakis@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21956 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAdd X32 port into V8
haitao.feng@intel.com [Tue, 24 Jun 2014 05:27:44 +0000 (05:27 +0000)]
Add X32 port into V8

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/18014003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21955 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoUpdate GetNextSpillIndex to support x32 port.
haitao.feng@intel.com [Tue, 24 Jun 2014 03:41:45 +0000 (03:41 +0000)]
Update GetNextSpillIndex to support x32 port.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/324253004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21954 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoChange some cmpq to cmpp, times_8 to times_pointer_size for x32 port.
haitao.feng@intel.com [Tue, 24 Jun 2014 03:39:54 +0000 (03:39 +0000)]
Change some cmpq to cmpp, times_8 to times_pointer_size for x32 port.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/334793003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21953 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMap/Set: Implement constructor parameter handling
adamk@chromium.org [Mon, 23 Jun 2014 18:05:57 +0000 (18:05 +0000)]
Map/Set: Implement constructor parameter handling

When an iterable object is passed in as the argument to the Map and Set
constructor the elements of the iterable object are used to populate the
Map and Set.

http://people.mozilla.org/~jorendorff/es6-draft.html#sec-map-iterable
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-set-iterable

BUG=v8:3398
LOG=Y
R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/345613003

Patch from Erik Arvidsson <arv@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21950 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoARM: Clean up FlushICache.
Jacob.Bramley@arm.com [Mon, 23 Jun 2014 17:30:00 +0000 (17:30 +0000)]
ARM: Clean up FlushICache.

In theory, the Thumb version of FlushICache doesn't have to be any
different from the ARM version: There is no need to switch to ARM mode
for the svc, and r7 can be used just like any other register.

In practice, GCC uses r7 as a frame pointer in Thumb code, and it
refuses to allow it be used in inline assembly. To avoid complicated
checks to determine whether or not it is possible to use it directly,
the FlushICache function explicitly preserves r7.

R=ulan@chromium.org

Review URL: https://codereview.chromium.org/335133002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21949 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Fix comment in r21905: "Support LiveEdit."
kilvadyb@homejinni.com [Mon, 23 Jun 2014 17:17:01 +0000 (17:17 +0000)]
MIPS: Fix comment in r21905: "Support LiveEdit."

BUG=
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/345243005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21948 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix #include order in snapshot-external.cc
Jacob.Bramley@arm.com [Mon, 23 Jun 2014 17:16:07 +0000 (17:16 +0000)]
Fix #include order in snapshot-external.cc

This corrects a linter complaint.

BUG=
R=mstarzinger@chromium.org, vogelheim@chromium.org

Review URL: https://codereview.chromium.org/351643002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21947 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Introduce intrinsic to expose debug state to generated code.
kilvadyb@homejinni.com [Mon, 23 Jun 2014 16:49:52 +0000 (16:49 +0000)]
MIPS: Introduce intrinsic to expose debug state to generated code.

Port r21908 (527abba)

BUG=
R=plind44@gmail.com

Review URL: https://codereview.chromium.org/343193005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21946 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoARM64: Optimize generated code for gaps
Jacob.Bramley@arm.com [Mon, 23 Jun 2014 16:00:53 +0000 (16:00 +0000)]
ARM64: Optimize generated code for gaps

R=ulan@chromium.org, jochen@chromium.org

Review URL: https://codereview.chromium.org/268673003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21945 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAdd PROJECT to v8
machenbach@chromium.org [Mon, 23 Jun 2014 15:33:19 +0000 (15:33 +0000)]
Add PROJECT to v8

BUG=374398
R=machenbach@chromium.org

Review URL: https://codereview.chromium.org/344163005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21944 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Create a RegisterSpec class inside of the IC that provides:"
mvstanton@chromium.org [Mon, 23 Jun 2014 14:28:38 +0000 (14:28 +0000)]
Revert "Create a RegisterSpec class inside of the IC that provides:"

This reverts commit r21939 due to a static initializer issue.

TBR=marja@chromium.org

Review URL: https://codereview.chromium.org/339663008

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21943 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMap::MigrateToMap() now supports fast case (transition from a map that has run out...
ishell@chromium.org [Mon, 23 Jun 2014 14:23:25 +0000 (14:23 +0000)]
Map::MigrateToMap() now supports fast case (transition from a map that has run out of property space).

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/347413002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21942 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSupport external startup data in V8.
vogelheim@chromium.org [Mon, 23 Jun 2014 13:52:17 +0000 (13:52 +0000)]
Support external startup data in V8.

[Re-retry of r21696 and r21739]

If the embedder chooses, the 'natives' (library sources) and the
precompiled startup blob can be written to files during the build
process and handed over to V8 at startup. The main purpose would be
to reduce the size of the compiled binary for space constrained
platforms.

The build-time option is off by default. Nothing should change if
it's not enabled.

BUG=
R=jochen@chromium.org

Review URL: https://codereview.chromium.org/334913004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21941 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSeveral methods moved from JSObject to Map.
ishell@chromium.org [Mon, 23 Jun 2014 13:46:49 +0000 (13:46 +0000)]
Several methods moved from JSObject to Map.

R=verwaest@chromium.org

Review URL: https://codereview.chromium.org/349203002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21940 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoCreate a RegisterSpec class inside of the IC that provides:
mvstanton@chromium.org [Mon, 23 Jun 2014 13:42:12 +0000 (13:42 +0000)]
Create a RegisterSpec class inside of the IC that provides:
1) symbolic names for the register (like, edx == receiver)
2) can return an array of registers
3) defines ordering when passed on the stack

Code that implements or uses the IC should use this RegisterSpec instead of "knowing" what the registers are. Or at least have the RegisterSpec to validate it's assumptions.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/340363002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21939 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoPartial revert of r21901 (2nd attempt)
jochen@chromium.org [Mon, 23 Jun 2014 13:30:03 +0000 (13:30 +0000)]
Partial revert of r21901 (2nd attempt)

Only disable runtime check for sse2 if __SSE2__ is not defined. This
is required for the x87 port

BUG=none
LOG=n
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/331803006

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21938 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSupport LiveEdit on Arm64
alph@chromium.org [Mon, 23 Jun 2014 13:20:26 +0000 (13:20 +0000)]
Support LiveEdit on Arm64

BUG=368580
LOG=Y
R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/339663007

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21937 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoHarden %FunctionBindArguments wrt optimized code cache.
yangguo@chromium.org [Mon, 23 Jun 2014 13:17:42 +0000 (13:17 +0000)]
Harden %FunctionBindArguments wrt optimized code cache.

R=jkummerow@chromium.org
BUG=387627
LOG=N

Review URL: https://codereview.chromium.org/345463005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21936 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years ago[Arm]: Simplify compile-time Arm feature detection.
rmcilroy@chromium.org [Mon, 23 Jun 2014 12:19:54 +0000 (12:19 +0000)]
[Arm]: Simplify compile-time Arm feature detection.

Simplify the compile time feature detection on Arm:
 - Define CAN_USE_XXX definitions unconditionally for all target/host
   toolchain combinations
 - Rename arm_test / ARM_TEST to arm_test_noprob / ARM_TEST_NO_FEATURE_PROBE
 - Don't set ARM_TEST_NO_FEATURE_PROBE implicitly on the simulator to make
   make simulator / native more consistent
 - Unify CpuFeatures::PrintTarget for simulator and native builds
 - Remove unecessary CAN_USE_VFP_INSTRUCTIONS definition for android (this is
   the default for arm_fpu=default)
 - Add a CpuFeatures::Probe() before calling CpuFeatures::PrintFeatures() in PrintHelp
    to ensure we have probed features before printing them.

BUG=384474
LOG=N
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/340373002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21935 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSpecial case ConstantPoolArray in MarkCompactCollector::MigrateObject.
rmcilroy@chromium.org [Mon, 23 Jun 2014 12:18:13 +0000 (12:18 +0000)]
Special case ConstantPoolArray in MarkCompactCollector::MigrateObject.

Special case the ConstantPoolArray in MarkCompactCollector::MigrateObject since it could contain
integer value entires which look like tagged pointers.

R=hpayer@chromium.org, mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/304223002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21934 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRun JS micro tasks in the appropriate context.
yangguo@chromium.org [Mon, 23 Jun 2014 11:47:20 +0000 (11:47 +0000)]
Run JS micro tasks in the appropriate context.

R=jochen@chromium.org
BUG=385349
LOG=Y

Review URL: https://codereview.chromium.org/332923003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21933 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years ago[Arm] Various cleanups to the Arm assembler backend.
rmcilroy@chromium.org [Mon, 23 Jun 2014 11:27:24 +0000 (11:27 +0000)]
[Arm] Various cleanups to the Arm assembler backend.

A couple of cleanups to the Arm backend to enable support of extended
OOL constant pools in a following CL.

 - Remove instruction pattern extern const's and replace their use with IsXXX()
   functions.
 - Do calculation of the target address of a load from constant pool in one
   place.
 - A couple of other small cleanups.

R=ulan@chromium.org

Review URL: https://codereview.chromium.org/317653003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21932 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoTiny cleanup, reduce direct usage of the LookupIterator
verwaest@chromium.org [Mon, 23 Jun 2014 10:44:08 +0000 (10:44 +0000)]
Tiny cleanup, reduce direct usage of the LookupIterator

BUG=
R=ishell@chromium.org

Review URL: https://codereview.chromium.org/346233003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21931 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoDon't bypass the global proxy as the global object should never escape into JS
verwaest@chromium.org [Mon, 23 Jun 2014 10:42:49 +0000 (10:42 +0000)]
Don't bypass the global proxy as the global object should never escape into JS

BUG=
R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/334233003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21930 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoEnsure the receiver for EnableAccessCheck is always a JSObject
verwaest@chromium.org [Mon, 23 Jun 2014 10:35:58 +0000 (10:35 +0000)]
Ensure the receiver for EnableAccessCheck is always a JSObject

BUG=
TBR=dcarney@chromium.org

Review URL: https://codereview.chromium.org/349923005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21929 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Partial revert of r21901"
marja@chromium.org [Mon, 23 Jun 2014 10:31:12 +0000 (10:31 +0000)]
Revert "Partial revert of r21901"

This reverts r21927.

Reason: broke the build.

BUG=
TBR=jochen@chromium.org, bmeurer@chromium.org

Review URL: https://codereview.chromium.org/347423002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21928 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoPartial revert of r21901
jochen@chromium.org [Mon, 23 Jun 2014 10:18:43 +0000 (10:18 +0000)]
Partial revert of r21901

Only disable runtime check for sse2 if __SSE2__ is not defined. This
is required for the x87 port

BUG=none
LOG=n
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/350693005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21927 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoTurn assert into RUNTIME_ASSERT
verwaest@chromium.org [Mon, 23 Jun 2014 09:52:05 +0000 (09:52 +0000)]
Turn assert into RUNTIME_ASSERT

TBR=dcarney@chromium.org
BUG=

Review URL: https://codereview.chromium.org/350683003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21926 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAdd a use counter API
jochen@chromium.org [Mon, 23 Jun 2014 09:46:58 +0000 (09:46 +0000)]
Add a use counter API

This lets embedders track certain features of v8 and the number of times
they are used

BUG=none
R=svenpanne@chromium.org, marja@chromium.org
LOG=y

Review URL: https://codereview.chromium.org/346233002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21925 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoARM64: updated literal pool implementation.
rodolph.perfetta@arm.com [Mon, 23 Jun 2014 09:30:45 +0000 (09:30 +0000)]
ARM64: updated literal pool implementation.

Currently the literal pool implemetation is inherited from the arm 32-bit port
and it shares the same limitations: 4k of range and 1000 entries max. In arm64
the load literal has a 1MB range giving us more flexibility.

Immutable entries are now shared.

BUG=
R=rmcilroy@chromium.org

Review URL: https://codereview.chromium.org/338523005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21924 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoX87: Introduce intrinsic to expose debug state to generated code.
weiliang.lin@intel.com [Mon, 23 Jun 2014 09:17:04 +0000 (09:17 +0000)]
X87: Introduce intrinsic to expose debug state to generated code.

port r21908.

original commit message:

BUG=
R=weiliang.lin@intel.com

Review URL: https://codereview.chromium.org/349183002

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21923 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRemove specialized access checks and overwrites altogether. They are already handled...
verwaest@chromium.org [Mon, 23 Jun 2014 09:11:45 +0000 (09:11 +0000)]
Remove specialized access checks and overwrites altogether. They are already handled by GetOwnPropertyAttributes (and GetPropertyAttributesWithFailedAccessChecks)

BUG=
R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/331693006

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSimplify Object::GetElementWithReceiver
jochen@chromium.org [Mon, 23 Jun 2014 09:09:36 +0000 (09:09 +0000)]
Simplify Object::GetElementWithReceiver

Don't inline GetPrototype() to avoid code duplication

BUG=none
R=dcarney@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/331313010

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRe-land "Clusterfuzz identified overflow check needed in dehoisting."
mvstanton@chromium.org [Mon, 23 Jun 2014 09:09:05 +0000 (09:09 +0000)]
Re-land "Clusterfuzz identified overflow check needed in dehoisting."

BUG=380092
LOG=N
R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/335063005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSimplify {Enable|Disable}AccessCheck
verwaest@chromium.org [Mon, 23 Jun 2014 09:04:17 +0000 (09:04 +0000)]
Simplify {Enable|Disable}AccessCheck

BUG=
R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/334243003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21919 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRemove AccessControl from AccessorPairs, as it's an invalid usecase of AllCan*
verwaest@chromium.org [Mon, 23 Jun 2014 09:02:16 +0000 (09:02 +0000)]
Remove AccessControl from AccessorPairs, as it's an invalid usecase of AllCan*

BUG=
R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/332863003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21918 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSimplify access checks performed by GetOwnProperty
verwaest@chromium.org [Mon, 23 Jun 2014 08:53:27 +0000 (08:53 +0000)]
Simplify access checks performed by GetOwnProperty

BUG=
R=dcarney@chromium.org

Review URL: https://codereview.chromium.org/339553002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21917 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMake our FOO::cast methods const.
svenpanne@chromium.org [Mon, 23 Jun 2014 08:51:13 +0000 (08:51 +0000)]
Make our FOO::cast methods const.

R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/347073003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21916 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAn object should only be promoted to the old generation if it survived a scavenge...
hpayer@chromium.org [Mon, 23 Jun 2014 08:50:54 +0000 (08:50 +0000)]
An object should only be promoted to the old generation if it survived a scavenge operation.

BUG=
R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/345523002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21915 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Set host_arch to ia32 on machines with a 32bit userland but a 64bit kernel."
marja@chromium.org [Mon, 23 Jun 2014 08:47:07 +0000 (08:47 +0000)]
Revert "Set host_arch to ia32 on machines with a 32bit userland but a 64bit kernel."

This reverts r21909.

Reason: breaks NaCL build.

BUG=
TBR=jochen@chromium.org

Review URL: https://codereview.chromium.org/346223004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21914 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSet host_arch to ia32 on machines with a 32bit userland but a 64bit kernel.
jochen@chromium.org [Mon, 23 Jun 2014 08:19:54 +0000 (08:19 +0000)]
Set host_arch to ia32 on machines with a 32bit userland but a 64bit kernel.

I don't know if there are any v8 bots with that configuration, but it seems
like a good idea to have v8 be consistent with chromium and nacl here, so that
this works fine if such a bot is ever set up.

This is similar to https://codereview.chromium.org/342493002/ , but with a
detect_v8_host_arch.py script that handles the additional machine types that
standalone.gypi used to handle.

BUG=368384 possibly?
LOG=Y
R=jochen@chromium.org

Review URL: https://codereview.chromium.org/346643002

Patch from Nico Weber <thakis@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21909 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoIntroduce intrinsic to expose debug state to generated code.
yangguo@chromium.org [Mon, 23 Jun 2014 07:10:25 +0000 (07:10 +0000)]
Introduce intrinsic to expose debug state to generated code.

R=ulan@chromium.org

Review URL: https://codereview.chromium.org/332673002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21908 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAdd missing map check to optimized f.apply(...)
jarin@chromium.org [Mon, 23 Jun 2014 05:50:06 +0000 (05:50 +0000)]
Add missing map check to optimized f.apply(...)

This is a cutdown version of https://codereview.chromium.org/346473002/, which aimed to fix f.call and f.apply. Optimized f.call was removed by r21887, this is what was left.

BUG=386034
LOG=N
R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/348623002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21907 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Fix big-endian after r21774/r21803.
plind44@gmail.com [Fri, 20 Jun 2014 23:02:36 +0000 (23:02 +0000)]
MIPS: Fix big-endian after r21774/r21803.

Fix big-endian ordering of InstanceType and BitField by always loading
the pair as a 16-bit value, even in the API accessor. Clean up some
assertions.

R=danno@chromium.org, mtbrandy@gmail.com

Review URL: https://codereview.chromium.org/334403003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21906 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Support LiveEdit.
palfia@homejinni.com [Fri, 20 Jun 2014 20:52:57 +0000 (20:52 +0000)]
MIPS: Support LiveEdit.

Port r21895 (210f7aa)

BUG=368580
LOG=Y
R=jkummerow@chromium.org, palfia@homejinni.com

Review URL: https://codereview.chromium.org/349703002

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21905 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Make object accessors more const-correct.
palfia@homejinni.com [Fri, 20 Jun 2014 20:36:49 +0000 (20:36 +0000)]
MIPS: Make object accessors more const-correct.

Port r21897 (1b152ae)

Fix MIPS implementation of READ_DOUBLE_FIELD() to use const parameter.

Original commit message:
Getting closer to making our IsFOO and FOO::cast methods
const-correct...

BUG=
R=gergely@homejinni.com, jkummerow@chromium.org

Review URL: https://codereview.chromium.org/344203005

Patch from Balazs Kilvady <kilvadyb@homejinni.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21904 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoArray.concat: properly go to dictionary mode when required
jkummerow@chromium.org [Fri, 20 Jun 2014 15:40:21 +0000 (15:40 +0000)]
Array.concat: properly go to dictionary mode when required

BUG=chromium:387031
LOG=y
R=danno@chromium.org

Review URL: https://codereview.chromium.org/342333002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21903 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix stack capture on overflow for Error.stackTraceLimit == Infinity
wingo@igalia.com [Fri, 20 Jun 2014 14:27:55 +0000 (14:27 +0000)]
Fix stack capture on overflow for Error.stackTraceLimit == Infinity

Bug found by Andrew Paprocki <andrew@ishiboo.com>.

R=mstarzinger@chromium.org, yangguo@chromium.org

Review URL: https://codereview.chromium.org/345533002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21902 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoClean up unused stuff in atomicops_internals_{tsan,x86_gcc}.h
jkummerow@chromium.org [Fri, 20 Jun 2014 12:58:48 +0000 (12:58 +0000)]
Clean up unused stuff in atomicops_internals_{tsan,x86_gcc}.h

This ports crrev.com/278081 and crrev.com/271506 to V8.

R=glider@chromium.org, svenpanne@chromium.org

Review URL: https://codereview.chromium.org/342323002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21901 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agotest-parsing: Add functionality to specify "always true flags".
marja@chromium.org [Fri, 20 Jun 2014 12:28:13 +0000 (12:28 +0000)]
test-parsing: Add functionality to specify "always true flags".

Many parsing tests need to pin a certain flag, and apart from the pinned flag,
we want to keep the "test with all combinations" behavior for the non-pinned
flags.

R=ulan@chromium.org
BUG=

Review URL: https://codereview.chromium.org/349603004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21900 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoARM: Avoid duplicate vmla when merging vmul and vadd
rodolph.perfetta@arm.com [Fri, 20 Jun 2014 11:26:17 +0000 (11:26 +0000)]
ARM: Avoid duplicate vmla when merging vmul and vadd

Avoid generating duplicate vmla instructions for vmul/vadd sequences where the
vmul has more than one use.

For example: function f(a, b, c) { return (a * b) + c + (a * b); }

Previously, this would produce a vmul for the subexpression (a * b), then vmla
for (a * b) + c, then vmla for (a * b) + [(a * b) + c].

Now it produces vmul, vadd, vadd, as expected.

BUG=
R=ulan@chromium.org

Review URL: https://codereview.chromium.org/323423003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21899 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRemove obsolete --harmony-promises flag from tests.
mstarzinger@chromium.org [Fri, 20 Jun 2014 10:47:50 +0000 (10:47 +0000)]
Remove obsolete --harmony-promises flag from tests.

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/345053002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21898 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMake object accessors more const-correct.
svenpanne@chromium.org [Fri, 20 Jun 2014 10:31:17 +0000 (10:31 +0000)]
Make object accessors more const-correct.

Getting closer to making our IsFOO and FOO::cast methods const-correct...

R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/349623002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21897 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoParser: Refactor strict mode checks for functions
marja@chromium.org [Fri, 20 Jun 2014 09:45:05 +0000 (09:45 +0000)]
Parser: Refactor strict mode checks for functions

Moves the strict mode checks and error reporting for the function and
parameter names into a separate CheckStrictFunctionNameAndParameters()
function in ParserBase. Parsing of arrow functions will then use this
new function instead of duplicating the error code.

BUG=
R=marja@chromium.org

Review URL: https://codereview.chromium.org/332053004

Patch from Adrián Pérez de Castro <aperez@igalia.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21896 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoSupport LiveEdit on ARM
alph@chromium.org [Fri, 20 Jun 2014 09:41:14 +0000 (09:41 +0000)]
Support LiveEdit on ARM

BUG=368580
LOG=Y
R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/344573004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21895 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoCheck alpha-sorting of includes during presubmit.
mstarzinger@chromium.org [Fri, 20 Jun 2014 08:40:11 +0000 (08:40 +0000)]
Check alpha-sorting of includes during presubmit.

R=rossberg@chromium.org

Review URL: https://codereview.chromium.org/333013002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21894 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAdded Message::GetScripOrigin.
yurys@chromium.org [Fri, 20 Jun 2014 07:44:05 +0000 (07:44 +0000)]
Added Message::GetScripOrigin.
Replaced Message::GetResourceName with GetScriptOrigin().ResourceName().

Now, GetScriptOrigin().ResourceName() function returns the resource name or sourceURL (from //# sourceURL=) for the script from where the function causing the error originates.

Method GetScriptResourceName() deprecated. Use GetScriptOrigin()->ResourceName() instead.

Blink: https://codereview.chromium.org/260513004/
R=yangguo@chromium.org, yurys@chromium.org

Review URL: https://codereview.chromium.org/265593002

Patch from Alexey Kozyatinskiy <kozyatinskiy@google.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21893 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years ago--verify-predictable mode added for ensuring that GC behaves deterministically.
ishell@chromium.org [Fri, 20 Jun 2014 07:35:48 +0000 (07:35 +0000)]
--verify-predictable mode added for ensuring that GC behaves deterministically.
In order to be able to use it one should pass verifypredictable=on to the make tool or specify v8_enable_verify_predictable=1 in GYP_DEFINES.

R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/325553002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21892 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMake the internal parts of our external API a bit more const-correct.
svenpanne@chromium.org [Fri, 20 Jun 2014 07:20:44 +0000 (07:20 +0000)]
Make the internal parts of our external API a bit more const-correct.

R=mstarzinger@chromium.org

Review URL: https://codereview.chromium.org/343583002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21891 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Optimize Function.prototype.call"
dcarney@chromium.org [Wed, 18 Jun 2014 14:04:41 +0000 (14:04 +0000)]
Revert "Optimize Function.prototype.call"

This reverts commit r21840.

R=danno@chromium.org
LOG=y
BUG=chromium:385565

Review URL: https://codereview.chromium.org/347573002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21887 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMove invalid string length check to the factory.
yangguo@chromium.org [Wed, 18 Jun 2014 13:26:02 +0000 (13:26 +0000)]
Move invalid string length check to the factory.

R=ishell@chromium.org

Review URL: https://codereview.chromium.org/347503003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21886 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix LStoreCodeEntry to treat the code_object parameter as input.
jarin@chromium.org [Wed, 18 Jun 2014 11:17:52 +0000 (11:17 +0000)]
Fix LStoreCodeEntry to treat the code_object parameter as input.

The bug seems to trigger only with array_index_dehoisting off in
the snapshot, so it is hard to test for (ideas?).

R=mvstanton@chromium.org
BUG=

Review URL: https://codereview.chromium.org/347523002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21885 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoIC misses should not count towards execution pauses in plots.
yangguo@chromium.org [Wed, 18 Jun 2014 11:05:31 +0000 (11:05 +0000)]
IC misses should not count towards execution pauses in plots.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/345543002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21884 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoAdd safe numerics classes, imported from Chromium.
jkummerow@chromium.org [Wed, 18 Jun 2014 11:01:54 +0000 (11:01 +0000)]
Add safe numerics classes, imported from Chromium.

Not used for anything yet.

R=jochen@chromium.org

Review URL: https://codereview.chromium.org/336183003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21883 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRevert "Parser: Delay internalizing strings and values." (r21841)
marja@chromium.org [Wed, 18 Jun 2014 07:30:56 +0000 (07:30 +0000)]
Revert "Parser: Delay internalizing strings and values." (r21841)

Plus the fixes on top.

Reason: regresses benchmarks (JSBench) and perf (morejs).

TBR=rossberg@chromium.org
BUG=385404
LOG=N

Review URL: https://codereview.chromium.org/345513003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21882 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoX87: Interrupts must not mask stack overflow.
weiliang.lin@intel.com [Wed, 18 Jun 2014 03:31:30 +0000 (03:31 +0000)]
X87: Interrupts must not mask stack overflow.

port r21874

original commit message:
   Interrupts must not mask stack overflow.
   BUG=385002
R=weiliang.lin@intel.com

Review URL: https://codereview.chromium.org/336413009

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21881 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: Interrupts must not mask stack overflow.
kilvadyb@homejinni.com [Tue, 17 Jun 2014 17:06:08 +0000 (17:06 +0000)]
MIPS: Interrupts must not mask stack overflow.

Port r21874 (bfea2c0)

BUG=385002
LOG=N

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21880 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoUntangle RNG from v8 core
jochen@chromium.org [Tue, 17 Jun 2014 16:27:19 +0000 (16:27 +0000)]
Untangle RNG from v8 core

This will allow for using the RNG from platform files without depending on
isolates.

BUG=none
R=bmeurer@chromium.org
LOG=n

Review URL: https://codereview.chromium.org/333053002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21879 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoMIPS: update owners.
plind44@gmail.com [Tue, 17 Jun 2014 15:34:03 +0000 (15:34 +0000)]
MIPS: update owners.

BUG=
R=danno@chromium.org

Review URL: https://codereview.chromium.org/334153002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21878 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoDrop obsolete ES6 TODOs about activating extended mode.
mstarzinger@chromium.org [Tue, 17 Jun 2014 15:22:38 +0000 (15:22 +0000)]
Drop obsolete ES6 TODOs about activating extended mode.

R=ulan@chromium.org

Review URL: https://codereview.chromium.org/338363002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21877 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRemove unnecessary virtual methods in the serializer.
yangguo@chromium.org [Tue, 17 Jun 2014 14:24:19 +0000 (14:24 +0000)]
Remove unnecessary virtual methods in the serializer.

R=marja@chromium.org

Review URL: https://codereview.chromium.org/339103005

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21876 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoRename arguments object support functions to new scheme.
mstarzinger@chromium.org [Tue, 17 Jun 2014 14:10:16 +0000 (14:10 +0000)]
Rename arguments object support functions to new scheme.

R=jkummerow@chromium.org

Review URL: https://codereview.chromium.org/338883003

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21875 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoInterrupts must not mask stack overflow.
yangguo@chromium.org [Tue, 17 Jun 2014 13:54:49 +0000 (13:54 +0000)]
Interrupts must not mask stack overflow.

R=jarin@chromium.org
BUG=385002
LOG=N

Review URL: https://codereview.chromium.org/339883002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21874 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoReduce number of writes to DependentCode array when inserting dependent IC.
ulan@chromium.org [Tue, 17 Jun 2014 13:22:34 +0000 (13:22 +0000)]
Reduce number of writes to DependentCode array when inserting dependent IC.

BUG=305878
LOG=Y
R=hpayer@chromium.org

Review URL: https://codereview.chromium.org/339843004

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21873 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoFix: AstValueFactory must be internalized before ThrowPendingError.
marja@chromium.org [Tue, 17 Jun 2014 11:48:37 +0000 (11:48 +0000)]
Fix: AstValueFactory must be internalized before ThrowPendingError.

R=rossberg@chromium.org
BUG=385193
LOG=N

Review URL: https://codereview.chromium.org/335373002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21872 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoDo GC if CodeRange fails to allocate a block.
ulan@chromium.org [Tue, 17 Jun 2014 08:20:12 +0000 (08:20 +0000)]
Do GC if CodeRange fails to allocate a block.

BUG=305878
LOG=Y
R=bmeurer@chromium.org

Review URL: https://codereview.chromium.org/332373002

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21869 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

10 years agoThrow syntax error when a getter/setter has the wrong number of params
marja@chromium.org [Tue, 17 Jun 2014 07:23:26 +0000 (07:23 +0000)]
Throw syntax error when a getter/setter has the wrong number of params

We used to allow any number of parameters in getters and setters to
match JSC. This is a violation of ES5.1 and both SpiderMonkey and
Chakra throw on these syntax errors.

BUG=v8:3371
LOG=Y
R=marja@chromium.org

Review URL: https://codereview.chromium.org/329413002

Patch from Erik Arvidsson <arv@chromium.org>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@21868 ce2b1a6d-e550-0410-aec6-3dcde31c8c00