Commit Graph

30176 Commits

Author SHA1 Message Date
ishell
f541033b5f [es7] Add --harmony-explicit-tailcalls flag.
BUG=v8:4915
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35484}
2016-04-14 10:51:35 +00:00
ahaas
15fc9d063a [wasm] Remove the use of JSOperatorBuilder.ToNumber to avoid JSGenericLowering.
R=mstarzinger@chromium.org
BUG=v8:4914
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#35483}
2016-04-14 10:34:05 +00:00
mstarzinger
b958ba5fd8 [compiler] Remove CompilationInfo::is_first_compile flag.
This removes the flag in question. It just duplicates the corresponding
compilation hint in the underlying SharedFunctionInfo object. Now that
the backends should have a SharedFunctionInfo available most of the time
it is safe to use the cannonical predicate.

R=bmeurer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35482}
2016-04-14 10:28:02 +00:00
yangguo
ad4e8a2796 Correctly annotate eval origin.
There were a couple of issues with it:
- interpreter is not supported
- the source position was just accidentally correct for full-codegen
- the eval origin could have been cached

Also fixes a few other places to use AbstractCode.

R=mstarzinger@chromium.org

Committed: https://crrev.com/2f3a171adc9e620c2235bf0562145b9d4eaba66d
Cr-Commit-Position: refs/heads/master@{#35257}

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

Cr-Commit-Position: refs/heads/master@{#35481}
2016-04-14 10:08:15 +00:00
rmcilroy
0c05e02f25 [Interpreter] Make dispatch table point to code entry instead of code objects.
Modifies Ignition to store code entry addresses in the dispatch table
rather than code objects. This allows the interpreter to avoid
calculating the code entry address from the code object on every
dispatch and provides a ~5-7% performance improvement on Octane with
Ignition.

This change adds ArchOpcode::kArchTailCallAddress to TurboFan to enable
tail call dispatch using these code addresses. It also adds a Dispatch
linkage creator (distinct from the stub linkage type used previously) to
allow targetting a code address target (which will diverge further from
the stub linkage type when we remove the context machine register in
Ignition).

BUG=v8:4280
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35480}
2016-04-14 10:04:26 +00:00
epertoso
1b63d124ad [crankshaft] Hook the binary operators TurboFan code stubs with crankshaft.
Replaces the HCallRuntime instruction in HGraphBuilder::BuildBinaryOperation with a call to the corresponding TurboFan stub.

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

Cr-Commit-Position: refs/heads/master@{#35479}
2016-04-14 09:40:00 +00:00
zhengxing.li
a0d2f240c3 X87: [Interpreter] Changes GenerateDoubleToObject to push and pop rsi value.
port e6b6e55453 (r35163)

  original commit message:
  In the earlier implementation of GenerateDoubleToObject the context
  is loaded from the parent's frame. rsi is clobbered because it is used
  to store kHoleNan constnat. It is not always safe to peek at
  the parents frame. Bytecode handlers have TypedFrame and the type of
  frame is stored at FP + 1. GenerateDoubleToObject expects context
  to be store at that place. In the current implementation rsi is pushed
  onto the stack and is popped when exiting this function.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35478}
2016-04-14 09:28:44 +00:00
mstarzinger
35395d988e [compiler] Fix optimized code lookup in GetLazyCode.
This makes sure that when cached optimized code is found while doing
lazy compilation via Compiler::Compile installs any existing literals
array as well.

R=mvstanton@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35477}
2016-04-14 09:20:39 +00:00
zhengxing.li
8e4fbb059a X87: [wasm] Refactoring pair-shift code in the instruction selector of arm and ia32.
port f954934d62 (r35140)

  original commit message:

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35476}
2016-04-14 09:07:17 +00:00
mythria
7effb4f736 [Interpreter] Updates mjsunit.status.
Removes skips for two tests that no longer fail on windows system.
Updates description of another failing test with more details.

BUG=v8:4280,v8:4680
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35475}
2016-04-14 09:01:34 +00:00
mlippautz
97e3909a53 [api] Deprecate *MemoryAllocationCallback
To keep track of memory characteristics of a JS program use
GetHeapSpaceStatistics from a combination of
- a GC epilogue callback registered using AddGCEpilogueCallback
- an interrupt registered using RequestInterrupt

Rationale:
The feature is currently broken as those callbacks are (also) executed from
background threads, breaking our implicit contract for only performing callbacks
on the foreground thread. Furhtermore, it's not clear for the embedder whether
these allocations originate in JS, or are required for a GC.

Note:
- The already deprecated non-isolate versions are removed with this CL.

R=jochen@chromium.org
BUG=v8:4813
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#35474}
2016-04-14 08:53:41 +00:00
zhengxing.li
1e6f2ff368 X87: [turbofan] Frame elision for code stubs.
port 53d51c52f3 (r35139)

  original commit message:
  Removed Frame::needs_frame and the function-wide logic using it in
  favor of FrameAccessState::has_frame, which can be set on a more
  granular level, and driving it block by block.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35473}
2016-04-14 08:49:54 +00:00
mstarzinger
3699f902d6 [compiler] Remove CompileEvalForDebugging pipeline.
This removes one of the duplicated pipeline implementation from the
compiler. By now we can reuse the existing CompileForDebugging for all
compilations being kicked off for debugging.

R=bmeurer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35472}
2016-04-14 08:08:43 +00:00
mstarzinger
793ae860e5 [compiler] Drop obsolete compiler hint setting.
The compiler hints in question are already correctly initialized by the
NewSharedFunctionInfoForLiteral function. Reinitializing them again here
is no longer needed by now.

R=bmeurer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35471}
2016-04-14 08:01:06 +00:00
machenbach
8f8dd7150f [build] New VS 2013 toolchain with setenv.*.json
Port https://codereview.chromium.org/1886493002

BUG=chromium:603011, chromium:603131
LOG=n
TBR=jochen@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35470}
2016-04-14 07:59:05 +00:00
bmeurer
5b99eec342 [turbofan] Remove unused PlainPrimitiveToNumber operator.
At some point we thought about using this instead of JSToNumber, but now
there doesn't seem to be any reason for this anymore.

R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35469}
2016-04-14 07:42:22 +00:00
verwaest
a915f5bf48 Replace DefineIndexedProperty with %CreateDataProperty
This should bring back the performance of speedometer-backbone at least very close to the performance before @@species.

BUG=chromium:596825
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#35468}
2016-04-14 07:40:04 +00:00
bradnelson
53bc649e88 [wasm] Adding metrics for Asm/Wasm.
Collecting:
Time histograms for: instantiate, decode module, decode function, compile, compile function.
Memory histograms for: decode peak, instantiate peak, compile function peak, min mem pages, max mem pages, function bytes, module bytes.
Range histograms of: functions per module.

BUG= https://code.google.com/p/v8/issues/detail?id=4203
BUG= https://bugs.chromium.org/p/chromium/issues/detail?id=575167
TEST=None
R=ahaas@chromium.org,bmeurer@chromium.org
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35467}
2016-04-14 07:30:14 +00:00
ahaas
6f8630ed7b [x64] Avoid the sign extension in the DoubleToI conversion.
We use the cvttsd2si (float64-to-int32) instruction to avoid that negative numbers get sign extended in the destination register.

@rodolph: Is sign extension also a thing on arm64? I noticed that also on arm64 a float64-to-int64 instruction is used.

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

Cr-Commit-Position: refs/heads/master@{#35466}
2016-04-14 07:25:41 +00:00
machenbach
b0e14e148c [test] Skip flaky test.
BUG=v8:4751
LOG=n
NOTRY=true
TBR=adamk@chromium.org, rmcilroy@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35465}
2016-04-14 07:22:22 +00:00
zhengxing.li
1c5f0badbf X87: [turbofan] Need add V8_TARGET_ARCH_X87 in src/globals.h
The CL #35139 (https://codereview.chromium.org/1775323002) added V8_TARGET_ARCH_IA32 macro in
  src/globals.h.

  X87 is almost same as IA32, So It needs the V8_TARGET_ARCH_X87 macro in src/globals.h too.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35464}
2016-04-14 06:57:17 +00:00
v8-autoroll
2469be9e09 Update V8 DEPS.
Rolling v8/build/gyp to 6ea68631cdabab9b7c5257657567a785a261692e

TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35463}
2016-04-14 03:19:48 +00:00
mbrandy
89e9819cbe PPC: [Atomics] code stubs for atomic operations
Port 5e9ddf6ce4

Original commit message:
    * New atomic code stubs for x64, ia32, arm, arm64
    * Add convenience functions JumpIfNotValidSmiValue, JumpIfUintNotValidSmiValue
      to macro-assembler-ia32 (API based on x64 macro assembler)
    * Remove runtime implementation of Atomics.load, the code stub should always be
      called instead
    * Add new test to mjsunit atomics test; check that Smi values of different
      sizes are supported when possible, else fall back to HeapNumbers

    These changes were needed to add another codestub:
    * Bump kStubMajorKeyBits from 7 to 8
    * Reduce ScriptContextFieldStub::kSlotIndexBits from 13 to 12

R=binji@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, bjaideep@ca.ibm.com
BUG=v8:4614
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35462}
2016-04-14 02:05:27 +00:00
mbrandy
d7bb46d49f PPC: Visit the Optimized Code Map on first call rather than closure creation.
Port 9336f4cc6d

Original commit message:
    This is useful for escape analysis, and helps upcoming changes to
    type feedback gathering.

R=mvstanton@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, bjaideep@ca.ibm.com
BUG=

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

Cr-Commit-Position: refs/heads/master@{#35461}
2016-04-14 01:57:49 +00:00
joransiu
a9817c6846 S390:[simulator] Fix int64_t printf + minor cleanup
* Use proper int64_t printf format qualifier to fix 64-bit sim compile
  on Mac.
* Minor cleanup to ExecuteInstruction() to remove an unncessary
  'processed' variable.

R=jyan@ca.ibm.com,mbrandy@us.ibm.com,michael_dawson@ca.ibm.com
BUG=

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

Cr-Commit-Position: refs/heads/master@{#35460}
2016-04-14 01:23:30 +00:00
adamk
a63185a608 Remove vestigial legacy const handling from parser
R=littledan@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35459}
2016-04-14 01:02:55 +00:00
aseemgarg
c09792bf37 [wasm] Enable the remaining embenchen tests for asm to wasm
BUG=v8:4203
TEST=mjsunit/asm-wasm
R=titzer@chromium.org,bradnelson@chromium.org,ahaas@chromium.org
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35458}
2016-04-14 00:35:12 +00:00
jyan
3d861c651b S390: Fix S390 native build break due to printf format mismatch.
size_t defined as unsigned long on 31-bit s390.

R=jochen@chromium.org, jfb@chromium.org
TBR=ahaas@chromium.org,bmeurer@chromium.org,yangguo@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#35457}
2016-04-13 23:41:36 +00:00
robtsuk
31355336d1 Fix android_arm build hosted on Mac
Fixes for misnamed toolchain from https://github.com/appcelerator/v8_titanium.

Added a way to specify the NDK path since the Mac versions of the NDK aren't checked into the tools repo.

Disabled a few dependencies which do not build on the Mac but which aren't needed for building usable V8 static libraries.

Made the including of libdl and librt omitted for Mac hosted builds.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35456}
2016-04-13 23:13:35 +00:00
aseemgarg
1d37d4216b [wasm] optimized switch implementation in asm.js to wasm builder
This change implements switch as a balanced if/else tree or break table or
hybrid. A lot of asm.js modules are expected to extensively use switch
alongside function tables that can benefit from a better implementation.

BUG=v8:4203
TEST=mjsunit/asm-wasm
R=titzer@chromium.org,bradnelson@chromium.org,ahaas@chromium.org
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35455}
2016-04-13 21:56:42 +00:00
mlippautz
6df04b296b Revert of [heap] Better integrate handling of aborted compaction pages (patchset #7 id:130001 of https://codereview.chromium.org/1881423003/ )
Reason for revert:
Breaks: https://uberchromegw.corp.google.com/i/client.v8.ports/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20nosnap%20-%20debug/builds/20

RecordMigratedSlotVisitor is not safe to use on code pages.

Original issue's description:
> [heap] Better integrate handling of aborted compaction pages
>
> - Get rid of fixing up pointers on the main thread
> - Get rid of sweeping on the main thread
>
> Instead:
> - Record (and process afterwards) slots in parallel
> - Add the pages to the concurrent sweeper as pointers have already been fixed
>
> BUG=chromium:581412
> LOG=N
> TEST=cctest/test-compaction/*
>
> Committed: https://crrev.com/2e4f57774d4993f9f98332d3b2469280ee10beca
> Cr-Commit-Position: refs/heads/master@{#35451}

TBR=hpayer@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:581412

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

Cr-Commit-Position: refs/heads/master@{#35454}
2016-04-13 18:46:06 +00:00
binji
5e9ddf6ce4 [Atomics] code stubs for atomic operations
Reland of (https://codereview.chromium.org/1617503003)

* New atomic code stubs for x64, ia32, arm, arm64
* Add convenience functions JumpIfNotValidSmiValue, JumpIfUintNotValidSmiValue
  to macro-assembler-ia32 (API based on x64 macro assembler)
* Remove runtime implementation of Atomics.load, the code stub should always be
  called instead
* Add new test to mjsunit atomics test; check that Smi values of different
  sizes are supported when possible, else fall back to HeapNumbers

These changes were needed to add another codestub:
* Bump kStubMajorKeyBits from 7 to 8
* Reduce ScriptContextFieldStub::kSlotIndexBits from 13 to 12

BUG=v8:4614
LOG=y
TBR=jarin@chromium.org,bmeurer@chromium.org,rodolph.perfetta@gmail.com,machenbach@chromium.org

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

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

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

Cr-Commit-Position: refs/heads/master@{#35453}
2016-04-13 18:24:28 +00:00
machenbach
0da17134e2 [build] Port latest vs_toolchain script.
BUG=chromium:603011,chromium:603131
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#35452}
2016-04-13 16:51:49 +00:00
mlippautz
2e4f57774d [heap] Better integrate handling of aborted compaction pages
- Get rid of fixing up pointers on the main thread
- Get rid of sweeping on the main thread

Instead:
- Record (and process afterwards) slots in parallel
- Add the pages to the concurrent sweeper as pointers have already been fixed

BUG=chromium:581412
LOG=N
TEST=cctest/test-compaction/*

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

Cr-Commit-Position: refs/heads/master@{#35451}
2016-04-13 16:12:35 +00:00
Ilija.Pavlovic
ec5995a104 MIPS: [compiler] Add relocatable pointer constants for wasm memory references.
Add relocatable pointers for wasm memory references that need to be
updated when wasm GrowMemory is used. Code generator changes to accept
relocatable constants as immediates.

Port 52148c41c9

TEST=
BUG=

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

Cr-Commit-Position: refs/heads/master@{#35450}
2016-04-13 15:22:37 +00:00
ofrobots
2837cb387b disallow left-trim fast path when sampling heap profiler is active
Left trimming assumes that nobody other than the JSArray has a reference to the
backing store. Sampling heap profiler may profile the backing store and keep a
reference too it. This reference was never updated on a left-trim, causing a
crash.

R=alph@chromium.org, hpayer@chromium.org, mattloring@google.com
BUG=

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

Cr-Commit-Position: refs/heads/master@{#35449}
2016-04-13 15:11:21 +00:00
mlippautz
98401b843e [heap] Sweeper refactoring round 2
- Get rid of temp lists and use a lock-protected deque instead

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35448}
2016-04-13 13:55:18 +00:00
Miran.Karic
3b416c67f5 Adjust bytecode operand values for big endian.
Operand values in Bytecodes.DecodeBytecodeAndOperands test are encoded
in little endian format. The test calls Bytecodes::Decode function which
reads the operands but the values are byte swapped on big endian
machines. Added big endian encoded data which decodes correctly on BE
machines.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35447}
2016-04-13 13:53:05 +00:00
epertoso
a5f6daab41 [stubs] Introduce LeftShift, SignedRightShift and UnsignedRightShift stubs.
Add the stubs for JavaScript's '<<', '>>' and '>>>' operators and lets Ignition make use of them in the respective bytecode handlers.

Committed: https://crrev.com/599369d6b8e1a5ccdca857def06eebcbacf47dd4
Cr-Commit-Position: refs/heads/master@{#35433}

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

Cr-Commit-Position: refs/heads/master@{#35446}
2016-04-13 13:53:04 +00:00
fedor
1383d001ff tools: fix tickprocessor Cpp symbols on mac
Despite man page documentation:

    -f Display the symbol table of a dynamic library flat (as one
       file not separate modules).

`nm` on mac treats `-f` as a shorthand for `-format`. The `-f` argument
does not seem to be required, so just remove it completely.

(For `-format` documentation - see `nm --help` on mac).

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35445}
2016-04-13 12:19:58 +00:00
machenbach
29ae208362 Revert of [stubs] Introduce LeftShift, SignedRightShift and UnsignedRightShift stubs. (patchset #3 id:40001 of https://codereview.chromium.org/1881003002/ )
Reason for revert:
Needed to revert https://codereview.chromium.org/1617503003

Original issue's description:
> [stubs] Introduce LeftShift, SignedRightShift and UnsignedRightShift stubs.
>
> Add the stubs for JavaScript's '<<', '>>' and '>>>' operators and lets Ignition make use of them in the respective bytecode handlers.
>
> Committed: https://crrev.com/599369d6b8e1a5ccdca857def06eebcbacf47dd4
> Cr-Commit-Position: refs/heads/master@{#35433}

TBR=bmeurer@chromium.org,epertoso@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#35444}
2016-04-13 12:12:31 +00:00
machenbach
2a5cce6580 Revert of [Atomics] code stubs for atomic operations (patchset #28 id:530001 of https://codereview.chromium.org/1617503003/ )
Reason for revert:
[Sheriff] Roll was reverted. Please fix unused methods, see:
https://codereview.chromium.org/1884913002/

https://build.chromium.org/p/tryserver.chromium.win/builders/win_clang/builds/5585/steps/compile%20%28with%20patch%29/logs/stdio

Original issue's description:
> [Atomics] code stubs for atomic operations
>
> * New atomic code stubs for x64, ia32, arm, arm64
> * Add convenience functions JumpIfNotValidSmiValue, JumpIfUintNotValidSmiValue
>   to macro-assembler-ia32 (API based on x64 macro assembler)
> * Remove runtime implementation of Atomics.load, the code stub should always be
>   called instead
> * Add new test to mjsunit atomics test; check that Smi values of different
>   sizes are supported when possible, else fall back to HeapNumbers
>
> These changes were needed to add another codestub:
> * Bump kStubMajorKeyBits from 7 to 8
> * Reduce ScriptContextFieldStub::kSlotIndexBits from 13 to 12
>
> BUG=v8:4614
> LOG=y
>
> Committed: https://crrev.com/10b5febe11b318cfef130abae343183ac862e60d
> Cr-Commit-Position: refs/heads/master@{#35427}

TBR=jarin@chromium.org,bmeurer@chromium.org,rodolph.perfetta@gmail.com,binji@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:4614

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

Cr-Commit-Position: refs/heads/master@{#35443}
2016-04-13 11:59:28 +00:00
machenbach
0a9f1037b4 [release] Fix ambiguous tag names.
TBR=hablich@chromium.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#35442}
2016-04-13 11:55:25 +00:00
machenbach
5b5c360227 [release] Fix release script.
Fix after https://codereview.chromium.org/1887583002/

TBR=hablich@chromium.org
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#35441}
2016-04-13 11:25:30 +00:00
mvstanton
c2de961128 RESUBMITTING: Bogus assert prevented chromium roll.
Visit the Optimized Code Map on first call rather than closure creation.

This is useful for escape analysis, and helps upcoming changes to
type feedback gathering.

Adding notry due to crashed builders:
NOTRY=true
BUG=

Committed: https://crrev.com/9336f4cc6d25d39a128176679a70dbd13a6d946e
Cr-Commit-Position: refs/heads/master@{#35395}

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

Cr-Commit-Position: refs/heads/master@{#35440}
2016-04-13 10:55:39 +00:00
neis
9e99c92c22 [ast] Annotate some nodes with number of yields.
Annotate generator functions and loops therein with the number of contained
yields.  This information will eventually be used by the bytecode generator.

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

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

Cr-Commit-Position: refs/heads/master@{#35439}
2016-04-13 10:42:33 +00:00
ssanfilippo
b4df8dab45 [Interpreter] Add visualization tool for Ignition dispatch counters.
A new script, bytecode_dispatches_report.py reads the table produced
when FLAG_trace_ignition_dispatches is enabled and produces either a
report of top source-destination pairs, or a heatmap that can be
viewed interactively and saved to file.

BUG=v8:4899
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35438}
2016-04-13 10:14:26 +00:00
machenbach
6fe3387778 [release] Let release script fix missing tags.
Check if a previous run left an inconsistent state behind.
The check is right before trying to push a new state as then
all information is available, like commit message and tag
name.

This is still only a band-aid. If gnumbd is down for a
longer period, an unprocessed commit won't be found, but
the push attempt will still fail.

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

Cr-Commit-Position: refs/heads/master@{#35437}
2016-04-13 10:01:18 +00:00
ishell
a021c6af22 [field type tracking] Use breadth first traversal instead of recursion when updating field types.
... to avoid potential stack overflow when updating happens near the stack limit.

BUG=chromium:599440
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#35436}
2016-04-13 09:48:09 +00:00
clemensh
79b1ab61c2 Add a make target for generating Ctags file
This is very similar to the existing rule for a GTAGS file, and reuses
parts of it (the gtags.files file).

R=ahaas@chromium.org, mstarzinger@chromium.org, titzer@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#35435}
2016-04-13 09:21:06 +00:00