Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Fixes and livability improvements for LTO in Firefox 82 on ppc64le Linux. Read web page first! -- https://www.talospace.com/2020/10/firefox-82-on-power-goes-pgo.html
diff -r 72f6df8e0ae6 build/moz.configure/lto-pgo.configure
--- a/build/moz.configure/lto-pgo.configure Thu Oct 22 10:17:13 2020 +0000
+++ b/build/moz.configure/lto-pgo.configure Mon Oct 26 19:48:07 2020 -0700
@@ -71,17 +71,17 @@
@imports('multiprocessing')
@imports(_from='__builtin__', _import='min')
def pgo_flags(compiler, profdata, target_is_windows):
if compiler.type == 'gcc':
return namespace(
gen_cflags=['-fprofile-generate'],
gen_ldflags=['-fprofile-generate'],
use_cflags=['-fprofile-use', '-fprofile-correction',
- '-Wcoverage-mismatch'],
+ '-Wno-coverage-mismatch'],
use_ldflags=['-fprofile-use'],
)
if compiler.type in ('clang-cl', 'clang'):
prefix = ''
if compiler.type == 'clang-cl':
prefix = '/clang:'
gen_ldflags = None
diff -r 72f6df8e0ae6 build/moz.configure/warnings.configure
--- a/build/moz.configure/warnings.configure Thu Oct 22 10:17:13 2020 +0000
+++ b/build/moz.configure/warnings.configure Mon Oct 26 19:48:07 2020 -0700
@@ -211,17 +211,17 @@
# an error, which we would like to ignore. This seems to only affect the MinGW
# build, but we're not sure why.
check_and_add_gcc_warning('-Wno-enum-compare')
# We hit this all over the place with the gtest INSTANTIATE_TEST_CASE_P macro
check_and_add_gcc_warning('-Wno-gnu-zero-variadic-macro-arguments')
# Make it an error to be missing function declarations.
-check_and_add_gcc_warning('-Werror=implicit-function-declaration')
+check_and_add_gcc_warning('-Werror=implicit-function-declaration', compiler=c_compiler)
# New in clang 11. We can't really do anything about this warning.
check_and_add_gcc_warning('-Wno-psabi')
# Please keep these last in this file
add_old_configure_assignment('_WARNINGS_CFLAGS', warnings_flags.cflags)
add_old_configure_assignment('_WARNINGS_CXXFLAGS', warnings_flags.cxxflags)
diff -r 72f6df8e0ae6 build/pgo/profileserver.py
--- a/build/pgo/profileserver.py Thu Oct 22 10:17:13 2020 +0000
+++ b/build/pgo/profileserver.py Mon Oct 26 19:48:07 2020 -0700
@@ -191,16 +191,19 @@
# Try to move the crash reports to the artifacts even if Firefox appears
# to exit successfully, in case there's a crash that doesn't set the
# return code to non-zero for some reason.
if get_crashreports(profilePath, name='Firefox exited successfully?') != 0:
print("Firefox exited successfully, but produced a crashreport")
sys.exit(1)
+ os.system("/home/censored/src/mozilla-release/gccpgostub.csh")
+ sys.exit(0)
+
llvm_profdata = env.get('LLVM_PROFDATA')
if llvm_profdata:
profraw_files = glob.glob('*.profraw')
if not profraw_files:
print('Could not find profraw files in the current directory: %s' % os.getcwd())
sys.exit(1)
merge_cmd = [
llvm_profdata,
diff -r 72f6df8e0ae6 mfbt/tests/moz.build
--- a/mfbt/tests/moz.build Thu Oct 22 10:17:13 2020 +0000
+++ b/mfbt/tests/moz.build Mon Oct 26 19:48:07 2020 -0700
@@ -71,19 +71,19 @@
'TestWeakPtr',
'TestWrappingOperations',
'TestXorShift128PlusRNG',
])
# Not to be unified with the rest, because this test
# sets MOZ_PRETEND_NO_JSRUST, which changes the behavior
# of the included headers.
-CppUnitTests([
- 'TestUtf8',
-])
+#CppUnitTests([
+# 'TestUtf8',
+#])
if not CONFIG['MOZ_ASAN']:
CppUnitTests([
'TestPoisonArea',
])
# Since we link directly with MFBT object files, define IMPL_MFBT
DEFINES['IMPL_MFBT'] = True
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.