This ports some code from chromium for using the bundled
toolchain.
BUG=chromium:548586
LOG=n
Review URL: https://codereview.chromium.org/1237803003
Cr-Commit-Position: refs/heads/master@{#31706}
For..in introduces 3 new bytecodes ForInPrepare, ForInNext, and
ForInDone to start a for..in loop, get the next element, and check if
the loop is done.
For..in builds upon new LoopBuilder constructs for conditionally
breaking and continuing during iteration: BreakIf{Null|Undefined}
and ContinueIf{Null|Undefined}. New conditional jump bytecodes
support this succinctly: JumpIfNull and JumpIfUndefined.
Add missing check to BytecodeLabel that could allow multiple
forward referencess to the same label which is not supported.
BUG=v8:4280
LOG=N
Review URL: https://codereview.chromium.org/1422033002
Cr-Commit-Position: refs/heads/master@{#31651}
Adding CHECKED_OUT_VERSION in test/simdjs so that
the bots don't revert and redownload each time.
LOG=N
BUG=None
TEST=None
R=littledan@chromium.org,machenbach@chromium.org
Review URL: https://codereview.chromium.org/1242863003
Cr-Commit-Position: refs/heads/master@{#29826}
This runs the landmines script as a gclient hook. It can
as such be used to clobber local checkouts when hooks are
run locally.
It is a softer version than chromium's landmines script, as
it only deletes directories in the output directory due
to compatibility with MSVS which has "build" hardcoded as
output directory in several places.
BUG=chromium:403263
LOG=n
Review URL: https://codereview.chromium.org/955463002
Cr-Commit-Position: refs/heads/master@{#26831}
Revert "Partially reland Auto-generate v8 version based on tags."
This reverts commit 0707afc863.
Revert "Ensure tags are fetched when generating the V8 version."
This reverts commit ea6831e9de.
Revert "Restrict tag-update for version generation to cached git repos."
This reverts commit c6641e138b.
BUG=chromium:446166
LOG=n
Review URL: https://codereview.chromium.org/866263005
Cr-Commit-Position: refs/heads/master@{#26244}
This relands parts of
https://codereview.chromium.org/843913009
It prepares for using this script outside of v8, e.g. in a
chromium hook.
The script is intended to run as a hook and will create
version_gen.cc if the content has changed.
Changes to gyp and gn files can land as a follow up, once
calling the hook on the chromium side has landed.
BUG=chromium:446166
LOG=n
Review URL: https://codereview.chromium.org/830093003
Cr-Commit-Position: refs/heads/master@{#26144}
This relands the CL
https://codereview.chromium.org/797503007/.
It runs the version generation two times. First during
runhooks as a fallback for recipes that loose git context
(e.g. android_aosp). Second during compilation like in the
original CL. In case of failures, the result from the
runhooks call will be reused.
BUG=chromium:446166
LOG=n
Review URL: https://codereview.chromium.org/843913009
Cr-Commit-Position: refs/heads/master@{#26120}
Still requires changes to gyp files to select the built-in clang as
compiler and make clang the default on the platforms we want it.
BUG=
R=dcarney@chromium.org,machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/745963005
Cr-Commit-Position: refs/heads/master@{#25538}
This CL makes several changes to the scheduling algorithm to handle control
flow that is not connected to End. Such control nodes constitute "floating
control islands" that must be linearized by the schedule. This is done
by considering such nodes to be schedulable, and then editing the control
dependencies after a first pass of scheduling. Then a subsequent pass of
scheduling will place all nodes correctly into the fully connected graph.
R=mstarzinger@chromium.org, rossberg@chromium.org
BUG=
Review URL: https://codereview.chromium.org/499363002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23411 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
* Changes for 2.9:
* Use CXX in Makefile instead of hardwired g++, we need a more
modern GCC than 4.6 later, anyway.
* Changes for 3.0:
* Use llvm namespace.
* Diagnostic => DiagnosticsEngine.
* Changes for 3.1:
* The BlockDeclRefExpr AST node is gone.
* The structure of the CXXNewExpr AST node has changed.
* Path changed from Release to Release+Asserts.
* Use clang++ instead of -cc1, otherwise we lose the system include
paths.
* Changes for 3.2:
none needed
* Changes for 3.3:
* Use lookup_iterator::begin/end instead of first/second.
* Changes for 3.4:
* createItaniumMangleContext => ItaniumMangleContext::create.
* Changes for 3.5:
* clang uses <type_traits> now, so -std=c++0x is needed.
* Type-trait-related AST changes.
* getCustomDiagID signature changed.
* We must link the C++ library statically now.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/445983002
git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22972 ce2b1a6d-e550-0410-aec6-3dcde31c8c00