Commit Graph

33 Commits

Author SHA1 Message Date
Michael Achenbach
96c5e2df06 [test] Enable auto-detection of test flags in gyp
This ports the build_config json from GN to GYP to prepare deprecating
tedious flags passing to the test runner.

This also removes two unused GN flags that only hold temporary values.

Bug: v8:6917
Change-Id: I976185f1541277dc5c9bfbaa7578f35c19dd254c
Reviewed-on: https://chromium-review.googlesource.com/725706
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Cr-Commit-Position: refs/heads/master@{#48715}
2017-10-19 07:02:38 +00:00
Jakob Kummerow
e825c4318e Remove x87 port
Bug: v8:6550
Change-Id: I888f91db1fd842d1fef8a5fb749da229dfb6ab97
Reviewed-on: https://chromium-review.googlesource.com/575756
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Daniel Clifford <danno@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46746}
2017-07-18 18:20:40 +00:00
Michael Achenbach
a00eb6833c [build] Clean up lto, gold plugin and cfi from gyp files
Bug: v8:6524
Change-Id: I8e440417eea59376c2fab659a86ad6570c7e018a
Reviewed-on: https://chromium-review.googlesource.com/549300
Reviewed-by: Peter Marshall <petermarshall@chromium.org>
Commit-Queue: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46265}
2017-06-27 15:45:18 +00:00
Leszek Swirski
4becbe345f [ignition] Change --trace-ignition to a runtime flag
Generate the code (extra runtime calls) for --trace-ignition support at
compile time, based on a #define (similar to TRACE_MAPS). Then check for
--trace-ignition at run-time when deciding whether to actually print
anything. This should make --trace-ignition less painful to use.

Note that --trace-igition is disabled by default, even on debug builds.
It has to be enabled with the gn arg "v8_enable_trace_ignition=true"

As a drive-by, TRACE_MAPS is renamed to V8_TRACE_MAPS, for consistency,
and SFI unique index (needed both by --trace-ignition and --trace-maps)
is cleaned up to be behind another #define.

Change-Id: I8dd0c62d0e6b7ee9c75541d45eb729dc03acbee9
Reviewed-on: https://chromium-review.googlesource.com/506203
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#45346}
2017-05-16 16:11:14 +00:00
Ross McIlroy
fc7c2c5535 [Interpreter] Remove peephole optimizer.
All the optimizations have now been moved to either the BytecodeGenerator
or the BytecodeArrayWriter/Builder.

BUG=v8:6194

Change-Id: Ie5c5d55e824c94ffb503af376c72bc64ad1f6f81
Reviewed-on: https://chromium-review.googlesource.com/469349
Commit-Queue: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#44564}
2017-04-11 11:46:42 +00:00
mic.besace
c5c570f0c0 [build] Fix gyp files for building inspector
This patch fixes compilation of V8 with inspector on Windows as well as
cross-compilation of the V8 inspector.

BUG=

Refs: https://github.com/nodejs/node/pull/10992
Review-Url: https://codereview.chromium.org/2705423003
Cr-Commit-Position: refs/heads/master@{#43533}
2017-03-02 09:55:56 +00:00
jyan
3e168a1ccf s390: enable -march=z196 flag
R=joransiu@ca.ibm.com, bjaideep@ca.ibm.com, machenbach@chromium.org, jkummerow@chromium.org, jochen@chromium.org
BUG=

Review-Url: https://codereview.chromium.org/2707103002
Cr-Commit-Position: refs/heads/master@{#43355}
2017-02-21 18:44:01 +00:00
ofrobots
20d427a1e2 Revert of Use -fno-delete-null-pointer-checks with gcc builds (patchset #2 id:20001 of https://codereview.chromium.org/2310513002/ )
Reason for revert:
Fails on MIPS: https://build.chromium.org/p/client.v8.ports/builders/V8%20Mips%20-%20builder/builds/3653

Original issue's description:
> Use -fno-delete-null-pointer-checks with gcc builds
>
> R=bmeurer@chromium.org, jochen@chromium.org, machenbach@chromium.org
> BUG=v8:3782
>
> Committed: https://crrev.com/dbefc8ee2e9ee6e41b83f3d09c788c34bc923b43
> Cr-Commit-Position: refs/heads/master@{#39286}

TBR=jochen@chromium.org,bmeurer@chromium.org,machenbach@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=v8:3782

Review-Url: https://codereview.chromium.org/2328563002
Cr-Commit-Position: refs/heads/master@{#39287}
2016-09-08 15:56:24 +00:00
ofrobots
dbefc8ee2e Use -fno-delete-null-pointer-checks with gcc builds
R=bmeurer@chromium.org, jochen@chromium.org, machenbach@chromium.org
BUG=v8:3782

Review-Url: https://codereview.chromium.org/2310513002
Cr-Commit-Position: refs/heads/master@{#39286}
2016-09-08 15:49:58 +00:00
machenbach
4289c28fb9 [build] Conditionally print to stdout on Android
This adds a gyp/gn variable to control printing to stdout
on Android. This is false by default and true for all
v8 stand-alone android bots.

BUG=chromium:629806

Review-Url: https://codereview.chromium.org/2183063002
Cr-Commit-Position: refs/heads/master@{#38253}
2016-08-02 15:38:04 +00:00
akos.palfi
45d6909e7b MIPS: Fix mksnapshot on big-endian.
Paritally revert standalone.gypi changes in a451bd1a68 and introduce a new separate variable for the mkpeephole.

On big-endian MIPS, qemu is used to build the snapshot,
because there's no simulator support for big-endian MIPS.

BUG=

Committed: https://crrev.com/928d2395c3fdf836cf9961cde96e6b274a6b1e20
Review-Url: https://codereview.chromium.org/2172653002
Cr-Original-Commit-Position: refs/heads/master@{#38103}
Cr-Commit-Position: refs/heads/master@{#38165}
2016-07-29 09:30:54 +00:00
balazs.kilvady
d30070d322 Fix 'Fix [turbofan] Prevent storing signalling NaNs into holey double arrays.'
Port 52f2ceb052

Original commit message:
On MIPS different signaling NaN values must be used for hardware and simulator targets, even at snapshot generation when always simulator is used.

This introduces SilenceNaN operator, which makes sure that we only
store quiet NaNs into holey arrays. We omit the NaN silencing code
at instruction selection time if the input is an operation that
cannot possibly produce signalling NaNs.

BUG=
TEST=mjsunit/compiler/regress-store-holey-double-array

Review-Url: https://codereview.chromium.org/2188433002
Cr-Commit-Position: refs/heads/master@{#38090}
2016-07-27 10:57:14 +00:00
yangguo
43ab247f56 Remove NaCl support.
Review-Url: https://codereview.chromium.org/2175193003
Cr-Commit-Position: refs/heads/master@{#38081}
2016-07-27 07:50:31 +00:00
benwells
73a5db9d06 Revert of MIPS: Fix '[turbofan] Prevent storing signalling NaNs into holey double arrays.' (patchset #2 id:20001 of https://codereview.chromium.org/2171303002/ )
Reason for revert:
This bug has an error in the toolchain.gypi file, the conditions clause is repeated. This has broken the DrMemory builder - see first failing chromium build https://build.chromium.org/p/chromium.memory.fyi/builders/Chromium%20Windows%20Builder%20%28DrMemory%29/builds/17857 which included a v8 roll.

For reference the errors are:
gyp: Key 'conditions' repeated at level 11 with key path 'target_defaults.conditions.6.1.target_conditions.0.1.conditions.0.1' while reading C:\b\build\slave\drm-cr\build\src\v8\gypfiles\toolchain.gypi while reading includes of C:\b\build\slave\drm-cr\build\src\v8\src\d8.gyp

gyp: Key 'conditions' repeated at level 11 with key path 'target_defaults.conditions.6.1.target_conditions.0.1.conditions.0.1' while reading C:\b\build\slave\drm-cr\build\src\v8\gypfiles\toolchain.gypi while reading includes of C:\b\build\slave\drm-cr\build\src\v8\src\v8.gyp

gyp: Key 'conditions' repeated at level 11 with key path 'target_defaults.conditions.6.1.target_conditions.0.1.conditions.0.1' while reading C:\b\build\slave\drm-cr\build\src\v8\gypfiles\toolchain.gypi while reading includes of C:\b\build\slave\drm-cr\build\src\v8\samples\samples.gyp

Original issue's description:
> MIPS: Fix '[turbofan] Prevent storing signalling NaNs into holey double arrays.'
>
> Port 6470ddadf9
>
> On MIPS different signaling NaN values must be used for hardware and simulator targets, even at snapshot generation when always simulator is used.
>
> Original commit message:
> This introduces SilenceNaN operator, which makes sure that we only
> store quiet NaNs into holey arrays. We omit the NaN silencing code
> at instruction selection time if the input is an operation that
> cannot possibly produce signalling NaNs.
>
> BUG=
>
> Committed: https://crrev.com/52f2ceb052f63324050c7a098e4398f510b54763
> Cr-Commit-Position: refs/heads/master@{#38030}

TBR=jarin@chromium.org,machenbach@google.com,akos.palfi@mattakis.com,ivica.bogosavljevic@imgtec.com,marija.antic@imgtec.com,ilija.pavlovic.imgtec@gmail.com,akos.palfi@imgtec.com,machenbach@chromium.org,balazs.kilvady@imgtec.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

TBR=machenbach

Review-Url: https://codereview.chromium.org/2184573002
Cr-Commit-Position: refs/heads/master@{#38037}
2016-07-26 06:32:18 +00:00
balazs.kilvady
52f2ceb052 MIPS: Fix '[turbofan] Prevent storing signalling NaNs into holey double arrays.'
Port 6470ddadf9

On MIPS different signaling NaN values must be used for hardware and simulator targets, even at snapshot generation when always simulator is used.

Original commit message:
This introduces SilenceNaN operator, which makes sure that we only
store quiet NaNs into holey arrays. We omit the NaN silencing code
at instruction selection time if the input is an operation that
cannot possibly produce signalling NaNs.

BUG=

Review-Url: https://codereview.chromium.org/2171303002
Cr-Commit-Position: refs/heads/master@{#38030}
2016-07-25 17:29:34 +00:00
sxa
6f68f30ba5 [build] Add force_dynamic_crt option to build a static library with /MD on windows
Adds option to build a V8 library statically, but with the options on
windows that allows it to be subsequently included in another DLL. On
Windows this is required for it to correclty link against the correct
C++ runtime. Require for our Node.js shared library build.

Reference:  https://github.com/nodejs/node/pull/7487

BUG=
R=machenbach@chromium.org, michael_dawson@ca.ibm.com

Committed: https://crrev.com/9cf88c1c364cf76c1e745aa63196768435e8ef5d
Review-Url: https://codereview.chromium.org/2149963002
Cr-Original-Commit-Position: refs/heads/master@{#37814}
Cr-Commit-Position: refs/heads/master@{#37856}
2016-07-19 09:55:01 +00:00
machenbach
a4053e027d Revert of Add force_dynamic_crt to build as static library but with /MD on windows (patchset #3 id:40001 of https://codereview.chromium.org/2149963002/ )
Reason for revert:
Fails gyp build with chromium:
https://build.chromium.org/p/tryserver.chromium.mac/builders/ios-simulator/builds/37051

Blocks roll:
https://codereview.chromium.org/2157903002/

Please add the trybot ios-simulator on reland.

Original issue's description:
> [build] Add force_dynamic_crt option to build a static library with /MD on windows
>
> Adds option to build a V8 library statically, but with the options on
> windows that allows it to be subsequently included in another DLL. On
> Windows this is required for it to correclty link against the correct
> C++ runtime. Require for our Node.js shared library build.
>
> Reference:  https://github.com/nodejs/node/pull/7487
>
> BUG=
> R=machenbach@chromium.org, michael_dawson@ca.ibm.com
>
> Committed: https://crrev.com/9cf88c1c364cf76c1e745aa63196768435e8ef5d
> Cr-Commit-Position: refs/heads/master@{#37814}

TBR=michael_dawson@ca.ibm.com,franzih@chromium.org,sxa@uk.ibm.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=

Review-Url: https://codereview.chromium.org/2155073002
Cr-Commit-Position: refs/heads/master@{#37822}
2016-07-18 09:21:34 +00:00
sxa
9cf88c1c36 [build] Add force_dynamic_crt option to build a static library with /MD on windows
Adds option to build a V8 library statically, but with the options on
windows that allows it to be subsequently included in another DLL. On
Windows this is required for it to correclty link against the correct
C++ runtime. Require for our Node.js shared library build.

Reference:  https://github.com/nodejs/node/pull/7487

BUG=
R=machenbach@chromium.org, michael_dawson@ca.ibm.com

Review-Url: https://codereview.chromium.org/2149963002
Cr-Commit-Position: refs/heads/master@{#37814}
2016-07-18 07:12:48 +00:00
ssanfilippo
8465244e79 Broaden the condition under which gold is used as linker.
LOG=N

Review-Url: https://codereview.chromium.org/2121123002
Cr-Commit-Position: refs/heads/master@{#37521}
2016-07-05 10:28:17 +00:00
bjaideep
1ef7e4e2a6 AIX: Adding bbigtoc link step option to fix TOC overflow error
Adding link option -bbigtoc to fix TOC overflow error.
    The option instructs the linker to generate TOC larger
    than 64k.

    TOC: http://www.ibm.com/developerworks/rational/library/overview-toc-aix/

R=machenbach@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com

BUG=
LOG=N

Review-Url: https://codereview.chromium.org/2107513002
Cr-Commit-Position: refs/heads/master@{#37327}
2016-06-28 12:45:42 +00:00
bjaideep
b5a2b4db79 AIX: Define __STDC_FORMAT_MACROS in gypi file
Some system header files on AIX include inttypes.h without
    defining __STDC_FORMAT_MACROS and therefore the printf format
    specifier macro (for eg. PRId64) doesn't get defined as they
    are guarded with __STDC_FORMAT_MACROS macro on AIX.
    This error showed up recently when the format specifier was used in
    wasm-interpreter.cc, where a AIX system header file is included
    which also includes inttypes.h without defining __STDC_FORMAT_MACROS.

R=ahaas@chromium.org, titzer@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com, mbrandy@us.ibm.com

BUG=
LOG=N

Review-Url: https://codereview.chromium.org/2033483002
Cr-Commit-Position: refs/heads/master@{#36682}
2016-06-02 14:04:40 +00:00
jochen
09d90e4e70 Reland "Move (hopefully) remaining isolate related variables to toolchain.gypi"
BUG=chromium:609107
R=machenbach@chromium.org

Review-Url: https://codereview.chromium.org/2032733003
Cr-Commit-Position: refs/heads/master@{#36677}
2016-06-02 09:55:44 +00:00
machenbach
dab67f0331 Revert of Move (hopefully) remaining isolate related variables to toolchain.gypi (patchset #1 id:1 of https://codereview.chromium.org/2027213002/ )
Reason for revert:
Fails:
https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/7182/steps/gclient%20runhooks/logs/stdio

Original issue's description:
> Move (hopefully) remaining isolate related variables to toolchain.gypi
>
> BUG=chromium:609107
> R=machenbach@chromium.org
>
> Committed: https://crrev.com/a68a1eb38dda0a1eba3b7644a172d2f85e9c7abe
> Cr-Commit-Position: refs/heads/master@{#36664}

TBR=jochen@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:609107

Review-Url: https://codereview.chromium.org/2038463002
Cr-Commit-Position: refs/heads/master@{#36665}
2016-06-02 07:10:36 +00:00
jochen
a68a1eb38d Move (hopefully) remaining isolate related variables to toolchain.gypi
BUG=chromium:609107
R=machenbach@chromium.org

Review-Url: https://codereview.chromium.org/2027213002
Cr-Commit-Position: refs/heads/master@{#36664}
2016-06-02 06:52:56 +00:00
jochen
34fbcd70ae Move gcmole to toolchain.gypi
it's referenced from isolate.gypi which in turn is used in
non-standalone builds as well.

BUG=chromium:609107
R=machenbach@chromium.org

Review-Url: https://codereview.chromium.org/2023783003
Cr-Commit-Position: refs/heads/master@{#36591}
2016-05-30 14:33:17 +00:00
jochen
baf1204df1 Reland of move v8_toolset_for_d8 flag (patchset #2 id:80001 of https://codereview.chromium.org/1974773002/ )
Reason for revert:
Addressed link failure

Original issue's description:
> Revert of Remove v8_toolset_for_d8 flag (patchset #1 id:1 of https://codereview.chromium.org/1969793002/ )
>
> Reason for revert:
> blocks roll: https://codereview.chromium.org/1975753002/
>
> Original issue's description:
> > Remove v8_toolset_for_d8 flag
> >
> > R=machenbach@chromium.org
> > BUG=chromium:609107
> >
> > Committed: https://crrev.com/6cb38427984f3c31ff6c8813535cfd6ebf6058c4
> > Cr-Commit-Position: refs/heads/master@{#36198}
>
> TBR=machenbach@chromium.org,jochen@chromium.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=chromium:609107
>
> Committed: https://crrev.com/b33f9a6f24edef8447adcfb028b7f1d6e291c34e
> Cr-Commit-Position: refs/heads/master@{#36209}

TBR=machenbach@chromium.org,hablich@chromium.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=chromium:609107

Review-Url: https://codereview.chromium.org/1973363002
Cr-Commit-Position: refs/heads/master@{#36250}
2016-05-13 16:13:12 +00:00
hablich
b33f9a6f24 Revert of Remove v8_toolset_for_d8 flag (patchset #1 id:1 of https://codereview.chromium.org/1969793002/ )
Reason for revert:
blocks roll: https://codereview.chromium.org/1975753002/

Original issue's description:
> Remove v8_toolset_for_d8 flag
>
> R=machenbach@chromium.org
> BUG=chromium:609107
>
> Committed: https://crrev.com/6cb38427984f3c31ff6c8813535cfd6ebf6058c4
> Cr-Commit-Position: refs/heads/master@{#36198}

TBR=machenbach@chromium.org,jochen@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:609107

Review-Url: https://codereview.chromium.org/1974773002
Cr-Commit-Position: refs/heads/master@{#36209}
2016-05-12 13:29:23 +00:00
jochen
6cb3842798 Remove v8_toolset_for_d8 flag
R=machenbach@chromium.org
BUG=chromium:609107

Review-Url: https://codereview.chromium.org/1969793002
Cr-Commit-Position: refs/heads/master@{#36198}
2016-05-12 07:49:44 +00:00
machenbach
413d9e2f41 Revert of [build] Use -O2 on linux by default (patchset #1 id:1 of https://codereview.chromium.org/1963693004/ )
Reason for revert:
Causes regressions.

Original issue's description:
> [build] Use -O2 on linux by default
>
> This switches O2 -> O3 to match chromium's configuration.
>
> This makes the difference between gn and gyp a bit smaller
> before switching.
>
> BUG=chromium:474921
> LOG=n
>
> Committed: https://crrev.com/a37ab71e343b8cc24df05868b941a49e0c271376
> Cr-Commit-Position: refs/heads/master@{#36124}

TBR=jochen@chromium.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=chromium:474921

Review-Url: https://codereview.chromium.org/1958253004
Cr-Commit-Position: refs/heads/master@{#36135}
2016-05-10 12:09:51 +00:00
machenbach
a37ab71e34 [build] Use -O2 on linux by default
This switches O2 -> O3 to match chromium's configuration.

This makes the difference between gn and gyp a bit smaller
before switching.

BUG=chromium:474921
LOG=n

Review-Url: https://codereview.chromium.org/1963693004
Cr-Commit-Position: refs/heads/master@{#36124}
2016-05-10 08:12:33 +00:00
jochen
609b5e5e30 Add GN target for the sample shell
I want to stop using d8 from the chromium build, so we could potentially
use it for running tests.

BUG=chromium:609107
R=machenbach@chromium.org
LOG=n

Review-Url: https://codereview.chromium.org/1944353002
Cr-Commit-Position: refs/heads/master@{#36060}
2016-05-06 07:31:06 +00:00
jochen
5bd0281b56 Add missing fpu mode to mipsel r1 toolchain
It's present for host and simulator builds.

BUG=none
R=machenbach@chromium.org

Review-Url: https://codereview.chromium.org/1941723002
Cr-Commit-Position: refs/heads/master@{#35932}
2016-05-02 12:32:49 +00:00
machenbach
3bf44848c3 [gn] Move build to gypfiles
This prepares for pulling chromium's build as dependency for
gn. After this, the files in build and gypfiles need to stay
in sync until chromium is updated.

BUG=chromium:474921
LOG=n

Review-Url: https://codereview.chromium.org/1848553003
Cr-Commit-Position: refs/heads/master@{#35898}
2016-04-29 10:11:11 +00:00