platform/upstream/v8.git
9 years agoString::NewExternal should not crash the renderer.
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

9 years agoBlacklist mjsunit/compare-known-objects-slow as well.
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

9 years agoWhitespace change for testing the new git workflow.
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

9 years agoFix resolving svn revisions in release scripts.
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

9 years agoFix cc feature for upload in merge script.
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

9 years agoFix git interface for merge script.
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

9 years agoWhitespace change for testing merge script.
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

9 years agoAdd new git port to merge_to_branch script.
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

9 years ago[turbofan] Reduce shl with sar/shr and same shift amount to bit-and.
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

9 years ago[turbofan] Drop obsolete test after r24236.
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

9 years ago[turbofan] GraphReducer is more "fixpointish" now.
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

9 years agoX87: convert disassembler to use OStream.
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

9 years agoCorrect bailout from TurboFan for unsupported targets.
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

9 years agoRefactoring: Remove unnecessary logic from push_to_trunk.
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

9 years agoDisable version increment and tagging until after the git migration.
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

9 years agoIgnore generated JSON files for TurboFan graphs.
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

9 years agoRefactoring: Extract interface for VC in release scripts.
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

9 years ago[Auto-roll] Bump up version to 3.29.90.0
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

9 years agoX87: fix the bug which is introduced by R24169.
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

9 years agoDisable merging simulates across captured objects.
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

9 years agoAdd myself to CC in merge_to_branch.py
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

9 years agoRevert part of r24098
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

9 years ago[TurboFan]: Add JSON output for the visualizer
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

9 years agoEnable FDO for v8 in android build.
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

9 years agoInsert materialized context at the right place in DebugEvaluate.
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

9 years ago[turbofan] Add backend support for Float32Constant.
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

9 years agoFix auto roll after switching v8 mirror.
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

9 years agoSlightly adapt Math.fround test.
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

9 years agoconvert disassembler to use OStream
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

9 years ago[Auto-roll] Bump up version to 3.29.89.0
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

9 years agoAdd some tests about range types.
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

9 years agoNon-JSArrays must always have holey elements.
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

9 years agoFix version increment.
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

9 years agoGive more precise types to some Math functions.
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

9 years agoFix argument check in RandomNumberGenerator::NextInt.
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

9 years agoMake type fuzzer return non-standard bitsets too.
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

9 years agoMove union length computation out of loops.
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

9 years ago[turbofan] IA: support better left operand for commutative binops
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

9 years agoSupport large objects in the serializer/deserializer.
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

9 years agoSwitch v8 mirror in version script.
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

9 years agoMove i18n-related runtime functions into a separate file.
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

9 years agoUse runtime.h to look for runtime function names.
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

9 years agoOnly add samples to the idle time undershoot histogram if we actually did gc
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

9 years ago[x64] three operand imul supports first operand in memory location
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

9 years agoImprove memory usage in Turbofan.
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

9 years agoFix windows build after r24191.
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

9 years agoX87: add part of backend support for X87.
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

9 years agoMIPS: Minor fixes and additions needed for Turbofan.
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

9 years agoMIPS: [turbofan] Add backend support for float32.
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

9 years agoAdd tests for representation change of constants.
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

9 years agoX87: Refactor bailout reasons and disable optimization in more cases.
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

9 years agoX87: fixed branch distances.
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

9 years ago[turbofan] ARM64 support for inverted logical ops
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

9 years agoExtend JSBuiltinReducer to cover Math.fround as well.
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

9 years agoTest case of V8 failing to step into in some cases.
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

9 years agoFix bug in representation-change.h.
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

9 years agoWhitespace change to test new chromium deps.
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

9 years agoWhitespace change to test new chromium deps.
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

9 years agoWhitespace change to test new chromium deps.
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

9 years agoFix windows build.
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

9 years agoAdd support for Float32 representation changes.
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

9 years ago[turbofan] Add backend support for float32.
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

9 years agoMake the detailed reason for deopts mandatory on all platforms.
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

9 years agoExtend JSBuiltinReducer to cover Math.sqrt as well.
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

9 years ago[arm64] cleanup heap numbers detection
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

9 years agoMIPS: Refactor bailout reasons and disable optimization in more cases.
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

9 years agoFix IC cache confusion on String.prototype.length
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

9 years agoFix windows build.
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

9 years ago[turbofan] Add length operand to LoadElement and StoreElement.
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

9 years agoTranslate NumberDivide/NumberModulus operators to Int32Div, Int32Mod in representatio...
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

9 years agoSimplify stack trace getter wrt prototype chain walk.
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

9 years agoX87: Made the detailed reason for deopts mandatory on x87. Unified and improved things.
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

9 years agoChange all V8 internal private symbols to be private own symbols.
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

9 years agoRedesign of the internal type system.
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

9 years agoRefactor bailout reasons and disable optimization in more cases.
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

9 years agoX87: Removed superfluous deopt for ROR on ia32.
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

9 years ago[Auto-roll] Bump up version to 3.29.86.0
v8-autoroll@chromium.org [Tue, 23 Sep 2014 18:01:37 +0000 (18:01 +0000)]
[Auto-roll] Bump up version to 3.29.86.0

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24156 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoRefactoring: Remove global configs in release scripts.
machenbach@chromium.org [Tue, 23 Sep 2014 14:41:36 +0000 (14:41 +0000)]
Refactoring: Remove global configs in release scripts.

TBR=tandrii@chromium.org
TEST=script_test.py

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24154 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years ago[Auto-roll] Bump up version to 3.29.85.0
v8-autoroll@chromium.org [Tue, 23 Sep 2014 14:31:32 +0000 (14:31 +0000)]
[Auto-roll] Bump up version to 3.29.85.0

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24153 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoPreserve message when rethrowing exception
yangguo@chromium.org [Tue, 23 Sep 2014 14:29:45 +0000 (14:29 +0000)]
Preserve message when rethrowing exception

A new message was always generated if there is a the top-most verbose
TryCatch, even when rethrowing an exception from a TryCatch that is going
out of scope, and we already have a message.

BUG=v8:3583
LOG=Y
R=yangguo@chromium.org

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

Patch from Jens Widell <jl@opera.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24152 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoFixed branch distances.
svenpanne@chromium.org [Tue, 23 Sep 2014 14:06:54 +0000 (14:06 +0000)]
Fixed branch distances.

Forgot a few kNear occurences, only happens with --deopt-every-n-times.
Death to manual jump distance calculation! :-P

TBR=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24151 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoFix Makefile regeneration for compiler-unittests.
mstarzinger@chromium.org [Tue, 23 Sep 2014 11:44:31 +0000 (11:44 +0000)]
Fix Makefile regeneration for compiler-unittests.

R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoMove test for reduction of Math.max to unittest.
mstarzinger@chromium.org [Tue, 23 Sep 2014 11:40:00 +0000 (11:40 +0000)]
Move test for reduction of Math.max to unittest.

R=bmeurer@chromium.org
TEST=compiler-unittests/JSBuiltinReducerTest.MathMax

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24147 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoMade the detailed reason for deopts mandatory on ia32. Unified and improved things.
svenpanne@chromium.org [Tue, 23 Sep 2014 11:38:12 +0000 (11:38 +0000)]
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.

R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24146 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoRemove temporary work-around for PDFium
jochen@chromium.org [Tue, 23 Sep 2014 11:32:41 +0000 (11:32 +0000)]
Remove temporary work-around for PDFium

BUG=none
R=bmeurer@chromium.org, svenpanne@chromium.org
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24145 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoMove test for reduction of Math.imul to unittest.
mstarzinger@chromium.org [Tue, 23 Sep 2014 11:26:49 +0000 (11:26 +0000)]
Move test for reduction of Math.imul to unittest.

R=bmeurer@chromium.org
TEST=compiler-unittests/JSBuiltinReducerTest.MathImul

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24144 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoRefactoring: Remove more legacy from release scripts.
machenbach@chromium.org [Tue, 23 Sep 2014 09:35:49 +0000 (09:35 +0000)]
Refactoring: Remove more legacy from release scripts.

- Remove an unused feature that allowed to check for required
  data before each script step.
- Use a relative path to the version file. In the production
  environment, this will point to the cwd/version_file, while
  in the test environment it is fake_cwd/version_file.

TBR=tandrii@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24140 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoFix method dispatch in Keyed/StoreIC, and JumpIfNotUniqueName usage
jkummerow@chromium.org [Tue, 23 Sep 2014 09:20:36 +0000 (09:20 +0000)]
Fix method dispatch in Keyed/StoreIC, and JumpIfNotUniqueName usage

R=ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24139 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years ago[Turbofan] Insert nops for lazy bailout patching, fix translation of literals.
jarin@chromium.org [Tue, 23 Sep 2014 08:46:18 +0000 (08:46 +0000)]
[Turbofan] Insert nops for lazy bailout patching, fix translation of literals.

The code for EnsureSpaceForLazyDeopt is taken from lithium-codegen-*.

BUG=
R=bmeurer@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24138 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoExtend JSBuiltinReducer to cover Math.max as well.
mstarzinger@chromium.org [Tue, 23 Sep 2014 08:16:54 +0000 (08:16 +0000)]
Extend JSBuiltinReducer to cover Math.max as well.

R=svenpanne@chromium.org
TEST=cctest/test-js-typed-lowering/BuiltinMathMax

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24135 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoAdd a PRESUBMIT check that production code does not call test code
jochen@chromium.org [Tue, 23 Sep 2014 08:14:06 +0000 (08:14 +0000)]
Add a PRESUBMIT check that production code does not call test code

This is based on a regular expression matching anything in a namespace
ending in test, or a method containing the words ForTest, ForTesting,
for_test, or for_testing.

It is possible to blacklist entire directories or individual files.

BUG=none
LOG=n
R=mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24134 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoRemoved superfluous deopt for ROR on ia32.
svenpanne@chromium.org [Tue, 23 Sep 2014 08:06:00 +0000 (08:06 +0000)]
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.

R=ulan@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24133 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoForcibly inline bit_cast when building with GCC.
bmeurer@chromium.org [Tue, 23 Sep 2014 06:30:15 +0000 (06:30 +0000)]
Forcibly inline bit_cast when building with GCC.

R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24130 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoX87: Further improve deopt reason output
weiliang.lin@intel.com [Tue, 23 Sep 2014 03:55:35 +0000 (03:55 +0000)]
X87: Further improve deopt reason output

port r24123.  R24123 does not cover all required code change in X87.

original commit message:
   Further improve deopt reason output.
   * Make the detailed deopt reason mandatory on x64, other platforms will
     follow in separate CLs.

   * Extracted and improved jump table entry sharing logic: When --trace-deopt
     is on, we get separate entries for different deopt reasons. This enables
     us to distinguish the several reasons single instructions can have.

   * Don't emit superfluous jump table comments: The bailout ID is still visible,
     and the jump table entry number is not interesting (but easy to determine
     if really needed).

   * Unify the internal name of the jump table member across platforms.

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24129 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoX87: Make KeyedLoads from a sloppy arguments array use a handler.
weiliang.lin@intel.com [Tue, 23 Sep 2014 03:44:35 +0000 (03:44 +0000)]
X87: Make KeyedLoads from a sloppy arguments array use a handler.

port r24120.

original commit message:
   Make KeyedLoads from a sloppy arguments array use a handler.
   Before, a custom stub was installed

BUG=
R=weiliang.lin@intel.com

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

Patch from Chunyang Dai <chunyang.dai@intel.com>.

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24128 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoAdd histogram timers for (de-)serialization during compilation.
vogelheim@chromium.org [Mon, 22 Sep 2014 17:19:19 +0000 (17:19 +0000)]
Add histogram timers for (de-)serialization during compilation.

R=yangguo@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24127 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoMIPS: Make KeyedLoads from a sloppy arguments array use a handler.
balazs.kilvady@imgtec.com [Mon, 22 Sep 2014 16:08:49 +0000 (16:08 +0000)]
MIPS: Make KeyedLoads from a sloppy arguments array use a handler.

Port r24120 (eed5963)

Original commit message:
Before, a custom stub was installed.

BUG=
R=paul.lind@imgtec.com

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24126 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoFix escaped index JSON parsing
verwaest@chromium.org [Mon, 22 Sep 2014 15:21:19 +0000 (15:21 +0000)]
Fix escaped index JSON parsing

BUG=416449
LOG=y
R=yangguo@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24125 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoSimplify synthetic roots creation in heap snapshot
yurys@chromium.org [Mon, 22 Sep 2014 14:40:59 +0000 (14:40 +0000)]
Simplify synthetic roots creation in heap snapshot

The synthetic roots exist in every snapshot and there are no actual objects corresponding to them (there was attempt to create some virtual objects to reuse existing snapshot builder but it just complicated the things).

Previously synthetic root wouldn't have been added if it was empty. Current implementation always adds all synthetic roots in the snapshot no matter if they are empty or not.

BUG=None
LOG=N
R=alph@chromium.org, mstarzinger@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24124 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

9 years agoFurther improve deopt reason output.
svenpanne@chromium.org [Mon, 22 Sep 2014 14:16:38 +0000 (14:16 +0000)]
Further improve deopt reason output.

* Make the detailed deopt reason mandatory on x64, other platforms
  will follow in separate CLs.

* Extracted and improved jump table entry sharing logic: When
  --trace-deopt is on, we get separate entries for different deopt
  reasons. This enables us to distinguish the several reasons single
  instructions can have.

* Don't emit superfluous jump table comments: The bailout ID is still
  visible, and the jump table entry number is not interesting (but
  easy to determine if really needed).

* Unify the internal name of the jump table member across platforms.

R=jarin@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24123 ce2b1a6d-e550-0410-aec6-3dcde31c8c00