Fix optimistic BCE to back off after deopt

BUG=v8:3176
LOG=n
R=danno@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19530 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Lazy preparsing vs. lazy parsing fix.

Preparsing is always maximally lazy (every function that can be lazy is preparsed
lazily), but Parser has more complicated laziness logic.

If we're going to parse eagerly, and we have preparse data from lazy preparsing,
we're gonna have a bad time. The symbol stream won't contain symbols inside lazy
functions, and when the Parser parses them eagerly, it will consume symbols from
the symbol stream, and everything will go wrong.

This bug was hidden because the symbol cache was not used for real (see
https://codereview.chromium.org/172753002/ ).

R=ulan@chromium.org
BUG=346207
LOG=Y

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19532 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
negative bounds checking on realm calls

R=rossberg@chromium.org

LOG=N

BUG=344285

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19533 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Check that after a weak callback, the handle is either dead or strong

BUG=346061
R=dcarney@chromium.org
LOG=y

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19534 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix for a smi stores optimization on x64 with a regression test.

BUG=345715
LOG=N
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19535 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Don't eliminate loads with incompatible types or representations.

BUG=346343
LOG=y
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19536 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert r19455 "Load target types and handlers before IC computation."

It caused performance regression in dromaeo/jslib.

BUG=346149
LOG=Y
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19537 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix the bit massaging code in CompleteParserRecorder::WriteNumber.

The original code, added by
https://codereview.chromium.org/3384003/diff/7001/src/parser.cc 3.5 years ago,
failed to write numbers which contain a chunk of 7 zeroes in the middle. The
smallest such number is 2^14, so this is a problem if the source file to
preparse contains 16384 or more symbols (which happens in the wild).

This bug went unnoticed because the symbol data was not used by Parser (see
https://codereview.chromium.org/172753002/ for starting to use it again) and
there were no tests.

R=ulan@chromium.org
BUG=346221
LOG=y

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19538 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix crasher in Object.getOwnPropertySymbols

R=arv@chromium.org, mstarzinger@chromium.org
BUG=346141
LOG=Y

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19539 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert r19430, r19459:
"Reland "Allow ICs to be generated for own global proxy.""

Causing ClusterFuzz crash (issue 343928)

TBR=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19540 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Prepare push to trunk.  Now working on version 3.25.3.

R=danno@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19541 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Crash like chrome.  Currently, most chrome crashes do not yield useful stack traces as v8 does a silent abort and chrome's crash symbolization does not kick in.

R=svenpanne@chromium.org

BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19544 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Mark HCompareMap as having Tagged representation

BUG=chromium:346636
LOG=y
R=svenpanne@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19545 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Re-evaluate marking bits of a descriptor array when it gets replaced.

BUG=340254
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19546 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Follow up to r19538: Bump preparse data version number.

r19538 changes the preparse data format, so this is probably a good idea.

R=ulan@chromium.org
BUG=

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19547 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Revert "Use stability to only conditionally flush information from the CheckMaps table."

R=ishell@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19548 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Fix for failing asserts in HBoundsCheck code generation on x64: index register should be zero extended.

BUG=345820
LOG=N
R=verwaest@chromium.org

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19549 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
Add vi swap files to .gitignore

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

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19559 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
A64: Decoder should not inherit from DecoderVisitor

BUG=none
R=ulan@chromium.org, rodolph.perfetta@arm.com
LOG=n

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

git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@19560 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
A64: Move the dispatching logic of the decoder to a separate class.

BUG=none
R=ulan@chromium.org, rodolph.perfetta@arm.com
LOG=n

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

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