From 6005490cacb8734a81d84ef4af60a7868da7dff6 Mon Sep 17 00:00:00 2001 From: Nathan Froyd Date: Mon, 23 Dec 2019 16:49:32 +0000 Subject: [PATCH] Bug 1605537 - override optimization settings for wasm compilation; r=firefox-build-system-reviewers,rstewart The optimization flags that may have been chosen for our target compiler are not necessarily appropriate for our wasm compiler. Differential Revision: https://phabricator.services.mozilla.com/D58070 --HG-- extra : moz-landing-system : lando --- python/mozbuild/mozbuild/frontend/context.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/python/mozbuild/mozbuild/frontend/context.py b/python/mozbuild/mozbuild/frontend/context.py index 64f1c1350df4..a51b01309af7 100644 --- a/python/mozbuild/mozbuild/frontend/context.py +++ b/python/mozbuild/mozbuild/frontend/context.py @@ -611,6 +611,16 @@ class WasmFlags(TargetCompileFlags): TargetCompileFlags.__init__(self, context) + def _optimize_flags(self): + if not self._context.config.substs.get('MOZ_OPTIMIZE'): + return [] + + # We don't want `MOZ_{PGO_,}OPTIMIZE_FLAGS here because they may contain + # optimization flags that aren't suitable for wasm (e.g. -freorder-blocks). + # Just optimize for size in all cases; we may want to make this + # configurable. + return ['-Os'] + class FinalTargetValue(ContextDerivedValue, six.text_type): def __new__(cls, context, value=""):