Commit Graph

37062 Commits

Author SHA1 Message Date
jgruber
ee94fa11ed [regexp] Store named captures on the regexp result
This implements storing named captures on the regexp result object.
For instance, /(?<a>.)/u.exec("b") will return a result such that:

result.group.a  // "b"

The spec proposal is not yet final, so this may still change in the future.

BUG=v8:5437

Review-Url: https://codereview.chromium.org/2630233003
Cr-Original-Commit-Position: refs/heads/master@{#42532}
Committed: 70000946eb
Review-Url: https://codereview.chromium.org/2630233003
Cr-Commit-Position: refs/heads/master@{#42570}
2017-01-20 16:11:13 +00:00
machenbach
24b9fc3a9a [foozzie] Use correct ignition baseline
Also switch on validate asm in all configuration to zero out any
comparisons.

BUG=chromium:673246
NOTRY=true
TBR=mstarzinger@chromium.org, rmcilroy@chromium.org

Review-Url: https://codereview.chromium.org/2647493004
Cr-Commit-Position: refs/heads/master@{#42569}
2017-01-20 15:35:07 +00:00
mtrofin
2e3447bb66 [wasm] WebAssembly.compile: pass errors through promise resolver
BUG=v8:5876

Review-Url: https://codereview.chromium.org/2644893004
Cr-Commit-Position: refs/heads/master@{#42568}
2017-01-20 15:33:59 +00:00
tebbi
dc93bb4740 [turbolizer] distinguish optimization attempts
Create different json files for diffferent optimization attempts of the same function.
This allows to analyze the graphs of early optimization attempts that lead to deopts or to produce a proper json file in the case of a deopt loop.

R=danno@chromium.org

Review-Url: https://codereview.chromium.org/2649513003
Cr-Commit-Position: refs/heads/master@{#42567}
2017-01-20 15:30:03 +00:00
clemensh
4dcbe86e30 Fix CHECK_OP implementation in Release builds
In this particular case, we just did a (lhs)op(rhs), ignoring the case
that lhs and rhs might have different signedness.
This CL changes that to use the proper Cmp##op##Impl implementation,
which does two comparisions for signed-vs-unsigned checks, avoiding
compiler errors.

R=ishell@chromium.org

Review-Url: https://codereview.chromium.org/2642383002
Cr-Commit-Position: refs/heads/master@{#42566}
2017-01-20 15:28:54 +00:00
mlippautz
a7c06dd42a [heap] Fix clearing markbit in LO space
Do not DCHECK live bytes as they might be inconsistent.

BUG=
TBR=hpayer@chromium.org
NOTRY=true

Review-Url: https://codereview.chromium.org/2647573004
Cr-Commit-Position: refs/heads/master@{#42565}
2017-01-20 15:10:45 +00:00
titzer
04434acbce [wasm] Unreachability fix for br_table.
R=rossberg@chromium.org
BUG=chromium:682659

Review-Url: https://codereview.chromium.org/2646093003
Cr-Commit-Position: refs/heads/master@{#42564}
2017-01-20 14:32:38 +00:00
marja
226e454069 includes: move Label out of assembler.h.
E.g., ast/ast.h uses Label but shouldn't need to include assembler.h for that. With
this change, we can hope for proper layering in the future (not quite there
yet).

Also includes minor random include lowering and relevant IWYU fixes.

BUG=v8:5294

Review-Url: https://codereview.chromium.org/2645063002
Cr-Commit-Position: refs/heads/master@{#42563}
2017-01-20 14:21:34 +00:00
rmcilroy
4b0101d369 [Parse] ParseInfo owns the parsing Zone.
Moves ownership of the parsing Zone to ParseInfo with a shared_ptr. This is
in preperation for enabling background compilation jobs for inner functions
share the AST in the outer-function's parse zone memory (read-only), with the
and zone being released when all compilation jobs have completed.

BUG=v8:5203,v8:5215

Review-Url: https://codereview.chromium.org/2632123006
Cr-Original-Commit-Position: refs/heads/master@{#42539}
Committed: 839b06b64f
Review-Url: https://codereview.chromium.org/2632123006
Cr-Commit-Position: refs/heads/master@{#42562}
2017-01-20 14:15:28 +00:00
petermarshall
ee9c709190 [builtins] Don't put doubles on the stack in ConstructWithSpread.
FAST_DOUBLE_ELEMENTS and FAST_HOLEY_DOUBLE_ELEMENTS kinds should both
be handled by the runtime.

Review-Url: https://codereview.chromium.org/2644643011
Cr-Commit-Position: refs/heads/master@{#42561}
2017-01-20 14:03:55 +00:00
clemensh
a1e04ef524 [wasm] Add tests for breakpoints
Test that setting breakpoints works for wasm, and that they are hit
correctly.
This basically tests all the layers involved: Compiling and running
wasm interpreter entries, passing arguments to the interpreter, storing
break point infos in wasm objects, getting the right BreakLocation from
wasm frames, and getting stack information from interpreted frames.

BUG=v8:5822
R=titzer@chromium.org, yangguo@chromium.org

Review-Url: https://codereview.chromium.org/2629883002
Cr-Commit-Position: refs/heads/master@{#42560}
2017-01-20 13:50:09 +00:00
ahaas
fba9047314 [wasm] Check for replacements of IndexNodes in the Int64Lowering.
The index input of load and store nodes has to be of type int32. However
it is still possible that this index input was lowered by the
Int64Lowering, for example if the index was a kTruncateInt64ToInt32
node. With this CL we check if there exists a replacement of the index
and if so, use the replacement instead of the original index as the
input for the lowered load and store nodes.

BUG=v8:5874
R=titzer@chromium.org, eholk@chromium.org

Review-Url: https://codereview.chromium.org/2644603004
Cr-Commit-Position: refs/heads/master@{#42559}
2017-01-20 13:39:25 +00:00
machenbach
77d08c1347 Roll isolate binaries generated at infra@9249eb0
TBR=maruel@chromium.org
BUG=v8:5872

Review-Url: https://codereview.chromium.org/2645053002
Cr-Commit-Position: refs/heads/master@{#42558}
2017-01-20 13:35:56 +00:00
titzer
ba4e316392 [wasm] Use the official opcode names everywhere.
R=clemensh@chromium.org
BUG=

Review-Url: https://codereview.chromium.org/2644323002
Cr-Commit-Position: refs/heads/master@{#42557}
2017-01-20 13:28:29 +00:00
rossberg
1b690f43d9 [wasm] W.validate should not throw on failure
R=titzer@chromium.org
BUG=

Review-Url: https://codereview.chromium.org/2640113005
Cr-Commit-Position: refs/heads/master@{#42556}
2017-01-20 13:27:04 +00:00
mlippautz
0659898b3e Reland "[heap] Provide ObjectMarking with marking transitions"
BUG=chromium:651354

Review-Url: https://codereview.chromium.org/2637403011
Cr-Commit-Position: refs/heads/master@{#42555}
2017-01-20 13:18:43 +00:00
ishell
d02ca3625f [runtime] Always request kMutable constness when reconfiguring to a field.
BUG=chromium:682706

Review-Url: https://codereview.chromium.org/2644853003
Cr-Commit-Position: refs/heads/master@{#42554}
2017-01-20 13:17:04 +00:00
yangguo
f40710bce3 [serializer] remove test case for internal references.
This particular test case is a hack that abuses Turbofan to
generate code that contains a switch table. Now that some
builtins use the CodeStubAssembler to implement switch tables
we don't need this test case anymore.

TBR=jarin@chromium.org

Review-Url: https://codereview.chromium.org/2645943003
Cr-Commit-Position: refs/heads/master@{#42553}
2017-01-20 13:11:21 +00:00
marja
7366d8954c objects.h splitting: Move RegExpMatchInfo.
BUG=v8:5402

Review-Url: https://codereview.chromium.org/2642353002
Cr-Commit-Position: refs/heads/master@{#42552}
2017-01-20 13:01:55 +00:00
clemensh
09525c8f90 [wasm] Implement frame inspection for interpreted frames
Frame inspection is currently limited to locations of execution.
Further details like local variables or stack content will follow later.

The FrameInspector now stores a pointer to the interpreted wasm frame,
and redirects certain requests there, just as for deoptimized frames.
Hitting breakpoints is now also supported for wasm frames.

R=yangguo@chromium.org, titzer@chromium.org
BUG=v8:5822

Review-Url: https://codereview.chromium.org/2629823003
Cr-Commit-Position: refs/heads/master@{#42551}
2017-01-20 12:58:14 +00:00
franzih
4714bc15e8 [test] Enable mjsunit/es6/block-scoping again.
Enable test after fix.

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

BUG=v8:5873

Review-Url: https://codereview.chromium.org/2648693003
Cr-Commit-Position: refs/heads/master@{#42550}
2017-01-20 11:34:30 +00:00
yangguo
7e420cf186 Revert of [debugger api] remove legacy JSON debug protocol. (patchset #2 id:20001 of https://codereview.chromium.org/2642253005/ )
Reason for revert:
Node.js relies on this

Original issue's description:
> [debugger api] remove legacy JSON debug protocol.
>
> R=jgruber@chromium.org
> BUG=v8:5530
>
> Review-Url: https://codereview.chromium.org/2642253005
> Cr-Commit-Position: refs/heads/master@{#42543}
> Committed: e26a58e43c

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

Review-Url: https://codereview.chromium.org/2644233003
Cr-Commit-Position: refs/heads/master@{#42549}
2017-01-20 11:30:06 +00:00
franzih
dd8881a5c4 [turbofan] Check for nullptr maps.
ReduceJSStoreDataPropertyInLiteral should not reduce the monomorphic
case if the map got deleted. This has been fixed before in the context
of a larger commit, which was reverted.

R=adamk@chromium.org, mvstanton@chromium.org, bmeurer@chromium.org

BUG=v8:5873

Review-Url: https://codereview.chromium.org/2644733007
Cr-Commit-Position: refs/heads/master@{#42548}
2017-01-20 10:50:16 +00:00
dusan.simicic
73281702c8 [test] Clear unhandled scheduled exceptions from ValueSerializerTest
This patch adds destructor to ValueSerializerTest test fixture class
which reset unhandled scheduled exceptions thrown from the current test.
In some cases unhandled scheduled exceptions from current test (eg.
from one test from ValueSerializerTestWithWasm test case) produce that
Context::New(isolate()) from next test's constructor returns NULL.

This error is easily reproduced when unittest file (compiled for ARM or
MIPS simulator) is directly executed (not by tools/run_tests.py script),
so all tests are executed together. When the script is used, each test
from ValueSerializerTestWithWasm test case is separately executed and
unhandled exception from one test doesn't efect to another test from
the same test case.

BUG=

Review-Url: https://codereview.chromium.org/2644083002
Cr-Commit-Position: refs/heads/master@{#42547}
2017-01-20 10:49:06 +00:00
yangguo
7425b1f2c9 Revert of [debugger] temporarily re-implement --expose-debug-as. (patchset #1 id:1 of https://codereview.chromium.org/2636423002/ )
Reason for revert:
Flag is being removed for 5.8.

Original issue's description:
> [debugger] temporarily re-implement --expose-debug-as.
>
> This is done out of courtesy for Node.js and will be
> removed as soon as we branch for version 5.8.
>
> R=jgruber@chromium.org
>
> Review-Url: https://codereview.chromium.org/2636423002
> Cr-Commit-Position: refs/heads/master@{#42437}
> Committed: cbb7145221

TBR=jgruber@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.

Review-Url: https://codereview.chromium.org/2641283002
Cr-Commit-Position: refs/heads/master@{#42546}
2017-01-20 10:47:57 +00:00
ahaas
ea92543171 [wasm] Fix I32ReinterpretF32 and I64ReinterpretF64 on ia32.
On ia32 return statements in C++ automatically convert signalling NaNs
to quiet NaNs, even when bit_cast is used. This CL removes all uses of
bit_cast<float> and bit_cast<double> in the wasm compiler and wasm
interpreter.

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

Review-Url: https://codereview.chromium.org/2639353002
Cr-Original-Commit-Position: refs/heads/master@{#42512}
Committed: 7739affa5b
Review-Url: https://codereview.chromium.org/2639353002
Cr-Commit-Position: refs/heads/master@{#42545}
2017-01-20 10:46:48 +00:00
bmeurer
0ff07a5bfb [ignition] Remove obsolete %_ValueOf intrinsic.
The %_ValueOf intrinsic is not used anymore and the runtime call
%ValueOf will also disappear once all the self hosted builtins are
migrated.

R=rmcilroy@chromium.org

Review-Url: https://codereview.chromium.org/2642303003
Cr-Commit-Position: refs/heads/master@{#42544}
2017-01-20 10:45:37 +00:00
yangguo
e26a58e43c [debugger api] remove legacy JSON debug protocol.
R=jgruber@chromium.org
BUG=v8:5530

Review-Url: https://codereview.chromium.org/2642253005
Cr-Commit-Position: refs/heads/master@{#42543}
2017-01-20 10:44:27 +00:00
rmcilroy
37cdb18bb7 Revert of [Parse] ParseInfo owns the parsing Zone. (patchset #4 id:60001 of https://codereview.chromium.org/2632123006/ )
Reason for revert:
Crashes on Windows in:
 CompilerDispatcherJobTest.CompileFailureToFinalize
 CompilerDispatcherJobTest.ScopeChain

Original issue's description:
> [Parse] ParseInfo owns the parsing Zone.
>
> Moves ownership of the parsing Zone to ParseInfo with a shared_ptr. This is
> in preperation for enabling background compilation jobs for inner functions
> share the AST in the outer-function's parse zone memory (read-only), with the
> and zone being released when all compilation jobs have completed.
>
> BUG=v8:5203,v8:5215
>
> Review-Url: https://codereview.chromium.org/2632123006
> Cr-Commit-Position: refs/heads/master@{#42539}
> Committed: 839b06b64f

TBR=marja@chromium.org,mstarzinger@chromium.org,ahaas@chromium.org,verwaest@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:5203,v8:5215

Review-Url: https://codereview.chromium.org/2645613008
Cr-Commit-Position: refs/heads/master@{#42542}
2017-01-20 10:43:12 +00:00
rmcilroy
d2fe6dfadc Revert of [Compiler] Have renumber recurse into eagerly compiled function literals. (patchset #2 id:40001 of https://codereview.chromium.org/2648503002/ )
Reason for revert:
Revert in order to revert dependent patchset https://codereview.chromium.org/2632123006/

Original issue's description:
> [Compiler] Have renumber recurse into eagerly compiled function literals.
>
> This enables us to produce the list of eager inner functions for compilation
> in one go during the outer function's renumbering step, and avoid having
> to do renumbering explicitly on the inner functions, simplifying the zone
> ownership.
>
> BUG=v8:5203, v8:5215
>
> Review-Url: https://codereview.chromium.org/2648503002
> Cr-Commit-Position: refs/heads/master@{#42540}
> Committed: 3541a074e2

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

Review-Url: https://codereview.chromium.org/2643233002
Cr-Commit-Position: refs/heads/master@{#42541}
2017-01-20 10:41:59 +00:00
rmcilroy
3541a074e2 [Compiler] Have renumber recurse into eagerly compiled function literals.
This enables us to produce the list of eager inner functions for compilation
in one go during the outer function's renumbering step, and avoid having
to do renumbering explicitly on the inner functions, simplifying the zone
ownership.

BUG=v8:5203, v8:5215

Review-Url: https://codereview.chromium.org/2648503002
Cr-Commit-Position: refs/heads/master@{#42540}
2017-01-20 09:51:02 +00:00
rmcilroy
839b06b64f [Parse] ParseInfo owns the parsing Zone.
Moves ownership of the parsing Zone to ParseInfo with a shared_ptr. This is
in preperation for enabling background compilation jobs for inner functions
share the AST in the outer-function's parse zone memory (read-only), with the
and zone being released when all compilation jobs have completed.

BUG=v8:5203,v8:5215

Review-Url: https://codereview.chromium.org/2632123006
Cr-Commit-Position: refs/heads/master@{#42539}
2017-01-20 09:26:57 +00:00
jarin
a0230f6359 [deoptimizer] Initialize array iterator index to zero to make heap-verify happy.
BUG=chromium:682671

Review-Url: https://codereview.chromium.org/2644283002
Cr-Commit-Position: refs/heads/master@{#42538}
2017-01-20 09:22:56 +00:00
marja
3534091756 Parsing: Create the same scopes for non-simple params in PreParser & Parser.
Rationale:

- To do scope analysis based on PreParser, and use the result again when parsing
  later, PreParser and Parser need to produce the same Scopes and variable
  declarations in them.

- This is not the case for non-simple parameters: Parser creates an additional
  inner Scope where the declarations were, whereas PreParser does
  DeclareVariableName directly in the function Scope.

- So this CL fixes that by moving the Scope creation for non-simple parameters
  into ParserBase.

- As a side product (and a partial proof that this change makes sense),
  PreParser::ParseEagerFunctionBody is now gone.

BUG=v8:5516

Review-Url: https://codereview.chromium.org/2638333002
Cr-Commit-Position: refs/heads/master@{#42537}
2017-01-20 08:58:54 +00:00
jochen
8b8c8df05b Also suppress exception messages thrown by native scripts
BUG=chromium:681984
R=yangguo@chromium.org

Review-Url: https://codereview.chromium.org/2640983006
Cr-Commit-Position: refs/heads/master@{#42536}
2017-01-20 08:57:42 +00:00
bmeurer
f23819ef6d [turbofan] Assign proper types to various builtins.
Let the Typer assign proper types to Map, Set, WeakMap and WeakSet
builtins. Also assign a proper type to Array.isArray, Object.assign
and Object.create.

R=yangguo@chromium.org

Review-Url: https://codereview.chromium.org/2640783006
Cr-Commit-Position: refs/heads/master@{#42535}
2017-01-20 08:56:33 +00:00
jgruber
9c68654c39 Revert of [regexp] Create property on result for each named capture (patchset #5 id:80001 of https://codereview.chromium.org/2630233003/ )
Reason for revert:
Breaks no18n build: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20noi18n%20-%20debug/builds/11604

Original issue's description:
> [regexp] Store named captures on the regexp result
>
> This implements storing named captures on the regexp result object.
> For instance, /(?<a>.)/u.exec("b") will return a result such that:
>
> result.group.a  // "b"
>
> The spec proposal is not yet final, so this may still change in the future.
>
> BUG=v8:5437
>
> Review-Url: https://codereview.chromium.org/2630233003
> Cr-Commit-Position: refs/heads/master@{#42532}
> Committed: 70000946eb

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

Review-Url: https://codereview.chromium.org/2643213002
Cr-Commit-Position: refs/heads/master@{#42534}
2017-01-20 08:42:03 +00:00
bmeurer
3258bef0ad Revert of [heap] Provide ObjectMarking with marking transitions (patchset #5 id:80001 of https://codereview.chromium.org/2644523002/ )
Reason for revert:
Breaks the tree: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20gc%20stress/builds/8349/steps/Mjsunit/logs/compiled-module-seria..

Original issue's description:
> [heap] Provide ObjectMarking with marking transitions
>
> BUG=chromium:651354
>
> Review-Url: https://codereview.chromium.org/2644523002
> Cr-Commit-Position: refs/heads/master@{#42531}
> Committed: cbb8929e97

TBR=hpayer@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:651354

Review-Url: https://codereview.chromium.org/2647873002
Cr-Commit-Position: refs/heads/master@{#42533}
2017-01-20 08:30:08 +00:00
jgruber
70000946eb [regexp] Store named captures on the regexp result
This implements storing named captures on the regexp result object.
For instance, /(?<a>.)/u.exec("b") will return a result such that:

result.group.a  // "b"

The spec proposal is not yet final, so this may still change in the future.

BUG=v8:5437

Review-Url: https://codereview.chromium.org/2630233003
Cr-Commit-Position: refs/heads/master@{#42532}
2017-01-20 08:04:07 +00:00
mlippautz
cbb8929e97 [heap] Provide ObjectMarking with marking transitions
BUG=chromium:651354

Review-Url: https://codereview.chromium.org/2644523002
Cr-Commit-Position: refs/heads/master@{#42531}
2017-01-20 07:55:43 +00:00
bmeurer
3e4070930d [turbofan] Properly implement %_ClassOf intrinsic.
The %_ClassOf intrinsic roughly corresponds to the deprecated ES5
[[Class]] internal property, and should not be used anymore ideally.
However since we still have quite a couple of uses of this intrinsic
in the self hosted JavaScript builtins, we would tank some builtins
like Map, Set, WeakMap, WeakSet, etc. quite significantly unless we
also support this intrinsic until the builtins are all migrated to
C++/CSA builtins.

R=yangguo@chromium.org
BUG=v8:5267

Review-Url: https://codereview.chromium.org/2647833004
Cr-Commit-Position: refs/heads/master@{#42530}
2017-01-20 07:01:52 +00:00
v8-autoroll
4a88dfba41 Update V8 DEPS.
Rolling v8/build: 70270c1..0081085

Rolling v8/third_party/catapult: cfcae9b..49e3f62

Rolling v8/third_party/jinja2: b61a2c0..d343832

Rolling v8/third_party/markupsafe: 484a566..8f45f5c

Rolling v8/tools/clang: 7a4c8c9..fa8cd67

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

Review-Url: https://codereview.chromium.org/2644693006
Cr-Commit-Position: refs/heads/master@{#42529}
2017-01-20 04:37:52 +00:00
mtrofin
495a48c841 [wasm] structured cloning opt-out flag
BUG=

Review-Url: https://codereview.chromium.org/2644643009
Cr-Commit-Position: refs/heads/master@{#42528}
2017-01-20 01:15:58 +00:00
caitp
498084222a [async-iteration] expose Symbol.asyncIterator behind flag --harmony-async-iteration
Flag is used by followup patches split apart from
https://codereview.chromium.org/2622833002/, and tests for each split
out CL ends up using Symbol.asyncIterator, so it makes sense to land it
first (behind a flag).

BUG=v8:5855
R=littledan@chromium.org, adamk@chromium.org

Review-Url: https://codereview.chromium.org/2645923003
Cr-Commit-Position: refs/heads/master@{#42527}
2017-01-20 00:42:09 +00:00
adamk
5587c476a1 Skip mjsunit/es6/block-scoping on gc-stress
It's crashing in TurboFan after c70ec473ba
(a change to turn on some Intl features, which aren't possible TF-related).

BUG=v8:5873
TBR=machenbach@chromium.org
NOTREECHECKS=true
NOTRY=true

Review-Url: https://codereview.chromium.org/2638333006
Cr-Commit-Position: refs/heads/master@{#42526}
2017-01-19 23:19:55 +00:00
mlippautz
32228ff2c1 Fix api test IndependentWeakHandle
BUG=v8:5865

Review-Url: https://codereview.chromium.org/2640363003
Cr-Commit-Position: refs/heads/master@{#42525}
2017-01-19 21:59:11 +00:00
jshin
c70ec473ba Turn on icu_case_mapping by default
Update string-capitalize expected result because now it
passes all the tests in the file.
Mark fast/js/string-capitalization as failing with no_i18n.

Relanding after revert because the failure was taken care of
by Adam's CL at https://codereview.chromium.org/2597543002 .

3rd langing after a crash is taken care of in
https://codereview.chromium.org/2621393002

In addition to the previous version of this CL (PS #4) that landed and
reverted, drop String.prototype.to(Locale){Upper,Lower}Case from the
whitelist of built-in functions for side-effect-free-debugging.

BUG=v8:4477, v8:4476
TEST=test262/{built-ins,intl402}/Strings/*, webkit/fast/js/*,
     mjsunit/string-case, intl/general/case*

Cr-Original-Original-Commit-Position: refs/heads/master@{#41834}
Committed: 7c79e23c34
Review-Url: https://codereview.chromium.org/2588963002
Cr-Original-Commit-Position: refs/heads/master@{#41883}
Committed: a42c8c67de
Review-Url: https://codereview.chromium.org/2588963002
Cr-Commit-Position: refs/heads/master@{#42524}
2017-01-19 21:45:12 +00:00
krasin
5ccc719a31 Fix unused lambda captures.
Clang just got more strict about unused lambda captures,
and that requires us to clean all places with this issue
across all the Chromium code base. This CL fixes all such
cases in V8.

BUG=chromium:681136

Review-Url: https://codereview.chromium.org/2646553002
Cr-Commit-Position: refs/heads/master@{#42523}
2017-01-19 21:34:00 +00:00
bmeurer
4e565c68ff [turbofan] Assign proper type to %ClassOf/%_ClassOf.
The %ClassOf runtime function and %_ClassOf intrinsics always produce an
internalized string, or Null for primitive inputs.

BUG=v8:5267
R=yangguo@chromium.org

Review-Url: https://codereview.chromium.org/2646523004
Cr-Commit-Position: refs/heads/master@{#42522}
2017-01-19 21:16:27 +00:00
bmeurer
d389e49b5c [turbofan] Recognize a couple of collection.js intrinsics.
Right now running the Map and Set builtins with I+TF would tank
seriously because these builtins are still built on top of a
couple of classic intrinsics that TurboFan doesn't understand.
Middle-term the idea is to replace the Map and Set builtins with
a CodeStubAssembler based solution, but for that might not be
ready in time, so adding support for a couple of the critical
intrinsics to mitigate the tankage a bit, namely

 - %_JSCollectionGetTable,
 - %_TheHole, and
 - %_StringGetRawHashField.

Together these double the score on most of the existing performance
tests for collections.

R=yangguo@chromium.org
BUG=v8:5267

Review-Url: https://codereview.chromium.org/2647733002
Cr-Commit-Position: refs/heads/master@{#42521}
2017-01-19 21:03:07 +00:00