Commit Graph

340 Commits

Author SHA1 Message Date
jochen
29deaef505 Introduce a new gyp flag to warn about to be deprecated APIs
This should help to keep syntax errors from creeping into v8.h

Also, I'll remove usages of to-be-deprecated APIs and turn this flag on
for standalone builds

BUG=4134
R=vogelheim@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#28538}
2015-05-21 10:34:22 +00:00
yangguo
9a1490ad6f Introduce extras export object.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28499}
2015-05-20 07:38:04 +00:00
martyn.capewell
cdc43bc5fd ARM64: Enable shorten-64-to-32 warning
Enable clang's shorten-64-to-32 warning flag on ARM64, and fix the warnings
that arise.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#28412}
2015-05-15 05:13:11 +00:00
machenbach
19a28dcefd Revert of Add the concept of a V8 extras exports object (patchset #5 id:80001 of https://codereview.chromium.org/1128113006/)
Reason for revert:
[Sheriff] Causes gc stress failures:
http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20gc%20stress/builds/2167

Original issue's description:
> Add the concept of a V8 extras exports object
>
> Exposed to the extras as extrasExports (on the builtins object), on
> which they can put things that should be accessible from C++. Exposed
> to C++ through the V8 API as v8::Context::GetExtrasExportsObject().
>
> Adding a test (in test-api.cc) required adding a simple extra,
> test-extra.js, which we build into the standalone builds.
>
> R=yangguo@chromium.org, jochen@chromium.org
> BUG=
>
> Committed: https://crrev.com/ad547cea05f3e02c67243b682e933fc53ac763d9
> Cr-Commit-Position: refs/heads/master@{#28317}

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

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

Cr-Commit-Position: refs/heads/master@{#28332}
2015-05-11 08:19:58 +00:00
domenic
ad547cea05 Add the concept of a V8 extras exports object
Exposed to the extras as extrasExports (on the builtins object), on
which they can put things that should be accessible from C++. Exposed
to C++ through the V8 API as v8::Context::GetExtrasExportsObject().

Adding a test (in test-api.cc) required adding a simple extra,
test-extra.js, which we build into the standalone builds.

R=yangguo@chromium.org, jochen@chromium.org
BUG=

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

Cr-Commit-Position: refs/heads/master@{#28317}
2015-05-08 12:06:35 +00:00
bmeurer
4486c47d9b [clang] Use -Wshorten-64-to-32 to enable warnings about 64bit to 32bit truncations.
Currently only the Win64 bots report this warnings, which adds quite
some overhead to the development process. With this flag we also get
compiler warnings about implicit 64bit to 32bit truncations when
building with clang on Linux/x64 and Mac/x64.

R=svenpanne@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#28093}
2015-04-28 06:53:41 +00:00
machenbach
db1674c532 Reland [test] Make msan work for v8 stand-alone. (patchset #1 id:1 of https://codereview.chromium.org/1104073002/)
Reason for revert:
Reland after switching bot to ninja.

Original issue's description:
> Revert of [test] Make msan work for v8 stand-alone. (patchset #6 id:100001 of https://codereview.chromium.org/802583003/)
>
> Reason for revert:
> Compile failures: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/builds/2047
>
> Original issue's description:
> > [test] Make msan work for v8 stand-alone.
> >
> > The msan configuration can be used in combination with
> > v8_use_snapshot=false.
> >
> > BUG=chromium:425187
> > LOG=n
> >
> > Committed: https://crrev.com/a65ef0d53fc28b0908f228938c6d84effa83c596
> > Cr-Commit-Position: refs/heads/master@{#28064}
>
> TBR=jochen@chromium.org,earthdok@chromium.org,svenpanne@chromium.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=chromium:425187
>
> Committed: https://crrev.com/f69a48696ec3ec0ea1169a41b4c84fb36b059968
> Cr-Commit-Position: refs/heads/master@{#28068}

TBR=jochen@chromium.org,earthdok@chromium.org,svenpanne@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:425187

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

Cr-Commit-Position: refs/heads/master@{#28078}
2015-04-27 13:19:45 +00:00
machenbach
f69a48696e Revert of [test] Make msan work for v8 stand-alone. (patchset #6 id:100001 of https://codereview.chromium.org/802583003/)
Reason for revert:
Compile failures: http://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/builds/2047

Original issue's description:
> [test] Make msan work for v8 stand-alone.
>
> The msan configuration can be used in combination with
> v8_use_snapshot=false.
>
> BUG=chromium:425187
> LOG=n
>
> Committed: https://crrev.com/a65ef0d53fc28b0908f228938c6d84effa83c596
> Cr-Commit-Position: refs/heads/master@{#28064}

TBR=jochen@chromium.org,earthdok@chromium.org,svenpanne@chromium.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:425187

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

Cr-Commit-Position: refs/heads/master@{#28068}
2015-04-27 11:14:10 +00:00
machenbach
a65ef0d53f [test] Make msan work for v8 stand-alone.
The msan configuration can be used in combination with
v8_use_snapshot=false.

BUG=chromium:425187
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#28064}
2015-04-27 10:13:58 +00:00
machenbach
f61f521d70 Let asan imply clang and use_allocator=none.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27905}
2015-04-17 08:13:12 +00:00
Jakob Kummerow
2064c3c9b2 Makefile: introduce debugsymbols=on flag
R=jarin@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27852}
2015-04-15 15:20:18 +00:00
torne
5d56277e8f Remove android_webview_build conditions.
Remove references to android_webview_build now that we no longer support
that build configuration. This also removes use_system_stlport which was
only supported with android_webview_build.

BUG=chromium:440793
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#27708}
2015-04-09 13:38:20 +00:00
chunyang.dai
536b7cf243 Set the default compiler for X87 to GCC.
Compiling v8 for X87 platform with clang compiler leads to some test case failure.
So we set the default compiler for X87 to GCC.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27706}
2015-04-09 13:26:34 +00:00
jochen
83f827a00b Add initial set of sub directory OWNERS file
BUG=none
R=danno@chromium.org
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#27579}
2015-04-02 08:46:24 +00:00
michael_dawson
2ec0f32abb Fix host_arch detection for AIX and one new warning as error
The value returned on AIX for platform.machine() is not the
best value to map the architecture from.  Use platform.system
to determine if we are on AIX and if so set host_arch to
ppc64 as AIX 6.1 (the earliest supported) only provides a
64 bit kernel

AIX was reporting warning that offset may be used uninitialized

	modified:   build/detect_v8_host_arch.py
	modified:   build/standalone.gypi
	modified:   src/hydrogen-bce.cc

R=mbrandy@us.ibm.com, jkummerow@chromium.org

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27463}
2015-03-26 08:06:54 +00:00
michael_dawson
8685219066 PPC: Changes to allow AIX to compile with gcc 4.8.3
We were able to remove most of our changes needed to compile
on AIX with an earlier compiler level.  These changes are the
remaining ones.

The changes in heap/heap.cc are needed because otherwise the
compiler complains that result is potentially used before
it is initialized.

The changes in heap/mark-compact.cc are required because
AIX supports the full 64 bit address range so the check
being guarded is invalid.

The changes in build/toolchain.gypi and
test/cctest/cctest/gyp are aix only and are adjust the
compile/link options to allow the AIX build to succeed.

	modified:   build/toolchain.gypi
	modified:   src/heap/heap.cc
	modified:   src/heap/mark-compact.cc
	modified:   test/cctest/cctest.gyp

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

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27255}
2015-03-18 08:43:28 +00:00
michael_dawson
a7bb84a452 PPC: Force PPC linux to use gcc and gcc 4.8.3 changes for AIX
- We don't have clang for PPC, force use of gcc.
- Changes needed to compile/build on AIX with gcc 4.8.3 missed
from last review

	modified:   build/standalone.gypi

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

BUG=

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

Cr-Commit-Position: refs/heads/master@{#27254}
2015-03-18 08:42:24 +00:00
machenbach
bab55d24ae Update V8 DEPS.
Rolling v8/tools/clang to 37246cb63b9720d6fe74b473210291007e49297b

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

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

Cr-Commit-Position: refs/heads/master@{#27200}
2015-03-14 18:41:41 +00:00
machenbach
fcbe10739b Fix full rebuilding after clang rolls.
BUG=chromium:464657
LOG=n
TBR=jochen@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27082}
2015-03-09 17:22:33 +00:00
machenbach
1bbe1da661 Force full rebuilding after clang rolls.
BUG=chromium:464657
LOG=n

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

Cr-Commit-Position: refs/heads/master@{#27081}
2015-03-09 16:24:46 +00:00
Weiliang Lin
a5fa093d0b introduce android_x64 build target
BUG=
R=jkummerow@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#27055}
2015-03-09 03:23:12 +00:00
machenbach
62d860f14f Fix host compilation with clang for android.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#27015}
2015-03-05 12:54:33 +00:00
machenbach
c11c0bdbed Update V8 DEPS.
Rolling v8/third_party/icu to eda9e75b1fa17f57ffa369ee3543a2301b68d0a9

TBR=jochen@chromium.org

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

Cr-Commit-Position: refs/heads/master@{#26999}
2015-03-04 19:45:41 +00:00
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