mozilla-pgo.patch
branchfirefox95
changeset 1169 7481543bab31
parent 1157 57fc0524b50c
child 1170 f9b2d408b7ef
equal deleted inserted replaced
1168:c384af864671 1169:7481543bab31
     1 # HG changeset patch
     1 # HG changeset patch
     2 # User Wolfgang Rosenauer <wr@rosenauer.org>
     2 # User Wolfgang Rosenauer <wr@rosenauer.org>
     3 # Parent  ed9681bd4359b83145247fb6b01a56a2c84879fd
     3 # Parent  066aba2f6d1fbc0fe31d1864d539714041404fe6
     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 @@ -243,34 +243,34 @@ def lto(
     9                  "configure."
     9              "configure."
    10              )
    10          )
    11  
    11  
    12          if c_compiler.type == "clang":
    12      if c_compiler.type == "clang":
    13              if len(value) and value[0].lower() == "full":
    13          if value == "full":
    14                  cflags.append("-flto")
    14              cflags.append("-flto")
    15                  ldflags.append("-flto")
    15              ldflags.append("-flto")
    16              else:
    16          else:
    17 -                cflags.append("-flto=thin")
    17 -            cflags.append("-flto=thin")
    18 -                ldflags.append("-flto=thin")
    18 -            ldflags.append("-flto=thin")
    19 +                cflags.append("-flto")
    19 +            cflags.append("-flto")
    20 +                ldflags.append("-flto")
    20 +            ldflags.append("-flto")
    21          elif c_compiler.type == "clang-cl":
       
    22              if len(value) and value[0].lower() == "full":
       
    23                  cflags.append("-flto")
       
    24              else:
       
    25 -                cflags.append("-flto=thin")
       
    26 +                cflags.append("-flto")
       
    27              # With clang-cl, -flto can only be used with -c or -fuse-ld=lld.
       
    28              # AC_TRY_LINKs during configure don't have -c, so pass -fuse-ld=lld.
       
    29              cflags.append("-fuse-ld=lld")
       
    30  
    21  
    31              # Explicitly set the CPU to optimize for so the linker doesn't
    22          if target.os == "Android" and value == "cross":
    32              # choose a poor default.  Rust compilation by default uses the
    23              # Work around https://github.com/rust-lang/rust/issues/90088
    33              # pentium4 CPU on x86:
    24              # by enabling the highest level of SSE the rust targets default
    34              #
    25              # to.
       
    26              # https://github.com/rust-lang/rust/blob/bdfcb88e8b6203ccb46a2fb6649979b773efc8ac/compiler/rustc_target/src/spec/i686_linux_android.rs#L13
       
    27              # https://github.com/rust-lang/rust/blob/8d1083e319841624f64400e1524805a40d725439/compiler/rustc_target/src/spec/x86_64_linux_android.rs#L7
       
    28              if target.cpu == "x86":
       
    29                  ldflags.append("-Wl,-plugin-opt=-mattr=+ssse3")
       
    30              elif target.cpu == "x86_64":
       
    31                  ldflags.append("-Wl,-plugin-opt=-mattr=+sse4.2")
       
    32      elif c_compiler.type == "clang-cl":
       
    33          if value == "full":
       
    34              cflags.append("-flto")
       
    35          else:
       
    36 -            cflags.append("-flto=thin")
       
    37 +            cflags.append("-flto")
       
    38          # With clang-cl, -flto can only be used with -c or -fuse-ld=lld.
       
    39          # AC_TRY_LINKs during configure don't have -c, so pass -fuse-ld=lld.
       
    40          cflags.append("-fuse-ld=lld")
       
    41  
       
    42          # Explicitly set the CPU to optimize for so the linker doesn't
       
    43          # choose a poor default.  Rust compilation by default uses the
       
    44          # pentium4 CPU on x86:
       
    45          #
    35 diff --git a/build/pgo/profileserver.py b/build/pgo/profileserver.py
    46 diff --git a/build/pgo/profileserver.py b/build/pgo/profileserver.py
    36 --- a/build/pgo/profileserver.py
    47 --- a/build/pgo/profileserver.py
    37 +++ b/build/pgo/profileserver.py
    48 +++ b/build/pgo/profileserver.py
    38 @@ -6,17 +6,17 @@
    49 @@ -6,17 +6,17 @@
    39  
    50  
   153 +
   164 +
   154 +CXXFLAGS += ['-fno-devirtualize']
   165 +CXXFLAGS += ['-fno-devirtualize']
   155 diff --git a/toolkit/components/terminator/nsTerminator.cpp b/toolkit/components/terminator/nsTerminator.cpp
   166 diff --git a/toolkit/components/terminator/nsTerminator.cpp b/toolkit/components/terminator/nsTerminator.cpp
   156 --- a/toolkit/components/terminator/nsTerminator.cpp
   167 --- a/toolkit/components/terminator/nsTerminator.cpp
   157 +++ b/toolkit/components/terminator/nsTerminator.cpp
   168 +++ b/toolkit/components/terminator/nsTerminator.cpp
   158 @@ -451,16 +451,21 @@ void nsTerminator::StartWatchdog() {
   169 @@ -461,16 +461,21 @@ void nsTerminator::StartWatchdog() {
   159        // Defend against overflow
   170        // Defend against overflow
   160        crashAfterMS = INT32_MAX;
   171        crashAfterMS = INT32_MAX;
   161      } else {
   172      } else {
   162        crashAfterMS *= scaleUp;
   173        crashAfterMS *= scaleUp;
   163      }
   174      }