dcarney@chromium.org [Mon, 29 Sep 2014 10:15:55 +0000 (10:15 +0000)]
[turbofan] add new ia32 addressing modes
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
613643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24277
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Mon, 29 Sep 2014 10:08:04 +0000 (10:08 +0000)]
[turbofan] ARM64 support for multiply-accumulate
Add instruction selectors for multiply-accumulate, multiply-subtract and negated
multiply operations.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
605693003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24276
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Mon, 29 Sep 2014 09:39:22 +0000 (09:39 +0000)]
Fix initialization of assert scopes.
The thread local key for assert scopes can be lazily initialized and
should be independent of the Isolate initialization. Also cleanup the
assert-scope.{cc,h} implementation while I was at it.
R=dcarney@chromium.org
Review URL: https://codereview.chromium.org/
609253002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24275
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 29 Sep 2014 09:32:38 +0000 (09:32 +0000)]
Split more runtime functions into seperate files.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
598913004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24274
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 29 Sep 2014 08:47:04 +0000 (08:47 +0000)]
Access checks test for stores to 'super'.
R=dcarney@chromium.org
BUG=v8:3330
LOG=N
Review URL: https://codereview.chromium.org/
609273002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24273
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 29 Sep 2014 08:45:11 +0000 (08:45 +0000)]
fix win compilation after r24267
TBR=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
610373003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24272
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Mon, 29 Sep 2014 08:39:05 +0000 (08:39 +0000)]
X87: fix the Sqrt issue.
The test mjsunit/regress/regress-sqrt compares the result of Math.sqrt function
when using full-compiler and crankshaft compiler seperately. But according to
glibc bug fixing(https://sourceware.org/bugzilla/show_bug.cgi?id=14032). The
glibc implementation of std::sqrt() (It is invoked in the generated code when
full-compiler is used.) will change since glibc 2.19.
In order to keep consistence of Math.sqrt translation in crankshaft compiler
and the pass of mjsunit/regress/regress-sqrt. we translate the Math.sqrt func
by calling the runtime function.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
606403002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24271
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
Jacob.Bramley@arm.com [Mon, 29 Sep 2014 08:30:17 +0000 (08:30 +0000)]
[turbofan] add some simplifications in the machine operator reducer
Simplify the '+', '-' and '%' operators with some basic constants (0, 1 or NaN).
R=titzer@chromium.org, bmeurer@chromium.org, titzer@google.com
BUG=
Review URL: https://codereview.chromium.org/
599383002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24270
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Mon, 29 Sep 2014 08:22:24 +0000 (08:22 +0000)]
ArrayConcat regression recover after r20312 (appeared on dromaeo benchmarks).
BUG=chromium:358561
LOG=N
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
597103003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24269
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 29 Sep 2014 08:16:24 +0000 (08:16 +0000)]
Stores and compound assignments for named super properties.
R=ishell@chromium.org, arv@chromium.org, verwaest@chromium.org
BUG=v8:3330
LOG=N
Review URL: https://codereview.chromium.org/
593073002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24268
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 29 Sep 2014 08:11:03 +0000 (08:11 +0000)]
[turbofan] add new x64 addressing modes
R=bmeurer@chromium.org, titzer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
605693002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24267
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 29 Sep 2014 07:53:22 +0000 (07:53 +0000)]
Do not serialize non-lazy compiled function literals.
... and some small refactorings.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
594513002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24266
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 29 Sep 2014 07:48:05 +0000 (07:48 +0000)]
build fix - add missing inl include
TBR=marja@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
608203002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24265
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 29 Sep 2014 07:30:41 +0000 (07:30 +0000)]
Revert "Convert `obj` ToObject in Object.keys()"
This reverts commit r24260 for breaking test262 tests.
TBR=arv@chromium.org
Review URL: https://codereview.chromium.org/
608193002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24264
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Mon, 29 Sep 2014 07:29:14 +0000 (07:29 +0000)]
[turbofan] basic block profiler
R=titzer@chromium.org, mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
593563005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24263
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 29 Sep 2014 07:14:05 +0000 (07:14 +0000)]
Fix serializing ICs.
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
587213002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24262
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Mon, 29 Sep 2014 07:08:15 +0000 (07:08 +0000)]
Move string-related runtime functions into separate files.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
604703004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24261
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Mon, 29 Sep 2014 07:07:16 +0000 (07:07 +0000)]
Convert `obj` ToObject in Object.keys()
BUG=v8:3587
LOG=Y
R=arv@chromium.org, dslomov@chromium.org
Review URL: https://codereview.chromium.org/
585373003
Patch from Caitlin Potter <caitpotter88@gmail.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24260
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Fri, 26 Sep 2014 14:17:03 +0000 (14:17 +0000)]
initialize v8 early in unittests
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
608773002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24256
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 26 Sep 2014 14:06:56 +0000 (14:06 +0000)]
Extend JSBuiltinReducer to cover Math.abs as well.
R=titzer@chromium.org
TEST=compiler-unittests/JSBuiltinReducerTest.MathAbs
Review URL: https://codereview.chromium.org/
605123004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24255
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ishell@chromium.org [Fri, 26 Sep 2014 13:59:48 +0000 (13:59 +0000)]
Disable job-based sweeping in predictable mode.
BUG=v8:3563
LOG=N
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
604283002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24254
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 26 Sep 2014 13:46:22 +0000 (13:46 +0000)]
Let test driver fail if test executable can't list the tests.
TBR=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
605133004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24253
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Fri, 26 Sep 2014 12:02:11 +0000 (12:02 +0000)]
Remove deprecated ifdef from flag definitions.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
611453003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24252
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
marja@chromium.org [Fri, 26 Sep 2014 11:17:31 +0000 (11:17 +0000)]
Script streaming: fix split UTF-8 character handling.
Invalid UTF-8 data can contain too many characters which look like they're part
of a multi-byte character, and that was overflowing a buffer.
BUG=chromium:417891
LOG=n
.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
607043002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24251
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
loislo@chromium.org [Fri, 26 Sep 2014 11:14:09 +0000 (11:14 +0000)]
String::NewExternal should not crash the renderer.
The blink may pass a very long string to v8
for making a handle to it. v8 has max string length
limit and creates exception. But NewExternal code does not
check that the handle is null and crashes the renderer.
With the fix the js code receives the exception.
BUG=414615
LOG=N
R=yangguo@chromium.org, yurys@chromium.org
Review URL: https://codereview.chromium.org/
603393004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24250
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 26 Sep 2014 10:43:01 +0000 (10:43 +0000)]
Blacklist mjsunit/compare-known-objects-slow as well.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
602373002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24249
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 26 Sep 2014 10:21:16 +0000 (10:21 +0000)]
Whitespace change for testing the new git workflow.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24248
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 26 Sep 2014 10:16:16 +0000 (10:16 +0000)]
Fix resolving svn revisions in release scripts.
BUG=chromium:410721
LOG=n
TEST=script_test.py
R=tandrii@chromium.org
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/
607023002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24247
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 26 Sep 2014 08:55:25 +0000 (08:55 +0000)]
Fix cc feature for upload in merge script.
TBR=ulan@chromium.org
Review URL: https://codereview.chromium.org/
608723002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24246
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 26 Sep 2014 08:39:03 +0000 (08:39 +0000)]
Fix git interface for merge script.
BUG=chromium:410721
LOG=n
TEST=script_test.py
R=tandrii@chromium.org
Review URL: https://codereview.chromium.org/
605943002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24244
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 26 Sep 2014 07:42:32 +0000 (07:42 +0000)]
Whitespace change for testing merge script.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24240
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Fri, 26 Sep 2014 07:40:09 +0000 (07:40 +0000)]
Add new git port to merge_to_branch script.
BUG=chromium:410721
LOG=n
TEST=script_test.py
R=tandrii@chromium.org
Review URL: https://codereview.chromium.org/
604853002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24239
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 26 Sep 2014 07:35:59 +0000 (07:35 +0000)]
[turbofan] Reduce shl with sar/shr and same shift amount to bit-and.
The shl(sar(x, K), K) is a common pattern with typed loads/stores in
asm.js.
TEST=compiler-unittests,mjsunit/asm/int32array-unaligned
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
598083007
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24238
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 26 Sep 2014 06:52:23 +0000 (06:52 +0000)]
[turbofan] Drop obsolete test after r24236.
This was missing from the previous commit.
TBR=jarin@chromium.org
Review URL: https://codereview.chromium.org/
602193005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24237
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Fri, 26 Sep 2014 06:40:07 +0000 (06:40 +0000)]
[turbofan] GraphReducer is more "fixpointish" now.
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
605933002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24236
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Fri, 26 Sep 2014 01:12:13 +0000 (01:12 +0000)]
X87: convert disassembler to use OStream.
port r24214.
original commit message:
convert disassembler to use OStream.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
607723003
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24235
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 25 Sep 2014 15:26:03 +0000 (15:26 +0000)]
Correct bailout from TurboFan for unsupported targets.
R=titzer@chromium.org
TEST=mjsunit/asm/math-fround
Review URL: https://codereview.chromium.org/
603923002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24232
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 25 Sep 2014 14:09:34 +0000 (14:09 +0000)]
Refactoring: Remove unnecessary logic from push_to_trunk.
Remove some svnish things that are output-only.
BUG=chromium:410721
LOG=n
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/
598403003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24231
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 25 Sep 2014 13:36:08 +0000 (13:36 +0000)]
Disable version increment and tagging until after the git migration.
BUG=chromium:410721
LOG=n
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/
609443002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24230
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 25 Sep 2014 13:30:08 +0000 (13:30 +0000)]
Ignore generated JSON files for TurboFan graphs.
R=danno@chromium.org
Review URL: https://codereview.chromium.org/
605733002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24229
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 25 Sep 2014 13:25:14 +0000 (13:25 +0000)]
Refactoring: Extract interface for VC in release scripts.
Also simplify tagging in merge_to_branch.
BUG=chromium:410721
LOG=n
R=jkummerow@chromium.org, tandrii@chromium.org
Review URL: https://codereview.chromium.org/
607463002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24228
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Thu, 25 Sep 2014 13:01:29 +0000 (13:01 +0000)]
[Auto-roll] Bump up version to 3.29.90.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24227
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Thu, 25 Sep 2014 12:57:14 +0000 (12:57 +0000)]
X87: fix the bug which is introduced by R24169.
Two more DeoptimizeIf(...) are added so the branch distance changed.
we need to use Label::kFar.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
598353002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24226
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 25 Sep 2014 12:16:32 +0000 (12:16 +0000)]
Disable merging simulates across captured objects.
BUG=chromium:416730
LOG=N
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
607453002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24225
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 25 Sep 2014 11:28:27 +0000 (11:28 +0000)]
Add myself to CC in merge_to_branch.py
BUG=
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/
603113002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24222
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 25 Sep 2014 11:18:22 +0000 (11:18 +0000)]
Revert part of r24098
BUG=chromium:417508
LOG=y
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
604703006
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24221
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
danno@chromium.org [Thu, 25 Sep 2014 11:13:50 +0000 (11:13 +0000)]
[TurboFan]: Add JSON output for the visualizer
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
599453002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24220
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
ulan@chromium.org [Thu, 25 Sep 2014 10:19:09 +0000 (10:19 +0000)]
Enable FDO for v8 in android build.
R=benm@chromium.org, ulan@chromium.org, torne@chromium.org
TEST=manual
BUG=
Review URL: https://codereview.chromium.org/
598723002
Patch from Dehao Chen <dehao@google.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24219
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 25 Sep 2014 09:33:40 +0000 (09:33 +0000)]
Insert materialized context at the right place in DebugEvaluate.
R=aandrey@chromium.org, ulan@chromium.org
BUG=chromium:323936
LOG=N
Review URL: https://codereview.chromium.org/
599113002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24218
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 25 Sep 2014 08:56:02 +0000 (08:56 +0000)]
[turbofan] Add backend support for Float32Constant.
TEST=cctest,compiler-unittests,mjsunit
BUG=v8:3589
LOG=n
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
600383002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24217
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 25 Sep 2014 08:46:13 +0000 (08:46 +0000)]
Fix auto roll after switching v8 mirror.
BUG=chromium:411835
LOG=n
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/
606553003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24216
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Thu, 25 Sep 2014 08:44:15 +0000 (08:44 +0000)]
Slightly adapt Math.fround test.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
606583002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24215
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dcarney@chromium.org [Thu, 25 Sep 2014 08:33:24 +0000 (08:33 +0000)]
convert disassembler to use OStream
R=svenpanne@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
598703003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24214
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
v8-autoroll@chromium.org [Thu, 25 Sep 2014 08:31:37 +0000 (08:31 +0000)]
[Auto-roll] Bump up version to 3.29.89.0
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24213
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
neis@chromium.org [Thu, 25 Sep 2014 08:31:23 +0000 (08:31 +0000)]
Add some tests about range types.
Add missing tests for context types.
Rearrange some other tests.
Make printing of constant types more useful.
Give counter-examples for properties that no longer hold.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
602613002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24212
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jkummerow@chromium.org [Thu, 25 Sep 2014 08:25:25 +0000 (08:25 +0000)]
Non-JSArrays must always have holey elements.
Drive-by cleanup: remove unused elements_kind_ field in CallNew.
BUG=chromium:416558
LOG=n
R=mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
595333002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24211
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 25 Sep 2014 08:20:58 +0000 (08:20 +0000)]
Fix version increment.
TBR=tandrii@chromium.org
TEST=script_test.py
Review URL: https://codereview.chromium.org/
600383003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24210
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
neis@chromium.org [Thu, 25 Sep 2014 08:04:49 +0000 (08:04 +0000)]
Give more precise types to some Math functions.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
602693002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24209
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
neis@chromium.org [Thu, 25 Sep 2014 08:03:56 +0000 (08:03 +0000)]
Fix argument check in RandomNumberGenerator::NextInt.
R=bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
597993002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24208
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
neis@chromium.org [Thu, 25 Sep 2014 08:03:26 +0000 (08:03 +0000)]
Make type fuzzer return non-standard bitsets too.
(Also speed up some types tests a little.)
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
602553002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24207
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
neis@chromium.org [Thu, 25 Sep 2014 08:02:12 +0000 (08:02 +0000)]
Move union length computation out of loops.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
600713003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24206
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 25 Sep 2014 07:41:25 +0000 (07:41 +0000)]
[turbofan] IA: support better left operand for commutative binops
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
591343002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24205
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 25 Sep 2014 07:32:13 +0000 (07:32 +0000)]
Support large objects in the serializer/deserializer.
R=hpayer@chromium.org, mvstanton@chromium.org
Review URL: https://codereview.chromium.org/
581223004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24204
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Thu, 25 Sep 2014 07:30:18 +0000 (07:30 +0000)]
Switch v8 mirror in version script.
BUG=410721
LOG=n
TBR=tandrii@chromium.org
Review URL: https://codereview.chromium.org/
601103003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24203
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 25 Sep 2014 07:16:15 +0000 (07:16 +0000)]
Move i18n-related runtime functions into a separate file.
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
597943003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24202
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Thu, 25 Sep 2014 07:04:34 +0000 (07:04 +0000)]
Use runtime.h to look for runtime function names.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
597943002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24201
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jochen@chromium.org [Thu, 25 Sep 2014 06:55:06 +0000 (06:55 +0000)]
Only add samples to the idle time undershoot histogram if we actually did gc
BUG=none
R=hpayer@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/
604543002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24200
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 25 Sep 2014 06:37:23 +0000 (06:37 +0000)]
[x64] three operand imul supports first operand in memory location
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
596643003
Patch from Weiliang Lin <weiliang.lin@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24199
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
jarin@chromium.org [Thu, 25 Sep 2014 06:25:10 +0000 (06:25 +0000)]
Improve memory usage in Turbofan.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
602643002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24198
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Thu, 25 Sep 2014 05:17:38 +0000 (05:17 +0000)]
Fix windows build after r24191.
TBR=titzer@chromium.org
Review URL: https://codereview.chromium.org/
604693002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24197
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Thu, 25 Sep 2014 02:55:39 +0000 (02:55 +0000)]
X87: add part of backend support for X87.
port r24179. we add the corresponding function implementation to pass
the compilation.
original commit message:
[turbofan] Add backend support for float32.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
602003002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24196
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
paul.lind@imgtec.com [Wed, 24 Sep 2014 21:16:36 +0000 (21:16 +0000)]
MIPS: Minor fixes and additions needed for Turbofan.
These small changes can be landed indendently to avoid
cluttering up the initial turbofan CL.
BUG=
R=balazs.kilvady@imgtec.com
Review URL: https://codereview.chromium.org/
602603005
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24193
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
balazs.kilvady@imgtec.com [Wed, 24 Sep 2014 16:56:52 +0000 (16:56 +0000)]
MIPS: [turbofan] Add backend support for float32.
Port r24179 (41b81c2)
LOG=n
BUG=v8:3589
TEST=compiler-unittests,cctest
R=paul.lind@imgtec.com
Review URL: https://codereview.chromium.org/
601783002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24192
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 24 Sep 2014 16:04:05 +0000 (16:04 +0000)]
Add tests for representation change of constants.
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
602713002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24191
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Wed, 24 Sep 2014 15:29:00 +0000 (15:29 +0000)]
X87: Refactor bailout reasons and disable optimization in more cases.
port r24161.
original commit message:
Refactor bailout reasons and disable optimization in more cases.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
597913002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24190
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Wed, 24 Sep 2014 15:17:20 +0000 (15:17 +0000)]
X87: fixed branch distances.
port r24151.
original commit message:
Forgot a few kNear occurences, only happens with --deopt-every-n-times.
Death to manual jump distance calculation! :-P
BUG=
R=svenpanne@chromium.org
Review URL: https://codereview.chromium.org/
595263002
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24189
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
m.m.capewell@googlemail.com [Wed, 24 Sep 2014 14:55:50 +0000 (14:55 +0000)]
[turbofan] ARM64 support for inverted logical ops
Select ARM64 inverted rhs instructions (bic, orn, eon) for cases where the rhs
input is inverted (using e/xor), and add some tests for this. Also, rename xor
to eor in the ARM64 backend.
BUG=
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/
591383003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24188
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 24 Sep 2014 14:55:13 +0000 (14:55 +0000)]
Extend JSBuiltinReducer to cover Math.fround as well.
R=bmeurer@chromium.org
TEST=compiler-unittests/JSBuiltinReducerTest.MathFround
Review URL: https://codereview.chromium.org/
594183004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24187
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
aandrey@chromium.org [Wed, 24 Sep 2014 14:52:13 +0000 (14:52 +0000)]
Test case of V8 failing to step into in some cases.
BUG=289497, v8:2888
R=yangguo@chromium.org, yurys@chromium.org
LOG=N
Review URL: https://codereview.chromium.org/
23441070
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24186
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 24 Sep 2014 13:55:29 +0000 (13:55 +0000)]
Fix bug in representation-change.h.
R=jarin@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
598933003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24185
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 24 Sep 2014 13:43:00 +0000 (13:43 +0000)]
Whitespace change to test new chromium deps.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24184
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 24 Sep 2014 13:17:12 +0000 (13:17 +0000)]
Whitespace change to test new chromium deps.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24183
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
machenbach@chromium.org [Wed, 24 Sep 2014 12:47:20 +0000 (12:47 +0000)]
Whitespace change to test new chromium deps.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24182
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 24 Sep 2014 12:01:21 +0000 (12:01 +0000)]
Fix windows build.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24181
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 24 Sep 2014 11:55:07 +0000 (11:55 +0000)]
Add support for Float32 representation changes.
R=bmeurer@chromium.org
BUG=v8:3589
LOG=n
Review URL: https://codereview.chromium.org/
598963002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24180
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 24 Sep 2014 11:08:35 +0000 (11:08 +0000)]
[turbofan] Add backend support for float32.
LOG=n
BUG=v8:3589
TEST=compiler-unittests,cctest
R=titzer@chromium.org
Review URL: https://codereview.chromium.org/
596703004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24179
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
svenpanne@chromium.org [Wed, 24 Sep 2014 10:47:29 +0000 (10:47 +0000)]
Make the detailed reason for deopts mandatory on all platforms.
Boring semi-mechanical stuff...
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
598953002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24178
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mstarzinger@chromium.org [Wed, 24 Sep 2014 10:24:19 +0000 (10:24 +0000)]
Extend JSBuiltinReducer to cover Math.sqrt as well.
R=bmeurer@chromium.org
TEST=compiler-unittests/JSBuiltinReducerTest.MathSqrt
Review URL: https://codereview.chromium.org/
595963002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24177
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
Jacob.Bramley@arm.com [Wed, 24 Sep 2014 10:22:11 +0000 (10:22 +0000)]
[arm64] cleanup heap numbers detection
Make heap numbers detection more consistent on arm64.
All the tested benchmarks (octane2, kraken, sunspider, v8-v4 and lua) are unchanged (a57 and a53).
R=ulan@chromium.org, bmeurer@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
577273002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24176
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
balazs.kilvady@imgtec.com [Wed, 24 Sep 2014 10:17:24 +0000 (10:17 +0000)]
MIPS: Refactor bailout reasons and disable optimization in more cases.
Port r24161 (008f335)
BUG=
R=dusan.milosavljevic@imgtec.com
Review URL: https://codereview.chromium.org/
593313004
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24175
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
mvstanton@chromium.org [Wed, 24 Sep 2014 09:33:04 +0000 (09:33 +0000)]
Fix IC cache confusion on String.prototype.length
BUG=416416
LOG=N
R=jarin@chromium.org
Review URL: https://codereview.chromium.org/
587363002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24174
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 24 Sep 2014 09:32:28 +0000 (09:32 +0000)]
Fix windows build.
TBR=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
598943002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24173
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
bmeurer@chromium.org [Wed, 24 Sep 2014 09:28:56 +0000 (09:28 +0000)]
[turbofan] Add length operand to LoadElement and StoreElement.
This is preliminary work, required to properly support bounds checking for typed array loads/stores.
TEST=compiler-unittests,cctest
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/
602563002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24172
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
titzer@chromium.org [Wed, 24 Sep 2014 08:49:32 +0000 (08:49 +0000)]
Translate NumberDivide/NumberModulus operators to Int32Div, Int32Mod in representation-change.h.
R=mstarzinger@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
597083002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24171
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 24 Sep 2014 08:39:04 +0000 (08:39 +0000)]
Simplify stack trace getter wrt prototype chain walk.
R=dslomov@chromium.org
Review URL: https://codereview.chromium.org/
595253002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24170
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Wed, 24 Sep 2014 08:33:39 +0000 (08:33 +0000)]
X87: Made the detailed reason for deopts mandatory on x87. Unified and improved things.
port r24146.
original commit message:
Made the detailed reason for deopts mandatory on ia32. Unified and improved things.
The number of different detail strings has been reduced a bit without
any loss of information. Furthermore, DoubleToI is a bit more
informative now. Tiny reason fixes.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
597003003
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24169
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
dslomov@chromium.org [Wed, 24 Sep 2014 08:12:58 +0000 (08:12 +0000)]
Change all V8 internal private symbols to be private own symbols.
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/
598603002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24168
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
neis@chromium.org [Wed, 24 Sep 2014 07:33:51 +0000 (07:33 +0000)]
Redesign of the internal type system.
Besides addressing a fundamental flaw, this significantly simplifies
several aspects of the system. The downside is a loss of precision
and a loss of algebraic properties.
Range types are now fully implemented.
R=rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/
558193003
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24163
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
yangguo@chromium.org [Wed, 24 Sep 2014 07:08:27 +0000 (07:08 +0000)]
Refactor bailout reasons and disable optimization in more cases.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/
596783002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24161
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
weiliang.lin@intel.com [Wed, 24 Sep 2014 02:37:53 +0000 (02:37 +0000)]
X87: Removed superfluous deopt for ROR on ia32.
port r24133. On X87 this check should be unnecessary too.
original commit message:
Removed superfluous deopt for ROR on ia32.
We only synthesize a ROR when we have an expression with a toplevel
'|', which returns a signed value by definition, so deopting on
negative values is not needed. ia32 was the only platform where this
was done, all other didn't have the check.
BUG=
R=weiliang.lin@intel.com
Review URL: https://codereview.chromium.org/
589383003
Patch from Chunyang Dai <chunyang.dai@intel.com>.
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24160
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00