Commit Graph

857 Commits

Author SHA1 Message Date
jarin
9fdacb9e55 [turbofan] Better handling of empty type in simplified lowering.
The re-typer now only types a node if its inputs are all typed with the
exception of phi nodes. This works because all cycles in the graph have
to contain a phi node.

BUG=chromium:625558

Review-Url: https://codereview.chromium.org/2120243002
Cr-Commit-Position: refs/heads/master@{#37493}
2016-07-04 08:43:12 +00:00
zhengxing.li
5a2f5c128f [x87] Enable test cases which failed at know issue that x87 change sNaN to qNaN by default.
Since the workaround (CL 36697 : 22a73e0d85) for sNaN issue works, enable those test cases.

BUG=

Review-Url: https://codereview.chromium.org/2114853002
Cr-Commit-Position: refs/heads/master@{#37472}
2016-07-01 07:35:58 +00:00
gdeepti
8bd1e0dc88 [wasm] Explicitly Disallow heap allocation when wasm memory references are updated
- Enable grow memory tests on 32 bit windows
 - Use handles to module JSObject instead of object pointers

R=ahaas@chromium.org, bradnelson@chromium.org

Review-Url: https://codereview.chromium.org/2105013004
Cr-Commit-Position: refs/heads/master@{#37409}
2016-06-29 23:42:42 +00:00
bmeurer
89c9fc73be [turbofan] Fix non-termination in RedundancyElimination.
A pointer comparison on the effect path states is not sufficient to
guarantee termination; we really need to check the actual nodes to
make sure we terminate properly, similar to what BranchElimination
does.

R=jarin@chromium.org
BUG=v8:5161

Review-Url: https://codereview.chromium.org/2112463002
Cr-Commit-Position: refs/heads/master@{#37389}
2016-06-29 11:58:03 +00:00
machenbach
33452e7a05 [test] Skip flaky tests with turbofan
BUG=v8:5161
NOTRY=true
TBR=bmeurer@chromium.org

Review-Url: https://codereview.chromium.org/2107113002
Cr-Commit-Position: refs/heads/master@{#37362}
2016-06-29 07:21:10 +00:00
gdeepti
ef2f33d6c6 Implement Wasm GrowMemory opcode as a wasm runtime call
- GrowMemory runtime function, tests added to checks if memory can be grown
  and relocation information is updated correctly

R=titzer@chromium.org, bradnelson@chromium.org

Review-Url: https://codereview.chromium.org/2051043002
Cr-Commit-Position: refs/heads/master@{#37338}
2016-06-28 16:49:13 +00:00
bjaideep
75219dad71 PPC64: disable big-array-literal testcase due to stack overflow
Testcase big-array-literal fails with stack overflow error on ppc64,
    increasing stack-size to 1100 resolves the issue, but causes
    other platforms to fail ( https://codereview.chromium.org/2072533002/ ).
    For now, disabling the testcase on ppc64.

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

BUG=
LOG=N
NOTRY=true

Review-Url: https://codereview.chromium.org/2098413002
Cr-Commit-Position: refs/heads/master@{#37324}
2016-06-28 12:24:38 +00:00
machenbach
eeeb365b10 [test] Skip flaky tests.
Skip unicodelctest and friends for some turbo and turbo +
ignition variants.

TBR=Benedikt Meurer, rmcilroy
NOTRY=true
NOTREECHECKS=true

Review-Url: https://codereview.chromium.org/2095873002
Cr-Commit-Position: refs/heads/master@{#37239}
2016-06-24 07:06:17 +00:00
adamk
c7eb436d09 Remove all harmony runtime flags which shipped in M51
Flags removed (all begin with "harmony-"):
  function-name
  instanceof
  iterator-close
  unicode-regexps
  regexp-exec
  regexp-subclass
  species

BUG=v8:3566, v8:3648, v8:3699, v8:4093, v8:4447, v8:4602

Review-Url: https://codereview.chromium.org/2096933002
Cr-Commit-Position: refs/heads/master@{#37235}
2016-06-24 01:13:10 +00:00
ivica.bogosavljevic
42ac51c82e Fix int64 lowering on big-endian architectures.
Lowering of Int64Load, Int64Store, BitcastInt64ToFloat64 and
BitcastFloat64ToInt64 was using LE word ordering in memory,
causing failures on some tests.

BUG=mjsunit/regress/regress-599719,mjsunit/regress/regress-599717

Review-Url: https://codereview.chromium.org/2080213004
Cr-Commit-Position: refs/heads/master@{#37213}
2016-06-23 11:41:07 +00:00
bmeurer
502dd40c33 [turbofan] Introduce CheckHole and CheckHoleNaN operators.
These simplified operators are used to perform the hole checks when
loading elements from a holey array. Depending on the CheckHoleMode,
they either return the hole as undefined or some NaN, or deoptimize
if the value is the hole or the hole NaN.

R=jarin@chromium.org

Review-Url: https://codereview.chromium.org/2066223002
Cr-Commit-Position: refs/heads/master@{#37001}
2016-06-15 12:25:27 +00:00
yangguo
fc378ce19e Skip mjsunit/harmony/regexp-property-lu-ui for MSAN.
TBR=machenbach@chromium.org
NOTRY=true

Review-Url: https://codereview.chromium.org/2068083002
Cr-Commit-Position: refs/heads/master@{#36991}
2016-06-15 08:25:21 +00:00
machenbach
19fca22505 [test] Skip tail-call-megatest for tsan
This test gets slower with tsan when the print() calls
in the tests are deleted. It is also only very slow with
crankshaft not with turbofan, but we have no config atm
to only run it with turbofan.

TBR=ishell@chromium.org, ahaas@chromium.org
NOTRY=true

Review-Url: https://codereview.chromium.org/2049993003
Cr-Commit-Position: refs/heads/master@{#36859}
2016-06-09 12:49:06 +00:00
neis
f0c4de9696 [test] Remove obsolete status file entries.
R=rossberg@chromium.org
BUG=

Review-Url: https://codereview.chromium.org/2026543002
Cr-Commit-Position: refs/heads/master@{#36588}
2016-05-30 13:22:51 +00:00
lpy
ac3edd40af [prof] Add slide offset in dumpcpp script
An additional slide offset is exported into `shared-library`, which is used to
symbolize C++ stack on systems with ASLR (OS X).

This patch adds slide offset support in dumpcpp script.

BUG=v8:5048

Review-Url: https://codereview.chromium.org/2006813002
Cr-Commit-Position: refs/heads/master@{#36574}
2016-05-30 08:56:59 +00:00
machenbach
e24f019bd2 [test] Skip flaky test for turbofan always-opt and gc-stress
BUG=v8:5053
TBR=bmeurer@chromium.org
NOTRY=true

Review-Url: https://codereview.chromium.org/2024583002
Cr-Commit-Position: refs/heads/master@{#36571}
2016-05-30 07:00:00 +00:00
rmcilroy
5c602c6fcc [Interpreter] Make lazy compilation the default.
BUG=v8:4280,v8:5038
LOG=N

Review-Url: https://codereview.chromium.org/2007453002
Cr-Commit-Position: refs/heads/master@{#36476}
2016-05-24 12:52:50 +00:00
neis
ccb24b8488 [generators] Fix loading of FormalParameterCount on 64bit archs.
BUG=v8:4907

Review-Url: https://codereview.chromium.org/2006653003
Cr-Commit-Position: refs/heads/master@{#36467}
2016-05-24 11:04:27 +00:00
adamk
b36269543f Mark regexp regression test as failing on noi18n
TBR=yangguo@chromium.org
BUG=v8:5036
NOTRY=true
NOTREECHECKS=true
NOPRESUBMIT=true

Review-Url: https://codereview.chromium.org/2006133002
Cr-Commit-Position: refs/heads/master@{#36454}
2016-05-23 23:25:59 +00:00
Adam Klein
b5ab8cc530 Skip mjsunit/harmony/generators-turbo on arm64 debug sim
It seems to fail in nosnap mode, and runs very slowly with snapshot, so
skipping for now to get the tree green.

TBR=neis@chromium.org
BUG=v8:4907

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

Cr-Commit-Position: refs/heads/master@{#36452}
2016-05-23 21:31:11 +00:00
mstarzinger
992c9c4d7a [turbofan] Enable all escape analysis tests.
R=bmeurer@chromium.org

Review-Url: https://codereview.chromium.org/1980503002
Cr-Commit-Position: refs/heads/master@{#36311}
2016-05-18 08:01:44 +00:00
yangguo
f248a83d29 [liveedit] fix stepping after replacing bytecode.
R=mstarzinger@chromium.org
BUG=v8:4765

Review-Url: https://codereview.chromium.org/1973213003
Cr-Commit-Position: refs/heads/master@{#36272}
2016-05-17 09:22:17 +00:00
littledan
690922c959 [esnext] Fix super in async arrow functions
Ordinary arrow functions have 'undefined' in their frame's receiver.
Generators restore the receiver to the frame based on one passed in
when they are constructed in CreateJSGeneratorObject.

This patch makes async arrow functions pass in 'undefined' for their
receiver so that they have the same behavior as ordinary arrow
functions, which avoids the issue of encountering TDZ when calling
an async arrow function in a subclass constructor before a super
call has returned.

BUG=v8:4483

Review-Url: https://codereview.chromium.org/1976813002
Cr-Commit-Position: refs/heads/master@{#36264}
2016-05-17 01:16:51 +00:00
caitpotter88
d08c0304c5 [esnext] prototype runtime implementation for async functions
BUG=v8:4483
LOG=N
R=littledan@chromium.org, adamk@chromium.org

Review-Url: https://codereview.chromium.org/1895603002
Cr-Commit-Position: refs/heads/master@{#36263}
2016-05-17 00:27:51 +00:00
yangguo
7b1fe365a9 [liveedit] patch source position table for bytecode arrays.
R=mstarzinger@chromium.org
BUG=v8:4765

Review-Url: https://codereview.chromium.org/1976933002
Cr-Commit-Position: refs/heads/master@{#36240}
2016-05-13 13:21:37 +00:00
yangguo
72b510dfb3 [liveedit] support restarting interpreted frame and replacing bytecode.
R=mstarzinger@chromium.org
BUG=v8:4765

Review-Url: https://codereview.chromium.org/1968423002
Cr-Commit-Position: refs/heads/master@{#36237}
2016-05-13 12:14:56 +00:00
rmcilroy
40f345416f [Interpreter] Fix incorrect frame walking in arguments create stubs
The previous approach taken by FastNew[Sloppy,Strict,Rest]ArgumentsStub
looked at the function slot in order to skip stub frames
and find the JS frame. However, stub frames do not have a
function slot (in fact their fixed frame ends one slot
before the JS frame's function slot). Therefore, if this
location in the stub frame happens to have the function
object the create arguments stubs won't skip this frame
correctly.

Replace this approach with one where the stub is
specialized to either skip a frame if required (since
there will only ever be one extra frame on Ignition
the loop approach isn't necessary).

BUG=v8:4928
LOG=N
CQ_INCLUDE_TRYBOTS=tryserver.v8:v8_linux_nosnap_dbg

Review-Url: https://codereview.chromium.org/1949023003
Cr-Commit-Position: refs/heads/master@{#36181}
2016-05-11 15:07:52 +00:00
mstarzinger
7b37243358 [turbofan] Implement top-level lookup slot declaration.
This implements declaration of lookup slots for variables and functions
within optimized code. Such a declaration only appears with top-level
eval code, which we only recently started handling in TurboFan.

R=jarin@chromium.org

Review-Url: https://codereview.chromium.org/1962723002
Cr-Commit-Position: refs/heads/master@{#36125}
2016-05-10 08:19:22 +00:00
mythria
a64b1d8767 [Interpreter] Updates mjsunit/es6/mirror-collections to work with ignition
mjsunit/es6/mirror-collections fails with ignition because dead registers
may hold references to objects. This prevents GC from collecting
otherwise dead objects. Dead registers are not cleared because the cost
of clearing them outweighs its benefits. Hence, modifying this test to
work around this problem.

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

Review-Url: https://codereview.chromium.org/1945223002
Cr-Commit-Position: refs/heads/master@{#36098}
2016-05-09 08:40:05 +00:00
rmcilroy
c2c2d8e69c [Interpreter]: Unskip some tests which pass with --ignition and group other failures.
Some tests which fail with '--ignition --turbo --turbo-from-bytecode' pass with
just '--ignition'. Unskip these tests. Also group other tests with related
bugs.

BUG=v8:4680
LOG=N

Review-Url: https://codereview.chromium.org/1944413002
Cr-Commit-Position: refs/heads/master@{#36083}
2016-05-06 14:04:37 +00:00
mbrandy
22b4dd72d9 [wasm] Skip additional wasm tests on big-endian platforms.
R=titzer@chromium.org, ahaas@chromium.org, michael_dawson@ca.ibm.com
BUG=

Review-Url: https://codereview.chromium.org/1948053002
Cr-Commit-Position: refs/heads/master@{#36082}
2016-05-06 14:02:18 +00:00
machenbach
27aff30180 [Interpreter] Skip test for tsan.
BUG=v8:4280
LOG=N
NOTRY=true
TBR=rmcilroy@chromium.org

Review-Url: https://codereview.chromium.org/1956663002
Cr-Commit-Position: refs/heads/master@{#36065}
2016-05-06 08:00:07 +00:00
mstarzinger
cbf2a5420e [interpreter] Enable tests that no longer fail.
The compilation pipeline is correctly guarding against accidental
tier-ups by now, the tests in question should no longer fail.

R=yangguo@chromium.org
BUG=v8:4961
LOG=n

Review-Url: https://codereview.chromium.org/1938983002
Cr-Commit-Position: refs/heads/master@{#35934}
2016-05-02 14:01:10 +00:00
machenbach
78cf397def [Interpreter] Skip some tests that fail with --ignition
BUG=v8:4280
LOG=N
TBR=rmcilroy@chromium.org, rmcilroy@chromium.org
NOTRY=true

Review-Url: https://codereview.chromium.org/1934283002
Cr-Commit-Position: refs/heads/master@{#35931}
2016-05-02 12:17:52 +00:00
machenbach
8ba46715b0 [Ignition] Test ignition on all bots.
This adds ignition to the testing variants that are run on all
bots.

Failing tests can only be skipped with the NO_IGNITION
keyword in status files. Existing expectations for the
ignition_turbofan variant are all duplicated and use the
NO_IGNITION keyword as well now.

BUG=v8:4280
LOG=N

Committed: https://crrev.com/132c09ed619f23fb7c6d26a4e3552c703389eabd
Cr-Commit-Position: refs/heads/master@{#35865}

Review-Url: https://codereview.chromium.org/1804003002
Cr-Commit-Position: refs/heads/master@{#35926}
2016-05-02 09:25:00 +00:00
mstarzinger
5749d710bc [compiler] Fix TurboFan to respect kOptimizeFromBytecode.
This ensures that the TurboFan pipeline is respecting the flag on the
CompilationInfo controlling whether to use the BytecodeGraphBuilder or
the AstGraphBuilder when ensuring deoptimization support.

R=rmcilroy@chromium.org
BUG=chromium:607871
LOG=n

Review-Url: https://codereview.chromium.org/1934563002
Cr-Commit-Position: refs/heads/master@{#35904}
2016-04-29 12:04:43 +00:00
mstarzinger
b06fa13704 [interpreter] Be explicit when to test BytecodeGraphBuilder.
This adds a dedicated flag for enabling the BytecodeGraphBuilder. The
intention is to be explicit when this variant is being tested and to
avoid unnecessary overhead in production code for a configuration that
is not yet shipping.

R=rmcilroy@chromium.org

Review-Url: https://codereview.chromium.org/1925123002
Cr-Commit-Position: refs/heads/master@{#35892}
2016-04-29 08:41:11 +00:00
machenbach
af41997177 Revert of [Ignition] Test ignition on all bots. (patchset #4 id:60001 of https://codereview.chromium.org/1804003002/ )
Reason for revert:
Will resubmit with proper fix and more test skips.

Original issue's description:
> [Ignition] Test ignition on all bots.
>
> This adds ignition to the testing variants that are run on all
> bots.
>
> Failing tests can only be skipped with the NO_IGNITION
> keyword in status files. Existing expectations for the
> ignition_turbofan variant are all duplicated and use the
> NO_IGNITION keyword as well now.
>
> BUG=v8:4280
> LOG=N
> NOTRY=true

TBR=rmcilroy@chromium.org,mstarzinger@chromium.org,yangguo@chromium.org,mythria@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:4280

Review-Url: https://codereview.chromium.org/1930943002
Cr-Commit-Position: refs/heads/master@{#35871}
2016-04-28 14:53:57 +00:00
machenbach
132c09ed61 [Ignition] Test ignition on all bots.
This adds ignition to the testing variants that are run on all
bots.

Failing tests can only be skipped with the NO_IGNITION
keyword in status files. Existing expectations for the
ignition_turbofan variant are all duplicated and use the
NO_IGNITION keyword as well now.

BUG=v8:4280
LOG=N
NOTRY=true

Review-Url: https://codereview.chromium.org/1804003002
Cr-Commit-Position: refs/heads/master@{#35865}
2016-04-28 13:32:27 +00:00
yangguo
9a93964503 [debugger,interpreter] tentatively unskip gc-stress tests.
R=machenbach@chromium.org
BUG=v8:4690
LOG=N

Review-Url: https://codereview.chromium.org/1925993002
Cr-Commit-Position: refs/heads/master@{#35856}
2016-04-28 11:19:16 +00:00
yangguo
31182fb2aa Skip more tests for ignition and gc-stress.
NOTRY=true
TBR=machenbach@chromium.org
BUG=v8:4961
LOG=N

Review-Url: https://codereview.chromium.org/1928893002
Cr-Commit-Position: refs/heads/master@{#35849}
2016-04-28 09:34:23 +00:00
yangguo
47ffcac6d5 Skip es6/block-conflicts for ignition and gc-stress.
TBR=machenbach@chromium.org
BUG=v8:4961
LOG=N
NOTRY=true

Review-Url: https://codereview.chromium.org/1924093004
Cr-Commit-Position: refs/heads/master@{#35845}
2016-04-28 08:13:05 +00:00
yangguo
cd3a5ee951 Skip es6/typedarray-copywithin for ignition
R=machenbach@chromium.org
BUG=v8:4961
NOTRY=true
LOG=N
NOTREECHECKS=true

Review-Url: https://codereview.chromium.org/1915033008
Cr-Commit-Position: refs/heads/master@{#35842}
2016-04-28 07:33:25 +00:00
yangguo
c218683494 [debugger,interpreter] precisely determine execution tier.
R=mstarzinger@chromium.org
BUG=v8:4690
LOG=N

Review-Url: https://codereview.chromium.org/1921853005
Cr-Commit-Position: refs/heads/master@{#35840}
2016-04-28 06:19:48 +00:00
yangguo
612985b298 Revert of [debugger] unskip mjsunit/debug-stepin-builtin-callback-opt. (patchset #1 id:1 of https://codereview.chromium.org/1927543002/ )
Reason for revert:
Now we do have a repro!

https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gc%20stress/builds/3187/steps/Mjsunit%20-%20ignition%20-%20turbofan/logs/debug-stepin-builtin-..

Original issue's description:
> [debugger] unskip mjsunit/debug-stepin-builtin-callback-opt.
>
> This test does not seem to fail any longer.
>
> R=machenbach@chromium.org
> BUG=v8:4690
> LOG=N
>
> Committed: https://crrev.com/f8e44fb5aaaa80cf2d39bc3164f2c962a6b57f5e
> Cr-Commit-Position: refs/heads/master@{#35814}

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

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

Cr-Commit-Position: refs/heads/master@{#35815}
2016-04-27 10:54:53 +00:00
yangguo
f8e44fb5aa [debugger] unskip mjsunit/debug-stepin-builtin-callback-opt.
This test does not seem to fail any longer.

R=machenbach@chromium.org
BUG=v8:4690
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35814}
2016-04-27 10:20:33 +00:00
machenbach
4ffdce65dd [Interpreter] Prepare switching to new ignition testing variant.
This adds a new ignition_turbofan testing variant that'll
allow switching turbofan off in the other ignition variant.

The switch will happen in a follow up after reconfiguring
the bots.

BUG=v8:4280
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35790}
2016-04-26 11:24:34 +00:00
yangguo
3c7391093b [debugger] fix mjsunit/regress/regress-crbug-119800 for ignition.
R=vogelheim@chromium.org
BUG=v8:4690
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35758}
2016-04-25 11:37:12 +00:00
yangguo
098ff93558 [debugger] make step positions for for-of compatible with interpreter.
R=mstarzinger@chromium.org, rossberg@chromium.org
BUG=v8:4690
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#35750}
2016-04-25 06:53:41 +00:00
Adam Klein
f6c09c893a Remove non-existent object-observe test from mjsunit.status
TBR=machenbach@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#35740}
2016-04-22 18:31:44 +00:00