aboutsummaryrefslogtreecommitdiffstats
path: root/community/chromium/gcc-fno-delete-null-pointer-checks.patch
blob: 792cef60f6c18e6f98cf913291f8029ca77c7cb7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
diff --git a/v8/BUILD.gn b/v8/BUILD.gn
index 3c03942..870b1e6 100644
--- ./v8/BUILD.gn
+++ ./v8/BUILD.gn
@@ -577,6 +577,14 @@ config("toolchain") {
     defines += [ "V8_ANDROID_LOG_STDOUT" ]
   }
 
+  if (!is_win && !is_clang) {
+    # GCC 6+ can optimize away pointer comparisons to null. This is
+    # problematic as V8 encodes Values through tagged pointers and comparisons
+    # with 0 are actually necessary in many cases. As a temporary Workaround
+    # we disable this optimization. See: https://crbug.com/v8/3782
+    cflags += [ "-fno-delete-null-pointer-checks" ]
+  }
+
   # TODO(jochen): Support v8_enable_prof on Windows.
   # TODO(jochen): Add support for compiling with simulators.