Commit Graph

317 Commits

Author SHA1 Message Date
vogelheim
45ce804782 Revert of Default-enable external startup data for Linux for stand-alone builds. (patchset #1 id:1 of https://codereview.chromium.org/956373002/)
Reason for revert:
The CL caused two issues:
- a weird build issue on V8 mips builder
- d8 cannot be invoked via PATH, since then it doesn't find its external snapshot.

The 2nd issue might even be WAI, but this needs more consideration.

Original issue's description:
> Default-enable external startup data for Linux for stand-alone builds.
>
> Notes:
> - Other platforms to follow later.
> - This follows Chromium practice, that mostly uses this feature these days.
> - The statically linked-in startup data will stay. So whoever prefers
>   the old way just needs to set the flag differently.
>
> Reland crrev.com/959693002, once crrev.com/960883003 is in.
>
> R=machenbach@chromium.org
> BUG=
>
> Committed: https://crrev.com/a0bdb103b676b4c7fa6b9f2e7149e716549c05d1
> Cr-Commit-Position: refs/heads/master@{#26980}

TBR=machenbach@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26986}
2015-03-04 13:53:24 +00:00
vogelheim
a0bdb103b6 Default-enable external startup data for Linux for stand-alone builds.
Notes:
- Other platforms to follow later.
- This follows Chromium practice, that mostly uses this feature these days.
- The statically linked-in startup data will stay. So whoever prefers
  the old way just needs to set the flag differently.

Reland crrev.com/959693002, once crrev.com/960883003 is in.

R=machenbach@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26980}
2015-03-04 12:22:01 +00:00
thakis
30b995fc1b When using ninja and clang, make sure diagnostics are colored.
BUG=none
LOG=N

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

Cr-Commit-Position: refs/heads/master@{#26976}
2015-03-04 05:56:13 +00:00
dcarney
99edffd9a4 ensure host compiler is always clang when cross compiling from linux
BUG=

Committed: https://crrev.com/56039af476797accc238dcb24c7ab926899287a0
Cr-Commit-Position: refs/heads/master@{#26881}

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

Cr-Commit-Position: refs/heads/master@{#26915}
2015-02-27 13:25:09 +00:00
vogelheim
8db3ce1dba Revert of Default-enable external startup data for Linux for stand-alone builds. (patchset #1 id:1 of https://codereview.chromium.org/959693002/)
Reason for revert:
Breaks "Simple Leaks Check"

Original issue's description:
> Default-enable external startup data for Linux for stand-alone builds.
>
> Notes:
> - Other platforms to follow later.
> - This follows Chromium practice, that mostly uses this feature these days.
> - The statically linked-in startup data will stay. So whoever prefers
>   the old way just needs to set the flag differently.
>
> BUG=
>
> Committed: https://crrev.com/6d0dcaabe55ca3556bebfd771fbc7fd560fdd4e0
> Cr-Commit-Position: refs/heads/master@{#26884}

TBR=machenbach@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26885}
2015-02-26 15:10:20 +00:00
vogelheim
6d0dcaabe5 Default-enable external startup data for Linux for stand-alone builds.
Notes:
- Other platforms to follow later.
- This follows Chromium practice, that mostly uses this feature these days.
- The statically linked-in startup data will stay. So whoever prefers
  the old way just needs to set the flag differently.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#26884}
2015-02-26 14:55:27 +00:00
dcarney
6517181c49 Revert of ensure host compiler is always clang when cross compiling from linux (patchset #6 id:100001 of https://codereview.chromium.org/955393002/)
Reason for revert:
broke some things

Original issue's description:
> ensure host compiler is always clang when cross compiling from linux
>
> BUG=
>
> Committed: https://crrev.com/56039af476797accc238dcb24c7ab926899287a0
> Cr-Commit-Position: refs/heads/master@{#26881}

TBR=machenbach@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26882}
2015-02-26 14:43:55 +00:00
dcarney
56039af476 ensure host compiler is always clang when cross compiling from linux
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26881}
2015-02-26 14:40:24 +00:00
machenbach
03cef94a49 Make landmines delete all generated build artifacts.
BUG=chromium:403263
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26877}
2015-02-26 12:39:48 +00:00
bmeurer
166dcd339f [gyp] Disable warnings generated by third party ICU code.
R=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26871}
2015-02-26 08:19:32 +00:00
machenbach
b00ff50d52 Clobber output directory on linux and mac after landmine.
Xcode uses a different naming scheme for directories within
the xcodebuild directory. But it is safe to just delete
everything withing xcodebuild or out. Keep the soft clobber
for windows' build directory only, where subdirectories
follow the *release* and *debug* naming scheme.

BUG=chromium:403263
LOG=n
TBR=jochen@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26852}
2015-02-25 14:16:40 +00:00
machenbach
0fff64da8b Trigger a landmine on first-time landmine deployment.
Without this change, it is non-trivial to know during
runhooks, if a landmine was just triggered in a checkout
that doesn't have the initial landmines script CL yet, i.e.
that didn't create a .landmines file yet.

BUG=chromium:403263
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26842}
2015-02-25 09:20:04 +00:00
machenbach
89731cfbf8 Port chromium landmines script.
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}
2015-02-24 16:57:47 +00:00
bmeurer
b951384887 [linux] Use _GLIBCXX_DEBUG in Debug builds by default for better checking.
The _GLIBCXX_DEBUG macro is now set by default for Linux Debug builds
and can be disabled using the disable_glibcxx_debug=1 setting
(compatible with Chrome).  This will help us catch problems earlier.

BUG=v8:3638
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26790}
2015-02-23 06:13:57 +00:00
svetozar.janjic
2bf2d4d9b6 MIPS: Silence warnings and unbreak optdebug build for target.
This is a temporary workaround for bogus array-bounds warning, due to bug in MIPS toolchain versions 4.8.2 and 4.9.2.

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56273

TEST=
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26756}
2015-02-19 18:25:52 +00:00
Michael Achenbach
59c55842b8 Revert "Whitespace CL to test poller."
This reverts commit f27de256c1.

Cr-Commit-Position: refs/heads/master@{#26552}
2015-02-10 17:01:14 +00:00
Michael Achenbach
f27de256c1 Whitespace CL to test poller.
Cr-Commit-Position: refs/heads/master@{#26548}
2015-02-10 16:03:58 +00:00
bmeurer
e06dc0569a [linux] Improve link time with Chromium-bundled binutils.
Also enabled concurrent linking with gold on Linux.

Mostly copy and paste from Chromium with customization for
V8 where necessary.

BUG=v8:3880
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26536}
2015-02-10 07:27:13 +00:00
michael_dawson
f1ba8d8f86 Contribution of PowerPC port (continuation of 422063005) - AIX Common1
Contribution of PowerPC port (continuation of 422063005 and 817143002). This patch covers
the key changes needed to the common files needed to support AIX. Subsequent
patches will cover:
- changes to update the ppc directories so they are current with the changes
in the rest of the project.
- remaining AIX changes not resolved by 4.8 compiler
- individual optimizations for PPC

This is based off of the GitHub repository
https://github.com/andrewlow/v8ppc

R=danno@chromium.org, svenpanne@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26343}
2015-01-30 08:02:08 +00:00
machenbach
5577dbdcf1 Remove version generation approach.
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}
2015-01-23 10:45:39 +00:00
machenbach
9ae1c2382a Make version generation robust to other user-defined tags.
BUG=chromium:446166
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26224}
2015-01-22 15:06:57 +00:00
bmeurer
8d30c452bb Try to fix AOSP builder.
NOTREECHECKS=true

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

Cr-Commit-Position: refs/heads/master@{#26215}
2015-01-22 09:30:27 +00:00
bmeurer
2620f7604a Fix ninja build with clang=1.
Review URL: https://codereview.chromium.org/862313002

Cr-Commit-Position: refs/heads/master@{#26211}
2015-01-22 07:21:52 +00:00
machenbach
4cc852685f Reland Make clang the default on linux.
TBR=jochen@chromium.org,jkummerow@chromium.org
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26206}
2015-01-21 22:25:05 +00:00
machenbach
b0ea0810c6 Revert of Reland Make clang the default on linux. (patchset #3 id:40001 of https://codereview.chromium.org/861223002/)
Reason for revert:
Still missing these builders:
http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm%20-%20sim
http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm%20-%20sim%20-%20debug
http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20full%20debug

Original issue's description:
> Reland Make clang the default on linux.
>
> BUG=
>
> Committed: https://crrev.com/72ef6843b0aff68e519a8f26e7d2f7dd87b4712c
> Cr-Commit-Position: refs/heads/master@{#26204}

TBR=jochen@chromium.org,jkummerow@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26205}
2015-01-21 20:38:32 +00:00
machenbach
72ef6843b0 Reland Make clang the default on linux.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#26204}
2015-01-21 19:32:12 +00:00
machenbach
6024d24866 Properly configure goma.
Everything is c/p from common.gypi.

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

Cr-Commit-Position: refs/heads/master@{#26198}
2015-01-21 15:30:28 +00:00
machenbach
c6641e138b Restrict tag-update for version generation to cached git repos.
Otherwise it's impossible to compile v8 without internet
connection.

BUG=chromium:446166
LOG=n
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26186}
2015-01-21 13:02:39 +00:00
Benedikt Meurer
9eace97bba Use signaling NaN for holes in fixed double arrays.
TEST=mjsunit,cctest,unittests
R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26180}
2015-01-21 08:52:25 +00:00
machenbach
ea6831e9de Ensure tags are fetched when generating the V8 version.
This is needed so that version generation works after
bot_update fetched v8 in a chromium checkout.

TBR=tandrii@chromium.org
BUG=chromium:446166
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26177}
2015-01-21 08:00:20 +00:00
machenbach
e26627e8da Don't use -O3 with sanitizers.
BUG=chromium:430614
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#26169}
2015-01-20 16:07:22 +00:00
jochen
3fd5b96f3b Revert of Make clang the default on linux. (patchset #2 id:20001 of https://codereview.chromium.org/781983002/)
Reason for revert:
breaks arm and mips compilation on main waterfall

Original issue's description:
> Make clang the default on linux.
>
> TBR=jochen@chromium.org
>
> Committed: https://crrev.com/006b5c5cfd8517563601f331bc7a57e13bfeb202
> Cr-Commit-Position: refs/heads/master@{#26164}

TBR=machenbach@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26166}
2015-01-20 15:15:28 +00:00
machenbach
006b5c5cfd Make clang the default on linux.
TBR=jochen@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26164}
2015-01-20 15:01:09 +00:00
bmeurer
655b112466 [ia32] Require SSE2.
This way we stay in sync with what Chromium does and we reduce the
number of bugs caused by 80-to-{32,64}-bit rounding errors. It's also
a requirement for switching to signaling NaN for FixedDoubleArray holes.

R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26154}
2015-01-20 12:53:51 +00:00
machenbach
0707afc863 Partially reland Auto-generate v8 version based on tags.
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}
2015-01-19 16:23:39 +00:00
Sven Panne
e4c5b84652 Contribution of PowerPC port (continuation of 422063005)
Contribution of PowerPC port (continuation of 422063005). The inital patch
covers the core changes to the common files.  Subsequent patches will cover
changes to common files to support AIX and to update the ppc directories so
they are current with the changes in the rest of the project.

This is based off of the GitHub repository
https://github.com/andrewlow/v8ppc

BUG=
R=svenpanne@chromium.org, danno@chromium.org, sevnpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26091}
2015-01-16 07:42:15 +00:00
jochen
dfdc8ca12e Remove unused iossim setting from mac asan config
R=glider@chromium.org
LOG=n
BUG=none
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#26023}
2015-01-12 12:25:17 +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
jochen
77e3e48ee2 Introduce a gyp variable to control whether or not slow dchecks are on
The default for the various debug modes doesn't change.

In a follow-up, OptDebug1 and OptDebug2 will be merged

R=machenbach@chromium.org
LOG=y
BUG=none

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

Cr-Commit-Position: refs/heads/master@{#26015}
2015-01-09 16:25:51 +00:00
jochen
8216f1bc7c Add ASAN and TSAN support for Mac
BUG=none
LOG=n
R=machenbach@chromium.org,glider@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26013}
2015-01-09 13:38:25 +00:00
jochen
0959123e57 Remove "extra checks"
Instead, just use DCHECKs. The builders that want them in release mode
should already be useding dcheck_always_on anyways

BUG=none
R=machenbach@chromium.org
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#26001}
2015-01-08 16:29:39 +00:00
jochen
bbe8b00d6a Don't pass -pie when building a shared library build on android
BUG=none
R=ulan@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#25938}
2014-12-23 19:23:03 +00:00
jochen
333a92bd5e Define SDKROOT for Mac
otherwise, the clang we ship doesn't work

BUG=none
R=adamk@chromium.org,thakis@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#25893}
2014-12-18 20:42:46 +00:00
svenpanne
71bb00e261 Consistently use only one of virtual/OVERRIDE/FINAL.
FINAL implies OVERRIDE, which in turn implies virtual, so there's no need to use
more than one of these. The Google C++ style guide even requires this, see
http://google-styleguide.googlecode.com/svn/trunk/cppguide.html#Inheritance.

While we're here, port r24662 to x87.

The net result is that v8 compiles again with a current clang.

BUG=v8:3753
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#25792}
2014-12-12 10:44:25 +00:00
jochen
b0f9ac831d Temporarily remove warning about inconsistent overrides
Otherwise, V8 won't compile with the latest clang anymore

BUG=v8:3753
R=machenbach@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#25788}
2014-12-11 19:10:45 +00:00
mostynb
68870ab6ee move v8_use_external_startup_data to standalone.gypi
This allows the setting to be overridable by embedders,
at the cost of forcing embedders that don't build v8
using standalone.gypi to add this setting to their build
config.

BUG=chromium:421063
LOG=Y

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

Cr-Commit-Position: refs/heads/master@{#25781}
2014-12-11 15:27:44 +00:00
jochen
93f3531051 Really enable DEBUG code on android unless full debug is specified
R=machenbach@chromium.rg
LOG=n
BUG=none
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#25721}
2014-12-09 11:32:36 +00:00
jochen
97c1f4b15c Turn on DCHECKs and other debugging code if dcheck_always_on is 1
When compiling with the macro DCHECK_ALWAYS_ON defined, DCHECKs and
supporting code gets compiled and enabled.

This increases test coverage for chromium release buildbots

BUG=v8:3731
R=jkummerow@chromium.org
LOG=y

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

Cr-Commit-Position: refs/heads/master@{#25701}
2014-12-08 09:26:16 +00:00
ulan
1fb3932221 Android ARM: enable PIE.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#25584}
2014-12-01 14:06:28 +00:00
machenbach
01be1b0084 Set clang directory in gyp.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#25553}
2014-11-27 17:18:12 +00:00