mozilla-pgo.patch
branchfirefox88
changeset 1157 57fc0524b50c
parent 1155 b8c834aafde2
child 1169 7481543bab31
equal deleted inserted replaced
1156:c3d884659acf 1157:57fc0524b50c
     1 # HG changeset patch
     1 # HG changeset patch
     2 # User Wolfgang Rosenauer <wr@rosenauer.org>
     2 # User Wolfgang Rosenauer <wr@rosenauer.org>
     3 # Parent  07b5ae8ccc4806fcc5ad74e32a2d3fb2b9d605d0
     3 # Parent  ed9681bd4359b83145247fb6b01a56a2c84879fd
     4 
     4 
     5 diff --git a/build/moz.configure/lto-pgo.configure b/build/moz.configure/lto-pgo.configure
     5 diff --git a/build/moz.configure/lto-pgo.configure b/build/moz.configure/lto-pgo.configure
     6 --- a/build/moz.configure/lto-pgo.configure
     6 --- a/build/moz.configure/lto-pgo.configure
     7 +++ b/build/moz.configure/lto-pgo.configure
     7 +++ b/build/moz.configure/lto-pgo.configure
     8 @@ -235,23 +235,23 @@ def lto(
     8 @@ -235,23 +235,23 @@ def lto(
   153 +
   153 +
   154 +CXXFLAGS += ['-fno-devirtualize']
   154 +CXXFLAGS += ['-fno-devirtualize']
   155 diff --git a/toolkit/components/terminator/nsTerminator.cpp b/toolkit/components/terminator/nsTerminator.cpp
   155 diff --git a/toolkit/components/terminator/nsTerminator.cpp b/toolkit/components/terminator/nsTerminator.cpp
   156 --- a/toolkit/components/terminator/nsTerminator.cpp
   156 --- a/toolkit/components/terminator/nsTerminator.cpp
   157 +++ b/toolkit/components/terminator/nsTerminator.cpp
   157 +++ b/toolkit/components/terminator/nsTerminator.cpp
   158 @@ -425,16 +425,21 @@ void nsTerminator::StartWatchdog() {
   158 @@ -451,16 +451,21 @@ void nsTerminator::StartWatchdog() {
   159        // Defend against overflow
   159        // Defend against overflow
   160        crashAfterMS = INT32_MAX;
   160        crashAfterMS = INT32_MAX;
   161      } else {
   161      } else {
   162        crashAfterMS *= scaleUp;
   162        crashAfterMS *= scaleUp;
   163      }
   163      }
   168 +  // exit may take time and it is better to make build hang rather than
   168 +  // exit may take time and it is better to make build hang rather than
   169 +  // silently produce poorly performing binary.
   169 +  // silently produce poorly performing binary.
   170 +  crashAfterMS = INT32_MAX;
   170 +  crashAfterMS = INT32_MAX;
   171 +
   171 +
   172    UniquePtr<Options> options(new Options());
   172    UniquePtr<Options> options(new Options());
   173    const PRIntervalTime ticksDuration = PR_MillisecondsToInterval(1000);
   173    const PRIntervalTime ticksDuration =
       
   174        PR_MillisecondsToInterval(HEARTBEAT_INTERVAL_MS);
   174    options->crashAfterTicks = crashAfterMS / ticksDuration;
   175    options->crashAfterTicks = crashAfterMS / ticksDuration;
   175    // Handle systems where ticksDuration is greater than crashAfterMS.
   176    // Handle systems where ticksDuration is greater than crashAfterMS.
   176    if (options->crashAfterTicks == 0) {
   177    if (options->crashAfterTicks == 0) {
   177      options->crashAfterTicks = crashAfterMS / 1000;
   178      options->crashAfterTicks = crashAfterMS / HEARTBEAT_INTERVAL_MS;
   178    }
   179    }
   179