[Bug 229326] [patch] Mk/bsd.gecko.mk remove forced -O3 optimization

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Tue Jun 26 00:07:41 UTC 2018


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=229326

Jan Beich <jbeich at FreeBSD.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
              Flags|                            |maintainer-feedback+

--- Comment #2 from Jan Beich <jbeich at FreeBSD.org> ---
-O3 is enabled by default because Mozilla uses it on macOS which is like
FreeBSD a Clang platform. FreeBSD Port allows to override -O3 via CFLAGS in
make.conf as only the last -O<n> matters.

(In reply to Kenneth Salerno from comment #0)
> laptop with inadequate RAM

Firefox is supposed to take advantage of mozjemalloc to keep memory usage low.
Unfortunately, it hasn't been ported to FreeBSD despite originating from there.
If Stylo performance isn't very important try the following workaround:

  # jemalloc4 tunning before
https://bugzilla.mozilla.org/show_bug.cgi?id=1363992
  $ MALLOC_CONF="narenas:1,tcache:false" firefox ...

> Fedora Linux ... GCC7

Distro builds may use different flags. Try looking at Mozilla build logs from
"opt" jobs in https://treeherder.mozilla.org/#/jobs?repo=mozilla-release

Another option is to extract a binary:

$ fetch
https://download.cdn.mozilla.net/pub/firefox/releases/61.0/linux-x86_64/en-US/firefox-61.0.tar.bz2
$ tar xkf firefox-61.0.tar.bz2
$ (cd firefox; tar xUf omni.ja)
$ (cd firefox/browser; tar xUf omni.ja)
$ fgrep -B2 -- -O3 firefox/chrome/toolkit/content/global/buildconfig.html
      <td>/builds/worker/workspace/build/src/gcc/bin/g++</td>
      <td>6.4.0</td>
      <td>-U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wall -Wempty-body
-Wignored-qualifiers -Woverloaded-virtual -Wpointer-arith -Wsign-compare
-Wtype-limits -Wunreachable-code -Wwrite-strings -Wno-invalid-offsetof
-Wduplicated-cond -Wno-error=maybe-uninitialized
-Wno-error=deprecated-declarations -Wno-error=array-bounds
-Wno-error=coverage-mismatch -Wno-error=free-nonheap-object -Wformat
-D_GLIBCXX_USE_CXX11_ABI=0 -fno-sized-deallocation -U_FORTIFY_SOURCE
-D_FORTIFY_SOURCE=2 -fno-exceptions -fno-strict-aliasing -fno-rtti
-ffunction-sections -fdata-sections -fno-exceptions -fno-math-errno -pthread
-pipe -g -O3 -fomit-frame-pointer</td>

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-gecko mailing list