platform/upstream/v8.git
9 years agoShow function <name>() { [native code] } for built-in classes
domenic [Thu, 30 Apr 2015 09:29:33 +0000 (02:29 -0700)]
Show function <name>() { [native code] } for built-in classes

The existing logic would show the full source for all classes, even
built-in ones.

R=arv@chromium.org,dslomov@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28151}

9 years agoDetect simple tail calls
svenpanne [Thu, 30 Apr 2015 09:10:21 +0000 (02:10 -0700)]
Detect simple tail calls

This CL contains the first steps towards tail call optimization:

  * Structurally detect tail calls during instruction selection,
    looking for special return/call combinations.

  * Added new architecture-specific instructions for tail calls which
    jump instead of call and take care of frame adjustment.

  * Moved some code around.

Currently we restrict tail calls to callees which only use registers
for arguments/return value and to call sites which are explicitly
marked as being OK for tail calls. This excludes, among other things,
call sites in sloppy JS functions and our IC machinery (both need in
general to be able to access the caller's frame).

All this is behind a flag --turbo-tail-calls, which is currently off
by default, so it can easily be toggled.

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

Cr-Commit-Position: refs/heads/master@{#28150}

9 years ago[test] Add avx2 bot to CQ.
machenbach [Thu, 30 Apr 2015 08:47:43 +0000 (01:47 -0700)]
[test] Add avx2 bot to CQ.

BUG=chromium:478460
LOG=n
NOTRY=true
TBR=bmeurer@chromium.org, mvstanton@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28149}

9 years agoRevert of Remove the weak list of array buffers (patchset #8 id:140001 of https:...
machenbach [Thu, 30 Apr 2015 08:38:18 +0000 (01:38 -0700)]
Revert of Remove the weak list of array buffers (patchset #8 id:140001 of https://codereview.chromium.org/1114563002/)

Reason for revert:
[Sheriff] Crashes in layout tests:
https://chromegw.corp.google.com/i/client.v8/builders/V8-Blink%20Linux%2064%20%28dbg%29/builds/2668

Original issue's description:
> Remove the weak list of array buffers
>
> Instead, collect live array buffers during marking and free pointers we
> no longer found.
>
> BUG=v8:3996
> R=hpayer@chromium.org
> LOG=n
>
> Committed: https://crrev.com/2d39709cf5ee17637f6f2d75380a9e61ae0b342b
> Cr-Commit-Position: refs/heads/master@{#28132}

TBR=dslomov@chromium.org,hpayer@chromium.org,jochen@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3996

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

Cr-Commit-Position: refs/heads/master@{#28148}

9 years ago[base] Drop obsolete Thread::YieldCPU.
bmeurer [Thu, 30 Apr 2015 08:08:46 +0000 (01:08 -0700)]
[base] Drop obsolete Thread::YieldCPU.

The method is not used anywhere, and it is a bad idea in general anyway.
If you see a need to call YieldCPU, then you're code is probably in need
of a redesign!

R=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28147}

9 years agoAdd shift to InternalArray and InternalPackedArray
domenic [Thu, 30 Apr 2015 08:07:13 +0000 (01:07 -0700)]
Add shift to InternalArray and InternalPackedArray

It's useful for queue-like data structures.

R=yangguo@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28146}

9 years agoFix AIX compiler warning
michael_dawson [Thu, 30 Apr 2015 08:01:50 +0000 (01:01 -0700)]
Fix AIX compiler warning

Fix AIX compiler warning indicating that variable may not be
initialized

modified:   src/heap/heap.cc

R=danno@chromium.org, svenpanne@chromium.org, mbrandy@us.ibm.com

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28145}

9 years agoSwitch to larger TOC on AIX for unitttests
michael_dawson [Thu, 30 Apr 2015 07:50:22 +0000 (00:50 -0700)]
Switch to larger TOC on AIX for unitttests

Switch to larger TOC on AIX for unitttests as the size has grown
such that it no longer compiles with the default TOC size

modified:   unittests.gyp

R=danno@chromium.org, svenpanne@chromium.org, mbrandy@us.ibm.com

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28144}

9 years agoMIPS: Add rounding support in simulator and RINT instruction.
Djordje.Pesic [Thu, 30 Apr 2015 06:29:08 +0000 (23:29 -0700)]
MIPS: Add rounding support in simulator and RINT instruction.

Added rounding according to fcsr, CVT_W_D and RINT.D instruction in assembler, dissasembler and simulator and wrote appropiate tests.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28143}

9 years ago[test-runner] Enable specification of trybots.
machenbach [Thu, 30 Apr 2015 05:12:33 +0000 (22:12 -0700)]
[test-runner] Enable specification of trybots.

Now it's possible to specify the desired trybots for perf
tries, e.g.:

tools/try_perf.py --linux64_haswell octane sunspider

BUG=chromium:478460
LOG=n
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#28142}

9 years agoUpdate V8 DEPS.
v8-autoroll [Thu, 30 Apr 2015 03:32:51 +0000 (20:32 -0700)]
Update V8 DEPS.

Rolling v8/build/gyp to 0bb67471bca068996e15b56738fa4824dfa19de0

Rolling v8/buildtools to 15f5fc6fdb1795e2b99f66e5bc6c01e9fb62b436

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28141}

9 years agoReland: [turbofan] add MachineType to AllocatedOperand
dcarney [Wed, 29 Apr 2015 19:36:16 +0000 (12:36 -0700)]
Reland: [turbofan] add MachineType to AllocatedOperand

- allows the optimization of emitted gap move code since the representation of the value in the register is known
- necessary preparation for vector register allocation
- prepare for slot sharing for any value of the same byte width

TBR=jarin@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28140}

9 years agoRevert of [turbofan] add MachineType to AllocatedOperand (patchset #17 id:310001...
machenbach [Wed, 29 Apr 2015 18:28:38 +0000 (11:28 -0700)]
Revert of [turbofan] add MachineType to AllocatedOperand (patchset #17 id:310001 of https://codereview.chromium.org/1087793002/)

Reason for revert:
[Sheriff] Breaks compile on chromium asan and v8 msan:
http://build.chromium.org/p/client.v8/builders/Linux%20ASAN%20Builder/builds/3446
http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/builds/2085

Original issue's description:
> [turbofan] add MachineType to AllocatedOperand
>
> - allows the optimization of emitted gap move code since the representation of the value in the register is known
> - necessary preparation for vector register allocation
> - prepare for slot sharing for any value of the same byte width
>
> BUG=
>
> Committed: https://crrev.com/3a025d1ab6437559f86a464767aa03d2d9789f6f
> Cr-Commit-Position: refs/heads/master@{#28137}

TBR=jarin@chromium.org,dcarney@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28139}

9 years ago[test] Remove deprecated GraphTester helper class.
mstarzinger [Wed, 29 Apr 2015 15:16:05 +0000 (08:16 -0700)]
[test] Remove deprecated GraphTester helper class.

R=bmeurer@chromium.org
TEST=cctest/test-node

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

Cr-Commit-Position: refs/heads/master@{#28138}

9 years ago[turbofan] add MachineType to AllocatedOperand
dcarney [Wed, 29 Apr 2015 14:46:10 +0000 (07:46 -0700)]
[turbofan] add MachineType to AllocatedOperand

- allows the optimization of emitted gap move code since the representation of the value in the register is known
- necessary preparation for vector register allocation
- prepare for slot sharing for any value of the same byte width

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28137}

9 years ago[test] Turn compiler/test-node-cache into a unit test.
mstarzinger [Wed, 29 Apr 2015 14:39:55 +0000 (07:39 -0700)]
[test] Turn compiler/test-node-cache into a unit test.

R=jarin@chromium.org
TEST=unittests/NodeCacheTest

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

Cr-Commit-Position: refs/heads/master@{#28136}

9 years agoPrint PID and isolate address in gc traces.
hpayer [Wed, 29 Apr 2015 14:29:39 +0000 (07:29 -0700)]
Print PID and isolate address in gc traces.

Note, that it also moves incremental marking traces behind the --trace-incremental-marking flag.

Other PrintF's of the GC should be moved as well to PrintPIDAndIsolate.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28135}

9 years ago[test] Remove deprecated cctest/test-node-algorithm tests.
mstarzinger [Wed, 29 Apr 2015 14:13:17 +0000 (07:13 -0700)]
[test] Remove deprecated cctest/test-node-algorithm tests.

R=jarin@chromium.org
TEST=cctest/test-graph-visualizer

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

Cr-Commit-Position: refs/heads/master@{#28134}

9 years agoDon't run macros or jsmin on extra snapshot scripts
domenic [Wed, 29 Apr 2015 14:01:35 +0000 (07:01 -0700)]
Don't run macros or jsmin on extra snapshot scripts

js2c.py now distinguishes between the JS internal sources and any
extra scripts passed in. The latter only get validation and
comment/trailing whitespace removal applied now.

Also added a --js option to js2c.py, which will output a JS file
instead of a C++ file, for debugging. (I got tired of finding the
generated .cc file and extracting its byte array so that I could feed
it to a separate helper script I wrote.)

R=yangguo@chromium.org, jochen@chromium.org
BUG=v8:4064
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28133}

9 years agoRemove the weak list of array buffers
jochen [Wed, 29 Apr 2015 13:04:43 +0000 (06:04 -0700)]
Remove the weak list of array buffers

Instead, collect live array buffers during marking and free pointers we
no longer found.

BUG=v8:3996
R=hpayer@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#28132}

9 years agoDestructuring: add more parssing tests.
dslomov [Wed, 29 Apr 2015 13:03:26 +0000 (06:03 -0700)]
Destructuring: add more parssing tests.

R=arv@chromium.org
BUG=v8:811
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28131}

9 years agoMIPS: Followup 'Fix Add HArrayBufferNotNeutered instruction'.
balazs.kilvady [Wed, 29 Apr 2015 11:46:49 +0000 (04:46 -0700)]
MIPS: Followup 'Fix Add HArrayBufferNotNeutered instruction'.

Followup fix of nit discussed in Issue 1111003002.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28130}

9 years ago[turbofan] Fix returns for large-sized frames in TurboFan ia32 and x64 backends.
titzer [Wed, 29 Apr 2015 11:32:17 +0000 (04:32 -0700)]
[turbofan] Fix returns for large-sized frames in TurboFan ia32 and x64 backends.

R=dcarney@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28129}

9 years agoX87: Don't MISS if you read the hole from certain FastHoley arrays.
chunyang.dai [Wed, 29 Apr 2015 10:34:19 +0000 (03:34 -0700)]
X87: Don't MISS if you read the hole from certain FastHoley arrays.

port caeb9004f0bfc2a916fc63e9d27100a3110016d4 (r28056)

original commit message:
    If the array's map is the initial FastHoley array map, and the array prototype
    chain is undisturbed and empty of elements, then keyed loads can convert the
    load of a hole to undefined.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28128}

9 years agoPass ArrayBuffer::Allocator via Isolate::CreateParams
jochen [Wed, 29 Apr 2015 09:54:34 +0000 (02:54 -0700)]
Pass ArrayBuffer::Allocator via Isolate::CreateParams

We shouldn't have shared state between isolates by default. The embedder
is free to pass the same allocator to all isolates it creates.

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

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

Cr-Commit-Position: refs/heads/master@{#28127}

9 years agoFix unobservable constructor replacement on prototype maps
jkummerow [Wed, 29 Apr 2015 09:31:38 +0000 (02:31 -0700)]
Fix unobservable constructor replacement on prototype maps

BUG=chromium:478522
LOG=y
R=verwaest@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28126}

9 years ago[turbofan] Correctly handle illegal redeclarations.
mstarzinger [Wed, 29 Apr 2015 09:22:35 +0000 (02:22 -0700)]
[turbofan] Correctly handle illegal redeclarations.

R=titzer@chromium.org
TEST=mjsunit/const-redecl

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

Cr-Commit-Position: refs/heads/master@{#28125}

9 years agoFix stale pointer issue in heap snapshot generator
jkummerow [Wed, 29 Apr 2015 09:03:06 +0000 (02:03 -0700)]
Fix stale pointer issue in heap snapshot generator

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

Cr-Commit-Position: refs/heads/master@{#28124}

9 years agoAdd comment to justify AllowDeferredHandleDereference in WeakCell factory.
ulan [Wed, 29 Apr 2015 08:36:05 +0000 (01:36 -0700)]
Add comment to justify AllowDeferredHandleDereference in WeakCell factory.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28123}

9 years ago[test] Skip tests on msan.
machenbach [Wed, 29 Apr 2015 07:19:49 +0000 (00:19 -0700)]
[test] Skip tests on msan.

NOTRY=true
BUG=chromium:425187
LOG=n
TBR=Sven Panne, titzer

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

Cr-Commit-Position: refs/heads/master@{#28122}

9 years agoRevert of deprecate non-phantom weak callbacks (patchset #1 id:1 of https://coderevie...
machenbach [Wed, 29 Apr 2015 05:57:08 +0000 (22:57 -0700)]
Revert of deprecate non-phantom weak callbacks (patchset #1 id:1 of https://codereview.chromium.org/1103173002/)

Reason for revert:
[Sheriff] This is still used and now blocks the roll here:
http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_compile_dbg_ng/builds/47889

Original issue's description:
> Reland: deprecate non-phantom weak callbacks
>
> BUG=
>
> Committed: https://crrev.com/3be656fb55ad49834ec8ec0a57ba858bb1b21f37
> Cr-Commit-Position: refs/heads/master@{#28094}

TBR=jochen@chromium.org,dcarney@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28121}

9 years agoCalculate blocks needing a frame and frame (de)construction sites.
svenpanne [Wed, 29 Apr 2015 05:54:41 +0000 (22:54 -0700)]
Calculate blocks needing a frame and frame (de)construction sites.

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

Cr-Commit-Position: refs/heads/master@{#28120}

9 years agoUpdate V8 DEPS.
v8-autoroll [Wed, 29 Apr 2015 03:28:37 +0000 (20:28 -0700)]
Update V8 DEPS.

Rolling v8/tools/clang to 44f7f0bbbce9e581d9328e80d5b0ae88efbc3db4

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28119}

9 years agoFix JSArrayBuffer for big endian.
mbrandy [Tue, 28 Apr 2015 20:00:44 +0000 (13:00 -0700)]
Fix JSArrayBuffer for big endian.

BUG=
R=jochen@chromium.org, dcarney@chromium.org, dstence@us.ibm.com, michael_dawson@ca.ibm.com

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

Cr-Commit-Position: refs/heads/master@{#28118}

9 years agoMIPS: Fix 'Add HArrayBufferNotNeutered instruction'.
balazs.kilvady [Tue, 28 Apr 2015 17:20:49 +0000 (10:20 -0700)]
MIPS: Fix 'Add HArrayBufferNotNeutered instruction'.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28117}

9 years agoPPC: Fix HArrayBufferNotNeutered instruction
mbrandy [Tue, 28 Apr 2015 17:19:40 +0000 (10:19 -0700)]
PPC: Fix HArrayBufferNotNeutered instruction

Fix faulty condition register usage after andi.

BUG=
R=dstence@us.ibm.com, michael_dawson@ca.ibm.com, jochen@chromium.org, bmeurer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28116}

9 years agoImport webkit class tests
arv [Tue, 28 Apr 2015 16:42:35 +0000 (09:42 -0700)]
Import webkit class tests

BUG=v8:3330
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28115}

9 years ago[es6] Fix return checking in derived constructors
arv [Tue, 28 Apr 2015 16:09:21 +0000 (09:09 -0700)]
[es6] Fix return checking in derived constructors

In a derived class constructor in case undefined is returned, we
should return the receiver. If the return is any other value type
we should throw a TypeError.

BUG=v8:4061
LOG=N
R=dslomov@chromium.org, adamk@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28114}

9 years agoMIPS: Fix FP load/store with large offsets from base register.
paul.lind [Tue, 28 Apr 2015 15:42:26 +0000 (08:42 -0700)]
MIPS: Fix FP load/store with large offsets from base register.

BUG=481519
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#28113}

9 years agoParsing binding patterns.
dslomov [Tue, 28 Apr 2015 15:15:03 +0000 (08:15 -0700)]
Parsing binding patterns.

Just parsing, no desugaring yet.

R=arv@chromium.org,rossberg@chromium.org
BUG=v8:811
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28112}

9 years agoUse "define" instead of "const" for natives macros
domenic [Tue, 28 Apr 2015 14:58:15 +0000 (07:58 -0700)]
Use "define" instead of "const" for natives macros

The use of "const" prevented the actual JavaScript const keyword from
functioning as intended.

R=jochen@chromium.org,yangguo@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28111}

9 years agoAllow extra library files to be snapshotted
domenic [Tue, 28 Apr 2015 14:55:58 +0000 (07:55 -0700)]
Allow extra library files to be snapshotted

BUG=
R=jochen@chromium.org, yangguo@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28110}

9 years agoAdd HArrayBufferNotNeutered instruction
jochen [Tue, 28 Apr 2015 13:42:54 +0000 (06:42 -0700)]
Add HArrayBufferNotNeutered instruction

This instruction can be hoisted out of loops even though it contains a branch.

BUG=v8:3996
R=bmeurer@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#28109}

9 years agoAdd missing stdlib include for sample
Jochen Eisinger [Tue, 28 Apr 2015 12:28:31 +0000 (14:28 +0200)]
Add missing stdlib include for sample

BUG=none
R=machenbach@chromium.org, machenbach@chromium.or
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#28108}

9 years agoShrink new space and uncommit from space in idle notification during long idle times.
hpayer [Tue, 28 Apr 2015 12:18:22 +0000 (05:18 -0700)]
Shrink new space and uncommit from space in idle notification during long idle times.

BUG=chromium:481811
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#28107}

9 years agoUpdate _MSC_FULL_VER for 'final' RC bug workaround
scottmg [Tue, 28 Apr 2015 11:33:40 +0000 (04:33 -0700)]
Update _MSC_FULL_VER for 'final' RC bug workaround

Repeat of https://codereview.chromium.org/1084763002/.

The 'final' RC has changed the version number, but the bug will not be
fixed until RTM.

LOG=N
R=jochen@chromium.org
BUG=chromium:440500

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

Cr-Commit-Position: refs/heads/master@{#28106}

9 years agoRemove support for malloc'd typed arrays
jochen [Tue, 28 Apr 2015 11:25:25 +0000 (04:25 -0700)]
Remove support for malloc'd typed arrays

All typed arrays should be allocated through the array buffer allocator

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

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

Cr-Commit-Position: refs/heads/master@{#28105}

9 years ago[strong] Disallow implicit conversions for bitwise ops, shifts
conradw [Tue, 28 Apr 2015 11:20:13 +0000 (04:20 -0700)]
[strong] Disallow implicit conversions for bitwise ops, shifts

See https://codereview.chromium.org/1092353002/

Due to parser rewrites, also implements restrictions for unary ~.

Still to come, implementing restrictions for binary + and comparison.

BUG=v8:3956
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28104}

9 years ago[test] Skip unsuitable tests for msan.
machenbach [Tue, 28 Apr 2015 11:18:35 +0000 (04:18 -0700)]
[test] Skip unsuitable tests for msan.

NOTRY=true
BUG=chromium:425187
LOG=n
TBR=Sven Panne, titzer

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

Cr-Commit-Position: refs/heads/master@{#28103}

9 years agoReland: Preprocess structured stack trace on GC to get rid of code reference.
yangguo [Tue, 28 Apr 2015 11:13:22 +0000 (04:13 -0700)]
Reland: Preprocess structured stack trace on GC to get rid of code reference.

BUG=v8:2340
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28102}

9 years agoOnly try to unregister prototype users that are prototypes themselves
jkummerow [Tue, 28 Apr 2015 11:02:44 +0000 (04:02 -0700)]
Only try to unregister prototype users that are prototypes themselves

Because only such maps would have been registered in the first place.
This is a performance fix/followup to f6187fb3b52e518 / r28076.

BUG=chromium:481785
LOG=n
R=yangguo@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28101}

9 years agoExtending v8::GetHeapStatistics to return total available size.
ssid [Tue, 28 Apr 2015 10:57:38 +0000 (03:57 -0700)]
Extending v8::GetHeapStatistics to return total available size.

For dumping memory statistics about v8 heap, we need the total
available size of the heap. This CL adds extra field in HeapStatistics
to return the available size.

BUG=476013
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#28100}

9 years ago[turbofan] Cleanup LiveRange a bit.
dcarney [Tue, 28 Apr 2015 09:59:55 +0000 (02:59 -0700)]
[turbofan] Cleanup LiveRange a bit.

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

Cr-Commit-Position: refs/heads/master@{#28099}

9 years agoTurn JSArrayBuffer::flags into a bit field
jochen [Tue, 28 Apr 2015 09:40:35 +0000 (02:40 -0700)]
Turn JSArrayBuffer::flags into a bit field

That way, we can access it more easily without all the smi magic

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

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

Cr-Commit-Position: refs/heads/master@{#28098}

9 years ago[test] Restrict msan to default variant.
machenbach [Tue, 28 Apr 2015 09:05:41 +0000 (02:05 -0700)]
[test] Restrict msan to default variant.

NOTRY=true
BUG=chromium:425187
LOG=n
TBR=Sven Panne, titzer

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

Cr-Commit-Position: refs/heads/master@{#28097}

9 years agofix assertion in Logger::CurrentTimeEvent with --prof
ofrobots [Tue, 28 Apr 2015 08:54:17 +0000 (01:54 -0700)]
fix assertion in Logger::CurrentTimeEvent with --prof

assertion did match the conditions under which this method gets called
(Runtime_DateCurrentTime). The bug got introduced as part of this change:
https://codereview.chromium.org/802333002

The assertion crash can be reproduced using:
% out/Debug/d8 --prof -e 'new Date();'

R=jkummerow@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28096}

9 years agoPort CallSite methods to C++.
yangguo [Tue, 28 Apr 2015 08:53:12 +0000 (01:53 -0700)]
Port CallSite methods to C++.

The goal is to port all of error stack trace formatting to C++.
We will do this bottom up, by first porting helper functions.

Eventually, CallSite methods will only be used when a custom
error stack trace formatter is defined via Error.prepareStackTrace.

R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28095}

9 years agoReland: deprecate non-phantom weak callbacks
dcarney [Tue, 28 Apr 2015 08:31:49 +0000 (01:31 -0700)]
Reland: deprecate non-phantom weak callbacks

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28094}

9 years ago[clang] Use -Wshorten-64-to-32 to enable warnings about 64bit to 32bit truncations.
bmeurer [Tue, 28 Apr 2015 06:54:08 +0000 (23:54 -0700)]
[clang] Use -Wshorten-64-to-32 to enable warnings about 64bit to 32bit truncations.

Currently only the Win64 bots report this warnings, which adds quite
some overhead to the development process. With this flag we also get
compiler warnings about implicit 64bit to 32bit truncations when
building with clang on Linux/x64 and Mac/x64.

R=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28093}

9 years ago[turbofan] Better fix for Win64 after r28066.
bmeurer [Tue, 28 Apr 2015 05:09:24 +0000 (22:09 -0700)]
[turbofan] Better fix for Win64 after r28066.

TBR=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28092}

9 years agoUpdate V8 DEPS.
v8-autoroll [Tue, 28 Apr 2015 03:27:55 +0000 (20:27 -0700)]
Update V8 DEPS.

Rolling v8/tools/clang to 5df4027be48d44a72ef035978746aac46184720e

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28091}

9 years agoDisable two test cases for turbofan unsupported platform.
chunyang.dai [Mon, 27 Apr 2015 17:02:49 +0000 (10:02 -0700)]
Disable two test cases for turbofan unsupported platform.

  These two test cases "InlineCreateArrayLiteral" and "InlineCreateObjectLiteral" are
  added in d1597b7d22d4bd7790715d486b4ceb404310adad. They invokes Linkage::GetStubCallDescriptor
  which is unimplemented for turbofan unsupported platform.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28090}

9 years agoPPC: Don't MISS if you read the hole from certain FastHoley arrays.
mbrandy [Mon, 27 Apr 2015 17:01:40 +0000 (10:01 -0700)]
PPC: Don't MISS if you read the hole from certain FastHoley arrays.

Port caeb9004f0bfc2a916fc63e9d27100a3110016d4

Original commit message:
If the array's map is the initial FastHoley array map, and the array prototype
chain is undisturbed and empty of elements, then keyed loads can convert the
load of a hole to undefined.

BUG=

R=dstence@us.ibm.com, michael_dawson@ca.ibm.com

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

Cr-Commit-Position: refs/heads/master@{#28089}

9 years agoRevert of Make it possible to hoist the neutering check for TA property accesses...
machenbach [Mon, 27 Apr 2015 16:56:31 +0000 (09:56 -0700)]
Revert of Make it possible to hoist the neutering check for TA property accesses (patchset #1 id:1 of https://codereview.chromium.org/1107993002/)

Reason for revert:
[Sheriff] Breaks benchmarks:
http://build.chromium.org/p/client.v8/builders/V8%20Linux/builds/3403

Original issue's description:
> Make it possible to hoist the neutering check for TA property accesses
>
> Also correctly set up the dependency between propoerty and elements
> accesses and the checks
>
> BUG=v8:3996
> R=hpayer@chromium.org
> LOG=n
>
> Committed: https://crrev.com/6a62e321381e1a212983804c4197068e842b240f
> Cr-Commit-Position: refs/heads/master@{#28087}

TBR=hpayer@chromium.org,jochen@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3996

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

Cr-Commit-Position: refs/heads/master@{#28088}

9 years agoMake it possible to hoist the neutering check for TA property accesses
jochen [Mon, 27 Apr 2015 16:18:16 +0000 (09:18 -0700)]
Make it possible to hoist the neutering check for TA property accesses

Also correctly set up the dependency between propoerty and elements
accesses and the checks

BUG=v8:3996
R=hpayer@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#28087}

9 years agoRevert of Preprocess structured stack trace on GC to get rid of code reference. ...
dslomov [Mon, 27 Apr 2015 15:53:46 +0000 (08:53 -0700)]
Revert of Preprocess structured stack trace on GC to get rid of code reference. (patchset #5 id:80001 of https://codereview.chromium.org/1103843002/)

Reason for revert:
Broke GCStress

Original issue's description:
> Preprocess structured stack trace on GC to get rid of code reference.
>
> R=verwaest@chromium.org
> BUG=v8:2340
> LOG=N
>
> Committed: https://crrev.com/462ffa1dfa0ab3a851ea0294470d1ed7ed12dd56
> Cr-Commit-Position: refs/heads/master@{#28085}

TBR=verwaest@chromium.org,ulan@chromium.org,hpayer@chromium.org,yurys@chromium.org,yangguo@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:2340

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

Cr-Commit-Position: refs/heads/master@{#28086}

9 years agoPreprocess structured stack trace on GC to get rid of code reference.
yangguo [Mon, 27 Apr 2015 14:51:01 +0000 (07:51 -0700)]
Preprocess structured stack trace on GC to get rid of code reference.

R=verwaest@chromium.org
BUG=v8:2340
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28085}

9 years agoUse ExpressionClassifier for bindings.
dslomov [Mon, 27 Apr 2015 14:35:45 +0000 (07:35 -0700)]
Use ExpressionClassifier for bindings.

Just a refactoring, real pattern parsing comes in a later CL.

R=rossberg@chromium.org,marja@chromium.org
BUG=v8:811
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28084}

9 years agoRemove kOsrCompileFailed bailout.
titzer [Mon, 27 Apr 2015 14:24:49 +0000 (07:24 -0700)]
Remove kOsrCompileFailed bailout.

R=mstarzinger@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28083}

9 years agoDo more to avoid last-resort stop-the-world GC
erikcorry [Mon, 27 Apr 2015 14:10:27 +0000 (07:10 -0700)]
Do more to avoid last-resort stop-the-world GC

BUG=chromium:481433
R=hpayer@chromium.org
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#28082}

9 years agoReland: track global accesses to constant types
dcarney [Mon, 27 Apr 2015 14:01:15 +0000 (07:01 -0700)]
Reland: track global accesses to constant types

R=verwaest@chromium.org
BUG=468620
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28081}

9 years agoChanging Size to SizeOfObjects in GetHeapSpaceStatistics api.
ssid [Mon, 27 Apr 2015 14:00:25 +0000 (07:00 -0700)]
Changing Size to SizeOfObjects in GetHeapSpaceStatistics api.

This CL changes GetHeapSpaceStatistics api to return SizeOfObjects()
instead of Size(). SizeOfObjects is the required field and is
consistent with GetHeapStatistics api.

BUG=476013
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#28080}

9 years agoRevert of deprecate non-phantom weak callbacks (patchset #1 id:1 of https://coderevie...
machenbach [Mon, 27 Apr 2015 13:30:40 +0000 (06:30 -0700)]
Revert of deprecate non-phantom weak callbacks (patchset #1 id:1 of https://codereview.chromium.org/1103173002/)

Reason for revert:
[Sheriff] Fails compilation on chromium android:
http://build.chromium.org/p/client.v8/builders/Android%20Builder/builds/4131

Is the chromium version our builder used maybe too old (it uses lkcr)? In that case please reland as soon as it's up-to-date.

Original issue's description:
> deprecate non-phantom weak callbacks
>
> BUG=
>
> Committed: https://crrev.com/39c31da2142ab0fca9dae279b9e59cd4951a1982
> Cr-Commit-Position: refs/heads/master@{#28077}

TBR=jochen@chromium.org,dcarney@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28079}

9 years agoReland [test] Make msan work for v8 stand-alone. (patchset #1 id:1 of https://coderev...
machenbach [Mon, 27 Apr 2015 13:20:05 +0000 (06:20 -0700)]
Reland [test] Make msan work for v8 stand-alone. (patchset #1 id:1 of https://codereview.chromium.org/1104073002/)

Reason for revert:
Reland after switching bot to ninja.

Original issue's description:
> Revert of [test] Make msan work for v8 stand-alone. (patchset #6 id:100001 of https://codereview.chromium.org/802583003/)
>
> Reason for revert:
> Compile failures: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/builds/2047
>
> Original issue's description:
> > [test] Make msan work for v8 stand-alone.
> >
> > The msan configuration can be used in combination with
> > v8_use_snapshot=false.
> >
> > BUG=chromium:425187
> > LOG=n
> >
> > Committed: https://crrev.com/a65ef0d53fc28b0908f228938c6d84effa83c596
> > Cr-Commit-Position: refs/heads/master@{#28064}
>
> TBR=jochen@chromium.org,earthdok@chromium.org,svenpanne@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=chromium:425187
>
> Committed: https://crrev.com/f69a48696ec3ec0ea1169a41b4c84fb36b059968
> Cr-Commit-Position: refs/heads/master@{#28068}

TBR=jochen@chromium.org,earthdok@chromium.org,svenpanne@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:425187

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

Cr-Commit-Position: refs/heads/master@{#28078}

9 years agodeprecate non-phantom weak callbacks
dcarney [Mon, 27 Apr 2015 13:06:47 +0000 (06:06 -0700)]
deprecate non-phantom weak callbacks

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28077}

9 years agoReland "Lazily register prototype users..."
jkummerow [Mon, 27 Apr 2015 12:59:55 +0000 (05:59 -0700)]
Reland "Lazily register prototype users..."

...when handing out validity cells to handlers; because invalidating said cells is
the only time we'll need the user registrations.
Along the way, fix a corner case in WeakFixedArray, which can now be empty after
the recently introduced compaction support.

This reverts commit 968715c653b6337252a05a0224a7a93fab3b0866.

Original review: https://codereview.chromium.org/1104813004/

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

Cr-Commit-Position: refs/heads/master@{#28076}

9 years ago[turbofan] make register hinting explicit
dcarney [Mon, 27 Apr 2015 12:46:47 +0000 (05:46 -0700)]
[turbofan] make register hinting explicit

- instead of committing operands early to resolve hints, hold the hint register data on the UsePosition
- allow hints to be rolled back efficiently as needed by GreedyAllocator
- some small drive by fixes

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28075}

9 years agoWrap messages implementation in a function.
yangguo [Mon, 27 Apr 2015 12:33:58 +0000 (05:33 -0700)]
Wrap messages implementation in a function.

R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28074}

9 years ago[turbofan] Reland: Optimize loads from the global object in JSTypeFeedbackSpecializer.
titzer [Mon, 27 Apr 2015 12:15:32 +0000 (05:15 -0700)]
[turbofan] Reland: Optimize loads from the global object in JSTypeFeedbackSpecializer.

R=mstarzinger@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28073}

9 years agoEagerly declare eval scopes, even for sloppy scopes
wingo [Mon, 27 Apr 2015 12:13:45 +0000 (05:13 -0700)]
Eagerly declare eval scopes, even for sloppy scopes

R=mstarzinger@chromium.org
LOG=N
BUG=N

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

Cr-Commit-Position: refs/heads/master@{#28072}

9 years agoDebugger: clean up debug events.
yangguo [Mon, 27 Apr 2015 12:10:24 +0000 (05:10 -0700)]
Debugger: clean up debug events.

The debug event BreakForCommand is now deprecated, as it cannot happen any longer.

R=ulan@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28071}

9 years ago[release-tools] Return no hash if version is not available.
hablich [Mon, 27 Apr 2015 11:32:29 +0000 (04:32 -0700)]
[release-tools] Return no hash if version is not available.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28070}

9 years agoDisable test-run-jsexceptions for nosnap builds.
titzer [Mon, 27 Apr 2015 11:18:41 +0000 (04:18 -0700)]
Disable test-run-jsexceptions for nosnap builds.

R=mstarzinger@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28069}

9 years agoRevert of [test] Make msan work for v8 stand-alone. (patchset #6 id:100001 of https...
machenbach [Mon, 27 Apr 2015 11:14:31 +0000 (04:14 -0700)]
Revert of [test] Make msan work for v8 stand-alone. (patchset #6 id:100001 of https://codereview.chromium.org/802583003/)

Reason for revert:
Compile failures: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/builds/2047

Original issue's description:
> [test] Make msan work for v8 stand-alone.
>
> The msan configuration can be used in combination with
> v8_use_snapshot=false.
>
> BUG=chromium:425187
> LOG=n
>
> Committed: https://crrev.com/a65ef0d53fc28b0908f228938c6d84effa83c596
> Cr-Commit-Position: refs/heads/master@{#28064}

TBR=jochen@chromium.org,earthdok@chromium.org,svenpanne@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:425187

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

Cr-Commit-Position: refs/heads/master@{#28068}

9 years ago[turbofan] Fix win64 after r28066.
Benedikt Meurer [Mon, 27 Apr 2015 11:04:54 +0000 (13:04 +0200)]
[turbofan] Fix win64 after r28066.

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28067}

9 years ago[turbofan] Add language mode to JSCallFunction operator.
Benedikt Meurer [Mon, 27 Apr 2015 10:44:47 +0000 (12:44 +0200)]
[turbofan] Add language mode to JSCallFunction operator.

Also do some drive-by-cleanup to the unittests.

R=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28066}

9 years agoHandlify ExecutableAccessorInfo::ClearSetter since it allocates.
verwaest [Mon, 27 Apr 2015 10:18:51 +0000 (03:18 -0700)]
Handlify ExecutableAccessorInfo::ClearSetter since it allocates.

BUG=chromium:478556
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#28065}

9 years ago[test] Make msan work for v8 stand-alone.
machenbach [Mon, 27 Apr 2015 10:14:25 +0000 (03:14 -0700)]
[test] Make msan work for v8 stand-alone.

The msan configuration can be used in combination with
v8_use_snapshot=false.

BUG=chromium:425187
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#28064}

9 years agoRevert of [turbofan] Optimize loads from the global object in JSTypeFeedbackSpecializ...
machenbach [Mon, 27 Apr 2015 10:07:30 +0000 (03:07 -0700)]
Revert of [turbofan] Optimize loads from the global object in JSTypeFeedbackSpecializer. (patchset #10 id:180001 of https://codereview.chromium.org/1063513003/)

Reason for revert:
[sheriff] Breaks nosnap debug:
http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap%20-%20debug%20-%201/builds/156

Original issue's description:
> [turbofan] Optimize loads from the global object in JSTypeFeedbackSpecializer.
>
> Uses lazy deoptimization and code dependencies to introduce loads
> from property cells and also to promote globals to constants.
>
> R=mstarzinger@chromium.org
> BUG=
>
> Committed: https://crrev.com/aae4a62d07e839455b1d0ad4fa512cc5d48a1a68
> Cr-Commit-Position: refs/heads/master@{#28057}

TBR=mstarzinger@chromium.org,titzer@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28063}

9 years ago[turbofan] Introduce explicit JSCreateLiteral[Array|Object].
mstarzinger [Mon, 27 Apr 2015 09:57:47 +0000 (02:57 -0700)]
[turbofan] Introduce explicit JSCreateLiteral[Array|Object].

This uses explicit operators instead of intrinsic runtime calls to
create literals froms boilerplates. It allows for easier access of
static parameters and syncs it with other allocating operators.

R=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28062}

9 years ago[turbofan] Sanitize language mode for JSStoreProperty operator.
Benedikt Meurer [Mon, 27 Apr 2015 09:33:58 +0000 (11:33 +0200)]
[turbofan] Sanitize language mode for JSStoreProperty operator.

R=mstarzinger@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28061}

9 years agoReland "Remove the weak list of views from array buffers"
jochen [Mon, 27 Apr 2015 09:28:16 +0000 (02:28 -0700)]
Reland "Remove the weak list of views from array buffers"

Original description:
> Instead, views have to check their array buffer for whether
> it's neutered or not.
>
> BUG=v8:3996
> R=hpayer@chromium.org,dslomov@chromium.org,verwaest@chromium.org
> LOG=n

BUG=v8:3996
R=hpayer@chromium.org,dslomov@chromium.org,verwaest@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#28060}

9 years ago[turbofan] Sanitize language mode for javascript operators.
Benedikt Meurer [Mon, 27 Apr 2015 09:12:58 +0000 (11:12 +0200)]
[turbofan] Sanitize language mode for javascript operators.

R=mstarzinger@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28059}

9 years ago[turbofan] Use FastNewClosureStub if possible.
mstarzinger [Mon, 27 Apr 2015 09:08:20 +0000 (02:08 -0700)]
[turbofan] Use FastNewClosureStub if possible.

This introduces a JSCreateClosure operator which can be lowered by the
typed pipeline to the aforementioned stub. It also allows for further
optimizations of closure creation.

R=titzer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28058}

9 years ago[turbofan] Optimize loads from the global object in JSTypeFeedbackSpecializer.
titzer [Mon, 27 Apr 2015 09:07:09 +0000 (02:07 -0700)]
[turbofan] Optimize loads from the global object in JSTypeFeedbackSpecializer.

Uses lazy deoptimization and code dependencies to introduce loads
from property cells and also to promote globals to constants.

R=mstarzinger@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28057}

9 years agoDon't MISS if you read the hole from certain FastHoley arrays.
mvstanton [Mon, 27 Apr 2015 08:46:58 +0000 (01:46 -0700)]
Don't MISS if you read the hole from certain FastHoley arrays.

If the array's map is the initial FastHoley array map, and the array prototype
chain is undisturbed and empty of elements, then keyed loads can convert the
load of a hole to undefined.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28056}

9 years agoFix stack layout of full code arm64 for object literal.
jarin [Mon, 27 Apr 2015 08:31:56 +0000 (01:31 -0700)]
Fix stack layout of full code arm64 for object literal.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28055}

9 years ago[test] Limit "unittests" suite to default variant.
mstarzinger [Mon, 27 Apr 2015 08:20:20 +0000 (01:20 -0700)]
[test] Limit "unittests" suite to default variant.

This changes the unittests suite to be run in only the default variant,
because unit tests are (and should be) written to be independent from
global flags.

R=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28054}

9 years ago[turbofan] LiveRange splitting at interval boundary fix.
mtrofin [Mon, 27 Apr 2015 07:21:58 +0000 (00:21 -0700)]
[turbofan] LiveRange splitting at interval boundary fix.

When splitting live ranges between interval boundary,
the intervals still link eachother. This fixes that.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28053}

9 years agoUpdate V8 DEPS.
v8-autoroll [Sun, 26 Apr 2015 03:26:01 +0000 (20:26 -0700)]
Update V8 DEPS.

Rolling v8/tools/clang to cb9ddad752c487e2f4df2bf32df70daaa9afded5

TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28052}