Commit Graph

30143 Commits

Author SHA1 Message Date
titzer
b994ad45b0 [turbofan] Length and index2 are unsigned in CheckedLoad/CheckedStore.
Also factor out test cases from test-run-machops.cc into test-run-load-store.cc

BUG=chromium:599717
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#35651}
2016-04-20 09:35:06 +00:00
vogelheim
ed9b7d92e7 Prevent un-parsed LiteralFunction reaching the compiler.
BUG=chromium:604044
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#35650}
2016-04-20 09:35:05 +00:00
mlippautz
2489738d4a [heap] Add page evacuation mode for new->old
In a full mark-compact GC, instead of copying memory to old space for
pages that have more than X% live bytes, we just move the whole page over to old
space.

X=70 (default value)

BUG=chromium:581412
LOG=N
TBR=hpayer@chromium.org

This reverts commit 8b3337278f.

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

Cr-Commit-Position: refs/heads/master@{#35649}
2016-04-20 09:30:40 +00:00
zhengxing.li
7e88aa3d81 X87: [turbofan] CodeGenerator: Frame setup refactoring.
port 81a1530e6f (r35642)

  original commit message:
  Before frame elision, we finalized the frame shape when assembling the
  prologue, which is also when we prepared the frame (saving sp, etc).

  The frame finalization only needs to happen once, and happens to be
  actually a set of idempotent operations. With frame elision, the logic for
  frame finalization was happening every time we constructed the frame.
  Albeit idempotent operations, the code would become hard to maintain.

  This change separates frame shape finalization from frame
  construction. When constructing the CodeGenerator, we finalize the
  frame. Subsequent access is to a const Frame*.

  Also renamed AssemblePrologue to AssembleConstructFrame, as
  suggested in the frame elision CR.

  Separating frame setup gave the opportunity to do away with
  architecture-independent frame aligning (which is something just arm64
  cares about), and also with stack pointer setup (also arm64). Both of
  these happen now at frame finalization on arm64.

  additional message:
  This CL also removed the temporary workaround for CL #35139 (53d51c52f3)

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35648}
2016-04-20 08:52:22 +00:00
mstarzinger
85870e8698 [compiler] Extract scope info installation into helper.
This moves the installation of the scope info object on the shared
function info into a separate helper to share common code. This is
preparatory work in order to reuse existing scope info objects.

R=bmeurer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35647}
2016-04-20 08:52:21 +00:00
mstarzinger
45ad04fdd2 [compiler] Remove remnants from concurrent OSR.
This removes some obsolete conditions checking whether we are performing
concurrent OSR compilation. This feature has been removed some time ago.

R=yangguo@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35646}
2016-04-20 08:49:58 +00:00
hablich
37f4cf189b Reland of Change calling convention of CallApiGetterStub to accept the AccessorInfo (patchset #1 id:1 of https://codereview.chromium.org/1906453002/ )
Reason for revert:
Needs other reverts too.

Original issue's description:
> Revert of Change calling convention of CallApiGetterStub to accept the AccessorInfo (patchset #8 id:140001 of https://codereview.chromium.org/1892533004/ )
>
> Reason for revert:
> Blocks roll: https://codereview.chromium.org/1896103002/
>
> Can also be seen on internal waterfall: https://chromegw.corp.google.com/i/internal.client.v8/builders/v8_cros_perf_1/builds/7558
>
> Original issue's description:
> > Change calling convention of CallApiGetterStub to accept the AccessorInfo
> >
> > MIPS port contributed by Balazs Kilvady <balazs.kilvady@imgtec.com>
> >
> > Committed: https://crrev.com/d2b0a4b727f77f97960c7fa71da3431591dc959f
> > Cr-Commit-Position: refs/heads/master@{#35606}
>
> TBR=rodolph.perfetta@arm.com,jkummerow@chromium.org,jacob.bramley@arm.com,verwaest@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true

TBR=rodolph.perfetta@arm.com,jkummerow@chromium.org,jacob.bramley@arm.com,verwaest@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/1903093003

Cr-Commit-Position: refs/heads/master@{#35645}
2016-04-20 08:02:59 +00:00
hablich
12d727a86e Revert of Change calling convention of CallApiGetterStub to accept the AccessorInfo (patchset #8 id:140001 of https://codereview.chromium.org/1892533004/ )
Reason for revert:
Blocks roll: https://codereview.chromium.org/1896103002/

Can also be seen on internal waterfall: https://chromegw.corp.google.com/i/internal.client.v8/builders/v8_cros_perf_1/builds/7558

Original issue's description:
> Change calling convention of CallApiGetterStub to accept the AccessorInfo
>
> MIPS port contributed by Balazs Kilvady <balazs.kilvady@imgtec.com>
>
> Committed: https://crrev.com/d2b0a4b727f77f97960c7fa71da3431591dc959f
> Cr-Commit-Position: refs/heads/master@{#35606}

TBR=rodolph.perfetta@arm.com,jkummerow@chromium.org,jacob.bramley@arm.com,verwaest@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/1906453002

Cr-Commit-Position: refs/heads/master@{#35644}
2016-04-20 07:25:01 +00:00
bmeurer
95f0d4ed39 [turbofan] Remove phase ordering problem in JSToNumber lowering.
Previously we had to run SimplifiedLowering, ChangeLowering and
JSGenericLowering independently and exactly in this order to
achieve great performance for the common case of JSToNumber (i.e.
input is already a Smi or a HeapNumber). This phase ordering
problem already causes trouble with not being able to run the
generic lowering phase earlier, but also blocks proper plain
primitive ToNumber optimizations. So this properly integrates
JSToNumber into the truncation analysis and optimizes according
to the truncation (either Word32 or Float64).

R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35643}
2016-04-20 06:06:54 +00:00
mtrofin
81a1530e6f [turbofan] CodeGenerator: Frame setup refactoring
Before frame elision, we finalized the frame shape when assembling the
prologue, which is also when we prepared the frame (saving sp, etc).

The frame finalization only needs to happen once, and happens to be
actually a set of idempotent operations. With frame elision, the logic for
frame finalization was happening every time we constructed the frame.
Albeit idempotent operations, the code would become hard to maintain.

This change separates frame shape finalization from frame
construction. When constructing the CodeGenerator, we finalize the
frame. Subsequent access is to a const Frame*.

Also renamed AssemblePrologue to AssembleConstructFrame, as
suggested in the frame elision CR.

Separating frame setup gave the opportunity to do away with
architecture-independent frame aligning (which is something just arm64
cares about), and also with stack pointer setup (also arm64). Both of
these happen now at frame finalization on arm64.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35642}
2016-04-20 05:41:06 +00:00
zhengxing.li
b94e9d885c X87: Remove all non-function-name uses of CONST_LEGACY.
port 59546149c6 (r35632)

  original commit message:
  Now that all 'const' declarations are of the ES2015 variety, the only
  use of CONST_LEGACY is for function name bindings in sloppy mode
  named function expressions.

  This patch aims to delete all code meant to handle other cases, which
  mostly had to do with hole initialization/hole checks. Since function
  name bindings are initialized at entry to a function, it's impossible
  to ever observe one in an uninitialized state.

  To simplify the patch further, it removes the `IMPORT` VariableMode,
  as it's not likely to be needed (IMPORT is identical to CONST for
  the purpose of VariableMode).

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35641}
2016-04-20 05:13:10 +00:00
zhengxing.li
c14c1b9d42 X87: [Interpreter] Remove register file register and replace with LoadParentFramePointer.
port 623ad7de88 (r35618)

  original commit message:
  Removes the register file machine register from the interpreter and
  replaces it will loads from the parent frame pointer. As part of this
  change the raw operand values for register values changes to enable the
  interpreter to keep using the operand value as the offset from the
  parent frame pointer.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35640}
2016-04-20 05:09:05 +00:00
bmeurer
fc3ecad44b [turbofan] Properly connect potentially throwing ToNumber to control chain.
In JSTypedLowering we insert JSToNumber nodes for implicit type
conversions, which can potentially throw (i.e. the input not statically
known to be a plain primitive).

R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35639}
2016-04-20 05:02:48 +00:00
jarin
61e97fea42 [turbofan] Fix static TypeCache::Get call in access builder.
Review URL: https://codereview.chromium.org/1900043003

Cr-Commit-Position: refs/heads/master@{#35638}
2016-04-20 03:54:19 +00:00
bjaideep
5178802be0 PPC: [Interpreter] Remove register file register and replace with LoadParentFramePointer.
Port 623ad7de88

Original commit message:

    Removes the register file machine register from the interpreter and
    replaces it will loads from the parent frame pointer. As part of this
    change the raw operand values for register values changes to enable the
    interpreter to keep using the operand value as the offset from the
    parent frame pointer.

R=rmcilroy@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com

BUG=v8:4280
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35637}
2016-04-19 20:41:17 +00:00
jyan
a43b48fdd2 S390: First version of the new generators implementation.
Port d0ccddd032

Original commit message:
       First version of the new generators implementation.

       Behind --ignition-generators. Does not yet support Turbofan.

R=neis@chromium.org, joransiu@ca.ibm.com, mbrandy@us.ibm.com, michael_dawson@ca.ibm.com, bjaideep@ca.ibm.com
BUG=

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

Cr-Commit-Position: refs/heads/master@{#35636}
2016-04-19 19:48:53 +00:00
bjaideep
f8844a6ee1 PPC: Remove all non-function-name uses of CONST_LEGACY
Port 59546149c6

Original commit message:

    Now that all 'const' declarations are of the ES2015 variety, the only
    use of CONST_LEGACY is for function name bindings in sloppy mode
    named function expressions.

    This patch aims to delete all code meant to handle other cases, which
    mostly had to do with hole initialization/hole checks. Since function
    name bindings are initialized at entry to a function, it's impossible
    to ever observe one in an uninitialized state.

    To simplify the patch further, it removes the `IMPORT` VariableMode,
    as it's not likely to be needed (IMPORT is identical to CONST for
    the purpose of VariableMode).

R=adamk@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com

BUG=
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35635}
2016-04-19 19:34:37 +00:00
bjaideep
bef390da2a PPC: Change calling convention of CallApiGetterStub to accept the AccessorInfo
Port d2b0a4b727

Original commit message:

    MIPS port contributed by Balazs Kilvady <balazs.kilvady@imgtec.com>;

R= verwaest@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com

BUG=
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35634}
2016-04-19 18:37:58 +00:00
mike
43fa3e65c9 [modules] Treat top-level functions as lexical
[15.2.1.11 Static Semantics:
LexicallyDeclaredNames](https://tc39.github.io/ecma262/#sec-module-semantics-static-semantics-lexicallydeclarednames)
(in contrast with its definition for StatementListItem) makes no
explicit provision for HoistableDeclarations. This means that function
declarations are treated as lexically scoped in module code, as
described in section 15.2.1.11's informative note:

> At the top level of a function, or script, function declarations are
> treated like var declarations rather than like lexical declarations.

BUG=v8:4884
LOG=N
R=adamk@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35633}
2016-04-19 17:53:03 +00:00
adamk
59546149c6 Remove all non-function-name uses of CONST_LEGACY
Now that all 'const' declarations are of the ES2015 variety, the only
use of CONST_LEGACY is for function name bindings in sloppy mode
named function expressions.

This patch aims to delete all code meant to handle other cases, which
mostly had to do with hole initialization/hole checks. Since function
name bindings are initialized at entry to a function, it's impossible
to ever observe one in an uninitialized state.

To simplify the patch further, it removes the `IMPORT` VariableMode,
as it's not likely to be needed (IMPORT is identical to CONST for
the purpose of VariableMode).

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

Cr-Commit-Position: refs/heads/master@{#35632}
2016-04-19 17:04:36 +00:00
bjaideep
697c87414b PPC: [Atomics] Remove Atomics code stubs; use TF ops
Port d412cfa26c

Original commit message:
    [Atomics] Remove Atomics code stubs; use TF ops

    Reland of (https://codereview.chromium.org/1891033002)

    This is a much cleaner solution, which won't require nearly as much
    architecture-specific code. Thanks bmeurer@!

R=binji@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com

BUG=v8:4614
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35631}
2016-04-19 16:54:32 +00:00
yangguo
91e2bf6e37 Make global eval faster by lazily computing its call position.
Prior to 89d7bfda we always just collected the code offset and computed the
source position lazily. However, for local eval we already have the source
position ready, so we can just store that. For global eval we still have to
compute from the code offset. This CL changes the computation to be done only
on demand.

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

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

Cr-Commit-Position: refs/heads/master@{#35630}
2016-04-19 16:18:09 +00:00
ssanfilippo
7fa7bfacf8 [Interpreter] Report hottest bytecodes in bytecode_dispatches_report.py
In addition to top source-destination pairs,
bytecode_dispatches_report.py now prints the hottest bytecode handlers
by the number of times they are executed and dispatch to another one,
regardless of the dispatch target.

Be aware that this figure does not match the number of times a handler
is executed for those which may not or will never dispatch, e.g.
Return or Throw.

BUG=v8:4899
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35629}
2016-04-19 16:04:05 +00:00
clemensh
ce669d792c Move TrapReason messages over to messages.h
This prepares a patch to throw actual errors instead of just strings on
wasm traps. In order to accomplish this, the messages need to be known
to the runtime, as the generated code will just pass the message id.

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

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

Cr-Commit-Position: refs/heads/master@{#35628}
2016-04-19 15:57:53 +00:00
kozyatinskiy
de5aaad638 [Debugger] Fix StepNext over function with caught exception
Without CL debugger on StepNext adds breakpoint to function where throw instruction is located. In case of StepNext we will skip pause in this function because StepNext shouldn't break in a deeper frame.

BUG=chromium:604495
R=yangguo@chromium.org
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35627}
2016-04-19 15:29:33 +00:00
clemensh
e2ec04d2ab Move MessageLocations constructor out of header
This is a bit unfortunate, but otherwise we would have to include
objects.h before message.h, since for the initialization of a Handle<T>,
the compiler checks that Object* can be assigned to T*. So it would
need to know about the inheritance for initializing Handle<Script> and
Handle<JSFunction>.

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

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

Cr-Commit-Position: refs/heads/master@{#35626}
2016-04-19 15:15:05 +00:00
mstarzinger
1705b7de4f [compiler] Remove obsolete guard in MarkForOptimization.
The guard in JSFunction::MarkForOptimization checking whether a function
is being debugged is overly protective. The compilation pipeline will
bailout itself in that circumstance. Having the runtime behave similar
makes sure the debugger observes a situation closer to reality.

R=yangguo@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35625}
2016-04-19 14:42:59 +00:00
clemensh
5c1d28770b [wasm] Add test for detailed stack trace
This cctest triggers a detailed stack trace containing WASM frames.

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

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

Cr-Commit-Position: refs/heads/master@{#35624}
2016-04-19 14:20:43 +00:00
mstarzinger
51a6cd3ae4 [compiler] Avoid spamming --trace-opt with lookup failures.
This stops printing a log line for when a lookup in the optimized code
map did not yield a result. Logging such a negative result that will
inevitably trigger a compile anyways has little benefit and just spams
the console unnecessarily.

R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35623}
2016-04-19 13:25:35 +00:00
rmcilroy
e4d5a446a8 [Interpreter] Pass CompileInfo to BytecodeGenerator's constructor.
BUG=v8:4280
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35622}
2016-04-19 13:23:26 +00:00
clemensh
3e5f45b64b [wasm] Flag WASM code sections as such in the tests
This makes them show up in the stack trace. Otherwise the stack frames
are identified as type STUB, and skipped by the iterator.

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

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

Cr-Commit-Position: refs/heads/master@{#35621}
2016-04-19 12:55:02 +00:00
hlopko
39939eebf8 Remove isolate arg from EmbedderHeapTracer methods.
As the code on the blink side sits down, we realize we don't need isolate arg
anymore. As the heap tracer is set per isolate, it can actually be confusing if
the isolate passed as argument is always the same as the isolate the heap tracer
was set for. Wdyt?

BUG=468240
LOG=no

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

Cr-Commit-Position: refs/heads/master@{#35620}
2016-04-19 12:55:01 +00:00
machenbach
8b3337278f Revert of 🏄 [heap] Add page evacuation mode for new->old (patchset #21 id:800001 of https://codereview.chromium.org/1863983002/ )
Reason for revert:
[Sheriff] Breaks:
https://build.chromium.org/p/client.v8.ports/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20nosnap%20-%20debug/builds/102

Original issue's description:
> [heap] Add page evacuation mode for new->old
>
> In a full mark-compact GC, instead of copying memory to old space for
> pages that have more than X% live bytes, we just move the whole page over to old
> space.
>
> X=70 (default value)
>
> BUG=chromium:581412
> LOG=N
>
> Committed: https://crrev.com/0d7e23a6edd3822970983030a77a5b80cd337911
> Cr-Commit-Position: refs/heads/master@{#35610}

TBR=hpayer@chromium.org,ulan@chromium.org,mlippautz@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/1896883003

Cr-Commit-Position: refs/heads/master@{#35619}
2016-04-19 12:52:47 +00:00
rmcilroy
623ad7de88 [Interpreter] Remove register file register and replace with LoadParentFramePointer.
Removes the register file machine register from the interpreter and
replaces it will loads from the parent frame pointer. As part of this
change the raw operand values for register values changes to enable the
interpreter to keep using the operand value as the offset from the
parent frame pointer.

BUG=v8:4280
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35618}
2016-04-19 12:48:41 +00:00
clemensh
09b50113d4 Move two test-internal functions up to header file
... such that they can be reused from other tests.

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

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

Cr-Commit-Position: refs/heads/master@{#35617}
2016-04-19 12:24:39 +00:00
verwaest
473280f82a Create per-descriptor-index LoadApiGetterStub
This avoids custom compilation of receiver handlers for api getters.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35616}
2016-04-19 12:12:45 +00:00
clemensh
9be47f57a0 [wasm] Do also output WASM frames on detailed stack traces
Till now, they were just skipped. With this patch, they now show up in
the DevTools on uncaught Errors with function name <WASM> and no line
number or file name information (see new test case:
https://chromiumcodereview.appspot.com/1875083002).

R=jfb@chromium.org, titzer@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#35615}
2016-04-19 11:56:47 +00:00
machenbach
9c927d0f01 [test] Set default locale in test runner
BUG=v8:4437,v8:2899,chromium:604310
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#35614}
2016-04-19 11:27:08 +00:00
akos.palfi
efadbfc458 MIPS: [Atomics] Remove Atomics code stubs; use TF ops.
Port d412cfa26c

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35613}
2016-04-19 11:22:50 +00:00
mstarzinger
08ef00fd06 [compiler] Reuse parse info when ensuring deopt support.
R=titzer@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35612}
2016-04-19 11:20:43 +00:00
zhengxing.li
5b822b31fe X87: Change calling convention of CallApiGetterStub to accept the AccessorInfo.
port d2b0a4b727 (r35606)

  original commit message:
  MIPS port contributed by Balazs Kilvady <balazs.kilvady@imgtec.com>

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35611}
2016-04-19 10:21:04 +00:00
mlippautz
0d7e23a6ed [heap] Add page evacuation mode for new->old
In a full mark-compact GC, instead of copying memory to old space for
pages that have more than X% live bytes, we just move the whole page over to old
space.

X=70 (default value)

BUG=chromium:581412
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35610}
2016-04-19 10:09:11 +00:00
mstarzinger
d784c2d1ea [compiler] Remove remnants for old-skool live edit.
This removes obsolete code that supports compiling without a shared
function info object. Even for top-level code compiled for live edit
such an object is allocated by now.

R=yangguo@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35609}
2016-04-19 09:33:08 +00:00
jarin
3a69613481 [turbofan] Remove mutual recursion in typed-lowering of JSToNumber input.
The recursion does seem to help anything.

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

Cr-Commit-Position: refs/heads/master@{#35608}
2016-04-19 09:07:01 +00:00
ishell
28113880e3 Fix polymorphic keyed load handler selection for proxies.
BUG=chromium:603463
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35607}
2016-04-19 08:58:43 +00:00
verwaest
d2b0a4b727 Change calling convention of CallApiGetterStub to accept the AccessorInfo
MIPS port contributed by Balazs Kilvady <balazs.kilvady@imgtec.com>

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

Cr-Commit-Position: refs/heads/master@{#35606}
2016-04-19 08:46:28 +00:00
mstarzinger
489d751efd [compiler] Switch code printing to not use literal.
This switches CodeGenerator::PrintCode to be based on the allocated
shared function info instead of the function literal. This is possible
now that even live edit allocates a shared function info for scripts.

R=ishell@chromium.org
BUG=chromium:604375
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#35605}
2016-04-19 08:00:47 +00:00
mlippautz
19c1a10ba0 Add ObjectVisitor template parameter to RelocInfo::Visit
This makes IterateBodyFast work without requiring visitors to inherit from ObjectVisitor.

R=ishell@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35604}
2016-04-19 07:06:57 +00:00
zhengxing.li
ce3f9afaba X87: [Atomics] Remove Atomics code stubs; use TF ops.
port d412cfa26c (r35596)

  original commit message:
  Reland of (https://codereview.chromium.org/1891033002)

  This is a much cleaner solution, which won't require nearly as much
  architecture-specific code. Thanks bmeurer@!

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35603}
2016-04-19 06:35:13 +00:00
zhengxing.li
d878eb7ec2 X87: First version of the new generators implementation.
port d0ccddd032 (r35584)

  original commit message:
  Behind --ignition-generators. Does not yet support Turbofan.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#35602}
2016-04-19 06:15:15 +00:00