rmcilroy@chromium.org
75e4fa300c
Modify toolchain.gypi to avoid adding -m64 flag on android.
...
The -m64 flag isn't supported on Android. Add a similar gyp condition to avoid
setting the flag on Android in a similar manner to how the -m32 flag is avoided
on android.
BUG=354405
LOG=N
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/212863007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20289 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-26 18:23:34 +00:00
jkummerow@chromium.org
985c98a1eb
Don't try to use ASan on Windows
...
Let ASan support depend on __has_feature(address_sanitizer) instead of defined(ADDRESS_SANITIZER)
R=yangguo@chromium.org
Review URL: https://codereview.chromium.org/213133002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20287 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-26 16:18:28 +00:00
jkummerow@chromium.org
c6bff48f09
ASan support for the Zone
...
R=jarin@chromium.org , kcc@google.com
Review URL: https://codereview.chromium.org/208743004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20266 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-26 10:01:53 +00:00
ulan@chromium.org
0e0624c0b6
Enable x64 build for Android
...
BUG=
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/209323004
Patch from Yang Gu <yang.gu@intel.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20206 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-24 15:56:35 +00:00
marja@chromium.org
dccd57f1ec
Add parser-shell.
...
parser-shell will help to see how much PreParsing gets slower when PreParser
starts doing more checks (especially tracking variables and scopes). It will
also show how much having preparse data (or cached data) speeds up the parsing.
R=ulan@chromium.org
BUG=
Review URL: https://codereview.chromium.org/209353008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20201 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-24 14:43:41 +00:00
ulan@chromium.org
d700952b4f
ARM64: update the path to android_stlport_libs.
...
BUG=
R=jochen@chromium.org
Review URL: https://codereview.chromium.org/209383007
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20191 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-24 13:00:01 +00:00
jochen@chromium.org
2ce0bebba1
Rename A64 port to ARM64 port
...
BUG=354405
R=ulan@chromium.org , rodolph.perfetta@arm.com
LOG=y
Review URL: https://codereview.chromium.org/207823003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20148 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 09:28:26 +00:00
jochen@chromium.org
9fccfc37c8
Prepare switch from a64 to arm64
...
BUG=354405
R=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/207793002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@20147 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-21 08:47:03 +00:00
jochen@chromium.org
a992481b9e
Allow for compiling with xcode 5.1 (which doesn't have gcc anymore)
...
BUG=none
R=jkummerow@chromium.org , machenbach@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/196983006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19917 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-14 07:47:08 +00:00
machenbach@chromium.org
717c4d3bb5
Add ASAN option to stand-alone gyp config.
...
BUG=
R=jkummerow@chromium.org , jochen@chromium.org
Review URL: https://codereview.chromium.org/196943004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19888 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-03-13 10:36:55 +00:00
ulan@chromium.org
e95bc7eec8
Merge experimental/a64 to bleeding_edge.
...
BUG=v8:3113
LOG=Y
R=jochen@chromium.org , rmcilroy@chromium.org , rodolph.perfetta@arm.com
Review URL: https://codereview.chromium.org/148293020
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@19311 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-02-12 09:19:30 +00:00
jkummerow@chromium.org
7fd59e5295
Don't hardcode GCC_VERSION for Xcode in standalone.gypi.
...
This fixes standalone command-line Xcode compilation with Xcode 5.x.
R=machenbach@chromium.org
Review URL: https://codereview.chromium.org/138443008
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18785 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-23 15:55:20 +00:00
jochen@chromium.org
3a954aa52d
Introduce a setting to control the toolset for which d8 is compiled
...
BUG=v8:1775
R=machenbach@chromium.org
LOG=y
Review URL: https://codereview.chromium.org/138273016
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18656 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-17 09:11:22 +00:00
machenbach@chromium.org
bb372d9e23
Revert "Make it possible to compile d8 for the host toolset as well" and "For V8, only build d8 on target"
...
This reverts commits r18618 and r18619 for breaking arm compilation.
BUG=
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/139273004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18620 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-15 14:24:32 +00:00
jochen@chromium.org
95ab47fadb
For V8, only build d8 on target
...
BUG=none
TBR=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/139403002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18619 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-15 14:00:29 +00:00
jochen@chromium.org
4934263a77
Remove generated makefiles on linux when running gyp_v8
...
BUG=331475
R=machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/108293006
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18460 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-07 09:09:24 +00:00
jochen@chromium.org
b4c5627abf
Revert r18435 "... Roll gyp 1685:1806"
...
TBR=ulan@chromium.org
LOG=n
BUG=none
Review URL: https://codereview.chromium.org/122063003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18442 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-02 15:13:53 +00:00
jochen@chromium.org
6ba3919003
Set the gyp DEPTH variable as relative path.
...
After r18439, it's an absolute variable which confuses gy
LOG=n
R=ulan@chromium.org
BUG=none
Review URL: https://codereview.chromium.org/119293004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18440 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-02 14:35:32 +00:00
jochen@chromium.org
22376a103a
Don't modify the PWD in gyp_v8
...
When running gyp in parallel mode (soon the default), we need to be able
to find the script by looking at the path relative to the PWD when the
script was originally invoked.
Instead of changing the directory and relying on relative paths, just
use absolute paths (as gyp_chromium does).
BUG=v8:2973
R=ulan@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/122183004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18439 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-02 13:50:50 +00:00
ulan@chromium.org
0aa98cf5b6
Revert "Revert r19394 - "Revert r18390 - "Roll gyp 1685:1806""" because of broken windows bots.
...
R=jochen@chromium.org
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/119843004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18435 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-02 10:49:48 +00:00
jochen@chromium.org
e785e60bea
Revert r19394 - "Revert r18390 - "Roll gyp 1685:1806""
...
Also include a gyp_v8.py wrapper for new import rules.
> Doesn't work with python2.7 - I tested with 2.6 :-/
>
> BUG=none
> TBR=hpayer@chromium.org
> LOG=n
BUG=none
LOG=n
R=bmeurer@chromium.org
Review URL: https://codereview.chromium.org/120763003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18433 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-02 09:58:06 +00:00
bmeurer@chromium.org
0899da3697
Add support for the QNX operating system.
...
This patch contains contributions from the following members of the
BlackBerry Web Technologies team:
Eli Fidler <efidler@blackberry.com>
Konrad Piascik <kpiascik@blackberry.com>
Jeff Rogers <jrogers@blackberry.com>
Cosmin Truta <ctruta@blackberry.com>
Peter Wang <peter.wang@torchmobile.com.cn>
Xiaobo Wang <xiaobwang@blackberry.com>
Ming Xie <mxie@blackberry.com>
Leo Yang <leoyang@blackberry.com>
R=bmeurer@chromium.org , jkummerow@chromium.org
Review URL: https://codereview.chromium.org/61153009
Patch from Cosmin Truta <ctruta@blackberry.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18430 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2014-01-02 07:04:05 +00:00
jkummerow@chromium.org
7967a195c7
Switch armv7 setting to arm_version==7 in v8 gyp files
...
BUG=chromium:234135
LOG=Y
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/98543008
Patch from Mostyn Bramley-Moore <mostynb@opera.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18297 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-11 11:58:07 +00:00
machenbach@chromium.org
24912a794c
Pass -Goutput_dir=. to the make generator.
...
This makes it possible to remove the builddir_name hack added in r238632.
BUG=315004
Patch from Nico Weber <thakis@chromium.org>.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/98753003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18257 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-05 11:19:10 +00:00
jkummerow@chromium.org
37e2c7e500
Support 'werror=no' on Mac/Xcode
...
R=ulan@chromium.org
Review URL: https://codereview.chromium.org/98653003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18201 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-12-02 15:29:31 +00:00
yangguo@chromium.org
aa3518a0f3
Make sure files end with exactly one new line and police this in presubmit.
...
The changes are (excluding presubmit.py) mechanical. I added the following
lines after the check and iterated the presubmit script until all errors
went away:
f = open(name, "w");
if contents.endswith('\n\n'):
f.write(contents[0:-1])
else:
f.write(contents + '\n')
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/82803005
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18017 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-22 13:50:39 +00:00
jochen@chromium.org
4452341b55
Clean up incorrect V8_DEPRECATION macro usage and enable deprecatitions
...
We turn the default for standalone builds on, however, I added overrides
to all targets to turn it locally off again. In follow up CLs, I'll
clean up one target at a time.
BUG=v8:3023
R=dcarney@chromium.org , machenbach@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/82763004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18002 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-22 10:57:55 +00:00
jochen@chromium.org
a9af0948cf
Reland r17877 - Introduce a v8::Platform class that bundles embedder callbacks
...
Over the initial commit, this CL moves the lifetime management of the default
platform to v8.cc from api.cc
R=bmeurer@chromium.org , svenpanne@chromium.org
BUG=v8:3015
LOG=n
Review URL: https://codereview.chromium.org/78453003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17970 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-21 14:07:06 +00:00
jochen@chromium.org
e744b82fae
Revert 17877 - Introduce a v8::Platform class that bundles embedder callbacks
...
This also reverts 17879 and 17880.
BUG=v8:3015
TBR=svenpanne@chromium.org
LOG=n
Review URL: https://codereview.chromium.org/76323002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17881 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-19 14:28:07 +00:00
jochen@chromium.org
c24ce076e9
Introduce a v8::Platform class that bundles embedder callbacks
...
Also provide a default implementation to use in cctests.
For now, there are just two thread releated callbacks. In future CLs, I will
move callbacks registered e.g. via V8::SetFooCallback over.
BUG=v8:3015
R=svenpanne@chromium.org , danno@chromium.org
LOG=no
Review URL: https://codereview.chromium.org/75283002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17877 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-19 13:44:36 +00:00
jkummerow@chromium.org
ec9a9ac103
Fix broken pipe caused by commands in toolchain.gypi.
...
I sometimes observe broken pipe errors when I run gyp, which causes the gyp
process to fail. This seems to happen if gyp is executed under heavy I/O
pressure.
This change removes the pipes by replacing "echo |" with "< /dev/null".
Technically these are not the same, because "echo |" prints a newline while
"< /dev/null" doesn't, but this difference is not significant in the context of
the commands in toolchain.gypi.
BUG=
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/73623002
Patch from Yuta Kitamura <yutak@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17836 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-18 14:32:30 +00:00
ulan@chromium.org
f621f50fb2
Fix shared library build after r17692.
...
BUG=
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/70663003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17693 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-13 12:59:49 +00:00
ulan@chromium.org
81761f9dc6
Add lexer-shell for running lexer benchmarks.
...
R=jkummerow@chromium.org
Review URL: https://chromiumcodereview.appspot.com/70263003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17692 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-13 12:26:09 +00:00
jochen@chromium.org
a380ffc36f
Revert r17152 - "Revert r17018 - "Turn on handle zapping for release builds""
...
Apparently, this wasn't the cause for dromaeo regressions.
> BUG=none
> R=jkummerow@chromium.org
>
> Review URL: https://codereview.chromium.org/26457002
R=verwaest@chromium.org , jkummerow@chromium.org
Review URL: https://codereview.chromium.org/36843002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17519 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-11-06 12:13:01 +00:00
danno@chromium.org
7339d45a9f
Define DEBUG for v8_optimized_debug=2
...
Thereby ensuring there is only a minimal performance regression vs. NDEBUG (now it's only about 10% slower rather than ~2x).
R=jkummerow@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/39183004
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17392 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-25 11:10:28 +00:00
jkummerow@chromium.org
74bf8b8f70
Move v8_optimized_debug default value to standalone.gypi
...
This is so that Chromium can have its own overridable default value without colliding with ours.
R=mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/26317009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17193 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-14 13:07:41 +00:00
jochen@chromium.org
06f16a132c
Revert r17018 - "Turn on handle zapping for release builds"
...
BUG=none
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/26457002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17152 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-11 07:42:43 +00:00
mstarzinger@chromium.org
3c8e87d840
Remove obsolete preparser binary.
...
R=danno@chromium.org
Review URL: https://codereview.chromium.org/25277003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17113 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-10-04 16:21:23 +00:00
jochen@chromium.org
2cf500644e
Turn on handle zapping for release builds
...
The impact on performance appears to be negligible, see the golem results on r17004
R=danno@chromium.org
Review URL: https://codereview.chromium.org/25275002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17018 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 14:49:48 +00:00
dcarney@chromium.org
6dd72b6416
change of V8_DEPRECATED to be enabled behind a gyp flag
...
also add a deprecation message for newer gcc versions
R=danno@chromium.org
BUG=
Review URL: https://codereview.chromium.org/25226002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17006 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 13:28:23 +00:00
jochen@chromium.org
3387afd33e
Split extra checks into extra checks and handle zapping
...
That will make it easier to turn on handle zapping alone and experiment
with it.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/25250002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@17004 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-30 11:56:52 +00:00
jochen@chromium.org
416f2a9ba7
Turn on i18n support by default
...
This reverts commit r16789
BUG=none
R=machenbach@chromium.org , mstarzinger@chromium.org
Review URL: https://codereview.chromium.org/23522063
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16827 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-19 12:07:03 +00:00
machenbach@chromium.org
eca42c42cb
Revert "Turn on i18n support by default", "Update test262 expectations, now that 15.5.4.9_CE passes", "Make testing i18n the default.", "Mark two failing mozilla tests as failing.", "Mark mozilla tests as flaky instead of failing" and "Fix test expectations for i18n."
...
This reverts commit 16783-16788 due to several crashers on nosnap builder.
TBR=jochen@chromium.org
Review URL: https://codereview.chromium.org/23455055
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16789 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-18 13:50:00 +00:00
jochen@chromium.org
f41f6c2b41
Turn on i18n support by default
...
BUG=v8:2745
R=danno@chromium.org
Review URL: https://codereview.chromium.org/23003028
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16783 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-18 08:11:44 +00:00
jochen@chromium.org
b3310c3a98
Use icu_gyp_path variable to reference ICU gyp file
...
That way, embedders can put the icu sources whereever they want and
aren't forced to put them under third_party/gyp
BUG=none
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/23598011
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16749 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-09-17 08:31:56 +00:00
jkummerow@chromium.org
31691477b7
Avoid -O3 in nacl as it does not play well with -W.
...
Also cleans up some uninitialized data I saw while investigating
the problem.
R=jkummerow@chromium.org , machenbach@chromium.org
Review URL: https://codereview.chromium.org/23119004
Patch from Ken Mixter <kmixter@google.com>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16235 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-20 08:12:19 +00:00
machenbach@chromium.org
a37040b275
Make optimized debug builds link against debug CRT.
...
We recently had some XP issues on chromium.win after https://codereview.chromium.org/19384011/ .
This might fix it - quote: "The most likely cause of the problem is a gyp (or similar) change that resulted in v8.dll linking against the release version of the crt (for a debug build). There are two MS VC related files: the crt and the c++ std lib (MSVCR100.DLL and MSVCP100D.DLL). The former is set to release, the latter to debug."
I am not entirely sure if this change fits to the linker options for debug level 2.
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/21776002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16026 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-02 10:59:23 +00:00
machenbach@chromium.org
5666c32d0b
Revert windows-specific part of r15937 for debug level 1.
...
The change in r15937 might have broken a mozilla test under windows. See https://codereview.chromium.org/19384011/
Each case of debug 0,1,2 is now stated explicitly for better clarity in the msvs section. This causes some minor code duplications, which we can squeeze again after toolchain.gypi is in a stable state.
R=dpranke@chromium.org , jkummerow@chromium.org
Review URL: https://codereview.chromium.org/21495002
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16018 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-02 07:58:23 +00:00
jochen@chromium.org
0da9a28967
Never define 'DEBUG' for non-v8 code
...
R=jkummerow@chromium.org
Review URL: https://codereview.chromium.org/20831003
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16012 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-08-01 19:20:01 +00:00
dslomov@chromium.org
d0e0ff01ad
Revamp v8_optimized_debug options
...
This patch changes the definition of v8_optimized_debug==1 to match the release-mode compiler optimization settings (generally, going from -O1 to -O3 on Linux, similar switches for Mac/Win). This produces a minor speed up on Linux, but significant speedups on Mac and Win. This may make it much harder to debug, though.
It also adds a v8_optimized_debug==2 that, in addition to the compiler optimizations, undef's DEBUG and defines DEBUG. This leaves V8_ENABLE_CHECKS alone (so that the assertions are still enabled), but otherwise basically matches a release mode build.
Builds with v8_optimized_debug==2 roughly match a Release mode build for speed; the V8_ENABLE_CHECKS checks appear to have minimal performance impact (maybe 5-10%, unlike what was previously thought). In addition, switching from the previous optimization settings makes a significant improvement on Mac and Win (50% or more), and switching from DEBUG to NDEBUG makes a significant improvement (another 50% or more).
Note that using v8_optimized_debug==2 may also cause some v8 tests to fail. This is currently is believed to be acceptable.
R=machenbach@chromium.org
BUG=254188
Review URL: https://codereview.chromium.org/19384011
Patch from Dirk Pranke <dpranke@chromium.org>.
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15937 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
2013-07-29 14:00:06 +00:00