mvstanton
23b181552e
Vector-based LoadICs need to handle Smi receivers.
...
The MISS handler was being called when the receiver was a Smi, instead,
we should recognize the case and use the heap number map.
BUG=
Review URL: https://codereview.chromium.org/854623002
Cr-Commit-Position: refs/heads/master@{#26076}
2015-01-15 12:52:47 +00:00
dcarney
63cde592e0
[turbofan] add flag for register allocation verification
...
BUG=
Review URL: https://codereview.chromium.org/798873008
Cr-Commit-Position: refs/heads/master@{#26074}
2015-01-15 12:17:36 +00:00
yangguo
22e6958d63
Fix remaining issues in the custom snapshot.
...
Math functions:
Some Math functions require typed arrays for their implementation. The embedded
script may call those Math functions. The serializer needs to deal with this.
Added assertion to make sure no other typed array is created when snapshotting.
Number-string cache:
We assume that the initial snapshot does not expand the number-string cache.
This is no longer true for custom heap snapshots.
Bound functions:
Bound functions store the bound arguments in a COW fixed array, including the
bindee function. COW arrays are serialized into the startup snapshot and
referenced in the partial snapshot via partial snapshot cache. However, the
bindee function is context-dependent and must not be part of the startup
snapshot. There is no need for bound functions to use a COW array though.
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/851073002
Cr-Commit-Position: refs/heads/master@{#26072}
2015-01-15 11:22:17 +00:00
bmeurer
1a5db24e6b
[turbofan] Use PlainPrimitiveToNumber whenever possible.
...
TEST=cctest,unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/852763002
Cr-Commit-Position: refs/heads/master@{#26071}
2015-01-15 09:49:23 +00:00
ulan
a956bf5827
Make map check in NamedStoreHandlerCompiler::GenerateFieldTypeChecks weak.
...
BUG=v8:3629
LOG=N
Review URL: https://codereview.chromium.org/853713002
Cr-Commit-Position: refs/heads/master@{#26070}
2015-01-15 09:43:34 +00:00
dcarney
e6552d4917
Reland "[turbofan] simplify gap ordering"
...
BUG=
Review URL: https://codereview.chromium.org/854703002
Cr-Commit-Position: refs/heads/master@{#26069}
2015-01-15 09:06:05 +00:00
baptiste.afsa
51f3c66b64
[turbofan] Allow 0.0 as immediate for floating-point comparison on arm/arm64.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/850073002
Cr-Commit-Position: refs/heads/master@{#26066}
2015-01-15 06:31:07 +00:00
balazs.kilvady
466ed3a34d
MIPS: Fix 'MIPS: Fix after 'Reland remaining parts of 'Use weak cells in map checks in polymorphic ICs''.'
...
Fix 30f2578ca2
BUG=
Review URL: https://codereview.chromium.org/846423002
Cr-Commit-Position: refs/heads/master@{#26064}
2015-01-14 20:39:56 +00:00
Ben L. Titzer
3244a66543
[turbofan] Fix corner case in loop analysis.
...
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/852783002
Cr-Commit-Position: refs/heads/master@{#26063}
2015-01-14 17:06:37 +00:00
yangguo
fe82e03bb6
Correctly reference global proxy in the partial snapshot.
...
R=verwaest@chromium.org
Review URL: https://codereview.chromium.org/853493003
Cr-Commit-Position: refs/heads/master@{#26061}
2015-01-14 16:42:30 +00:00
mstarzinger
2ebe24c9cb
First simple implementation of for-of in TurboFan.
...
R=rossberg@chromium.org
TEST=cctest/test-run-jsbranches/ForOfContinueStatement
Review URL: https://codereview.chromium.org/850803002
Cr-Commit-Position: refs/heads/master@{#26060}
2015-01-14 15:24:29 +00:00
yangguo
6586bd19fd
Introduce new compile histogram that includes parsing/caching.
...
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/851953003
Cr-Commit-Position: refs/heads/master@{#26059}
2015-01-14 15:22:51 +00:00
jochen
c65799e7c5
Remove support for signatures with arguments
...
Support for it is slow and difficult to implement, and it's not used in
Blink. An embedder that uses this feature will have to check the
argument types itself.
BUG=none
R=dcarney@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/848173002
Cr-Commit-Position: refs/heads/master@{#26058}
2015-01-14 14:44:10 +00:00
fedor.indutny
e8b9f2d70b
src: fix build on freebsd
...
BUG=
R=danno
Review URL: https://codereview.chromium.org/839053004
Cr-Commit-Position: refs/heads/master@{#26057}
2015-01-14 14:35:39 +00:00
bmeurer
e1d878d16f
Add proper support for proxies to HType.
...
TEST=mjsunit/regress/regress-crbug-448730
BUG=chromium:448730
LOG=y
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/847373002
Cr-Commit-Position: refs/heads/master@{#26056}
2015-01-14 13:57:09 +00:00
Benedikt Meurer
c916e8cfa7
Remove stray + character.
...
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/847383002
Cr-Commit-Position: refs/heads/master@{#26055}
2015-01-14 13:49:51 +00:00
jarin
ac04d777d6
[turbofan] Allow deoptimization for JSToNumber operator.
...
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/841443004
Cr-Commit-Position: refs/heads/master@{#26053}
2015-01-14 13:09:32 +00:00
bmeurer
70b32e4b8a
[turbofan] Fix truncation/representation sloppiness wrt. bool/bit.
...
TEST=cctest,mjsunit,unittests
BUG=v8:3812
LOG=y
Review URL: https://codereview.chromium.org/850013003
Cr-Commit-Position: refs/heads/master@{#26051}
2015-01-14 12:06:56 +00:00
yangguo
b62f094884
Store embed-script flag as metadata into snapshot blob.
...
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/848023002
Cr-Commit-Position: refs/heads/master@{#26049}
2015-01-14 11:06:51 +00:00
bmeurer
214387fce1
Revert of [turbofan] Improve typed lowering of JSBitwiseAnd. (patchset #1 id:1 of https://codereview.chromium.org/811653004/ )
...
Reason for revert:
Breaks SQLite
Original issue's description:
> [turbofan] Improve typed lowering of JSBitwiseAnd.
>
> TEST=unittests
> R=jarin@chromium.org
>
> Committed: https://crrev.com/284e1108182995abe85f580bc813d26491642b8c
> Cr-Commit-Position: refs/heads/master@{#26046}
TBR=jarin@chromium.org
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/795833006
Cr-Commit-Position: refs/heads/master@{#26048}
2015-01-14 09:07:07 +00:00
Benedikt Meurer
bf6e35a200
[turbofan] Index parameter to StoreWriteBarrier is word size.
...
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/818173004
Cr-Commit-Position: refs/heads/master@{#26047}
2015-01-14 07:56:39 +00:00
Benedikt Meurer
284e110818
[turbofan] Improve typed lowering of JSBitwiseAnd.
...
TEST=unittests
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/811653004
Cr-Commit-Position: refs/heads/master@{#26046}
2015-01-14 07:40:32 +00:00
balazs.kilvady
3da5a729e8
MIPS: [turbofan] Improve code generation for unordered comparisons.
...
Port c24220c0c1
TEST=cctest,unittests
BUG=
Review URL: https://codereview.chromium.org/850733004
Cr-Commit-Position: refs/heads/master@{#26045}
2015-01-13 20:28:13 +00:00
verwaest
dc8f4c8ce3
Reduce number of deopts caused by ForceDelete.
...
BUG=
Review URL: https://codereview.chromium.org/845403002
Cr-Commit-Position: refs/heads/master@{#26044}
2015-01-13 18:05:49 +00:00
Andy Wingo
79a8caec54
AbortOptimization, RetryOptimization preserve first bailout reason
...
The current logic appears to have been introduced in
https://codereview.chromium.org/596783002 .
R=yangguo@chromium.org
BUG=
Review URL: https://codereview.chromium.org/836033005
Cr-Commit-Position: refs/heads/master@{#26043}
2015-01-13 14:37:09 +00:00
mstarzinger
c36b5ac625
Make UBSan happy about OpParameter casts.
...
R=svenpanne@chromium.org
BUG=chromium:448141
LOG=N
Review URL: https://codereview.chromium.org/847093002
Cr-Commit-Position: refs/heads/master@{#26042}
2015-01-13 13:38:49 +00:00
chunyang.dai
728b39573c
Fix the compilation error for turbofan unsupported platform.
...
Fix the compilation error for turbofan unsupported platform. The Linkage::GetOsrValuePosition()
function is implemented in linkage-impl.h. And this file is included by different platform specific
file separately. This leads to compilation error for turbofan unsupported platform.
The fix is adding one dummy implementation in linkage.cc.
BUG=
Review URL: https://codereview.chromium.org/848873002
Cr-Commit-Position: refs/heads/master@{#26041}
2015-01-13 13:12:33 +00:00
bmeurer
1fa21bfd39
[turbofan] Reduce Word32And masking with shifted inputs.
...
TEST=unittests
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/847113002
Cr-Commit-Position: refs/heads/master@{#26040}
2015-01-13 13:02:40 +00:00
bmeurer
9f292086f9
[turbofan] Add PlainPrimitiveToNumber simplified operator.
...
TEST=unittests
Review URL: https://codereview.chromium.org/845333002
Cr-Commit-Position: refs/heads/master@{#26038}
2015-01-13 11:02:57 +00:00
Sven Panne
c09b26d14b
Avoid MSVC's C6323 warning (use of arithmetic operator on Boolean type)
...
We could use BoolToInt consistently, but for now let's just fix the warnings.
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/825913005
Cr-Commit-Position: refs/heads/master@{#26037}
2015-01-13 10:52:44 +00:00
bmeurer
ca741a0b3c
[turbofan] Avoid expensive fixup for Uint32Div if divisor is even.
...
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/840813008
Cr-Commit-Position: refs/heads/master@{#26036}
2015-01-13 10:01:18 +00:00
yangguo
bcab9eacf3
Update references to global object after deserializing context.
...
R=jochen@chromium.org
TEST=test-serialize/CustomContext{Des,S}erialization
Also test by
- make ia32.debug embedscript=<full path to mjsunit.js>
- d8 -e "assertDoesNotThrow('print(1)')"
Review URL: https://codereview.chromium.org/846023002
Cr-Commit-Position: refs/heads/master@{#26035}
2015-01-13 08:48:08 +00:00
bmeurer
c24220c0c1
[turbofan] Improve code generation for unordered comparisons.
...
TEST=cctest,unittests
Review URL: https://codereview.chromium.org/850653002
Cr-Commit-Position: refs/heads/master@{#26034}
2015-01-13 08:42:02 +00:00
jarin
527e19afd5
[turbofan] Add missing deopt.
...
BUG=chromium:447567
LOG=n
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/809463005
Cr-Commit-Position: refs/heads/master@{#26033}
2015-01-13 08:40:54 +00:00
svenpanne
cf09a5a191
Avoid MSVC's C6282 warning (assignment of constant in Boolean context).
...
By courtesy of /analyze... :-}
Review URL: https://codereview.chromium.org/846223002
Cr-Commit-Position: refs/heads/master@{#26032}
2015-01-13 08:37:06 +00:00
marja
665c6faad2
CompleteParserRecorder: Don't do zero-sized allocations.
...
Instead, we should use Collector::kMinCapacity.
R=jochen@chromium.org
BUG=v8:3727
LOG=N
Review URL: https://codereview.chromium.org/847823002
Cr-Commit-Position: refs/heads/master@{#26030}
2015-01-12 17:32:00 +00:00
yangguo
39cd762c6c
Embed custom script into the snapshot.
...
R=vogelheim@chromium.org
Review URL: https://codereview.chromium.org/845973003
Cr-Commit-Position: refs/heads/master@{#26029}
2015-01-12 15:26:31 +00:00
caitpotter88
4b6316c5ff
Check for octals in template spans only, not expressions
...
BUG=v8:3806
LOG=N
R=arv@chromium.org , dslomov@chromium.org
Review URL: https://codereview.chromium.org/808793004
Cr-Commit-Position: refs/heads/master@{#26028}
2015-01-12 15:07:47 +00:00
bmeurer
0e8a6d4ec8
[turbofan] Canonicalize x - K to x + -K.
...
TEST=unittests
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/846913002
Cr-Commit-Position: refs/heads/master@{#26027}
2015-01-12 15:02:06 +00:00
balazs.kilvady
09e5e02da7
MIPS64: Fix '[turbofan] Implement OSR for outer loops.'
...
Add missing include of 159b14172f
.
BUG=
Review URL: https://codereview.chromium.org/845983003
Cr-Commit-Position: refs/heads/master@{#26025}
2015-01-12 14:29:06 +00:00
rmcilroy
76ce4a9c2f
[d8] Fix V8 external snapshot for Windows.
...
Adds a cast to V8 external snapshot code for Windows.
BUG=421063, 439661
LOG=N
Review URL: https://codereview.chromium.org/842573004
Cr-Commit-Position: refs/heads/master@{#26024}
2015-01-12 12:54:05 +00:00
erikcorry
7db1759b65
Unify phantom and internal fields weak handle callbacks
...
R=dcarney@chromium.org
BUG=
Review URL: https://codereview.chromium.org/842153004
Cr-Commit-Position: refs/heads/master@{#26022}
2015-01-12 12:12:10 +00:00
dslomov
a4124b3bfc
Map -0 to integer 0 for typed array constructors.
...
R=bmeurer@chromium.org
BUG=chromium:447756
LOG=Y
Review URL: https://codereview.chromium.org/790813005
Cr-Commit-Position: refs/heads/master@{#26021}
2015-01-12 11:42:57 +00:00
titzer
159b14172f
[turbofan] Implement OSR for outer loops.
...
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/809333002
Cr-Commit-Position: refs/heads/master@{#26020}
2015-01-12 11:39:58 +00:00
jochen
aeb09e6dcf
Merge v8_optimized_debug 1 and 2
...
All builders that used level 1 should meanwhile define
v8_enable_slow_dchecks, and so they can use level 2 without losing
coverage. Level 2, however, is considerably faster, so we want to use it
on those builders as well. The make optdebug setting is not affected by
this change.
BUG=none
R=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/847753002
Cr-Commit-Position: refs/heads/master@{#26019}
2015-01-12 09:58:42 +00:00
marja
2305cfb4e2
ES6 unicode escapes, part 2: Regexps.
...
Allows \u{xxxxx} in regexps. Behind the --harmony-unicode flag.
Part 1 is here: https://codereview.chromium.org/716423002
BUG=v8:3648
LOG=N
Review URL: https://codereview.chromium.org/788043005
Cr-Commit-Position: refs/heads/master@{#26018}
2015-01-12 09:50:34 +00:00
paul.lind
eb68d6fe13
MIPS: remove immediate constraint within CompareAndSwap.
...
Improper use of immediate constraint is slightly non-optimal
with gcc/gnu-as but causes breakage with clang.
BUG=
Review URL: https://codereview.chromium.org/841263002
Cr-Commit-Position: refs/heads/master@{#26016}
2015-01-09 20:12:28 +00:00
bmeurer
b6c7e11c10
[turbofan] Fix typo in IrOpcode::Mnemonic.
...
TEST=unittests
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/843043002
Cr-Commit-Position: refs/heads/master@{#26014}
2015-01-09 14:20:03 +00:00
jochen
21ce246423
Correctly setup the freelist of the coderange on Win64
...
Since we have a special guard page at the beginning of the code range on
win64, we need to make sure to adjust the size of the free list
accordingly when creating it.
BUG=chromium:447555
R=hpayer@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/843973002
Cr-Commit-Position: refs/heads/master@{#26012}
2015-01-09 13:07:42 +00:00
Jochen Eisinger
c10c3cbf18
Fast forward V8 to version 4.2
...
R=machenbach@chromium.org
LOG=y
BUG=none
Review URL: https://codereview.chromium.org/809803007
Cr-Commit-Position: refs/heads/master@{#26011}
2015-01-09 12:56:04 +00:00