summaryrefslogtreecommitdiffstats
path: root/debian/patches
diff options
context:
space:
mode:
Diffstat (limited to 'debian/patches')
-rw-r--r--debian/patches/debian-hacks/Add-a-2-minutes-timeout-on-xpcshell-tests.patch47
-rw-r--r--debian/patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch34
-rw-r--r--debian/patches/debian-hacks/Add-debian-extra-stuff-to-upstream-build-system-dire.patch20
-rw-r--r--debian/patches/debian-hacks/Add-missing-webrtc-directory-for-ppc64el-bz-1775202.patch20
-rw-r--r--debian/patches/debian-hacks/Allow-to-override-rust-LTO-flag.patch31
-rw-r--r--debian/patches/debian-hacks/Avoid-using-vmrs-vmsr-on-armel.patch21
-rw-r--r--debian/patches/debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch37
-rw-r--r--debian/patches/debian-hacks/Don-t-build-image-gtests.patch23
-rw-r--r--debian/patches/debian-hacks/Fix-math_private.h-for-i386-FTBFS.patch24
-rw-r--r--debian/patches/debian-hacks/Relax-minimum-supporter-rust-version-to-1.63.patch373
-rw-r--r--debian/patches/debian-hacks/Relax-nodejs-minimum-version.patch21
-rw-r--r--debian/patches/debian-hacks/Remove-workaround-for-old-libstdc-problem-which-now-.patch56
-rw-r--r--debian/patches/debian-hacks/Use-build-id-as-langpack-version-for-reproducibility.patch21
-rw-r--r--debian/patches/debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch21
-rw-r--r--debian/patches/debian-hacks/Work-around-bz-1775202-to-fix-FTBFS-on-ppc64el.patch23
-rw-r--r--debian/patches/fixes/Allow-.js-preference-files-to-set-locked-prefs-with-.patch79
-rw-r--r--debian/patches/fixes/Bug-1795993-Fix-webrtc-FTBFS-from-missing-sse2-flags.patch8780
-rw-r--r--debian/patches/fixes/Bug-1810584-Suppress-false-positive-error-for-gcc-r-.patch24
-rw-r--r--debian/patches/porting/Add-xptcall-support-for-SH4-processors.patch516
-rw-r--r--debian/patches/porting/NSS-Fix-FTBFS-on-Hurd-because-of-MAXPATHLEN.patch63
-rw-r--r--debian/patches/porting/Use-NEON_FLAGS-instead-of-VPX_ASFLAGS-for-libaom-neo.patch21
-rw-r--r--debian/patches/porting/Use-compiler-macros-to-detect-big-endian.patch68
-rw-r--r--debian/patches/porting/Work-around-GCC-ICE-on-mips-i386-and-s390x.patch22
-rw-r--r--debian/patches/porting/Work-around-another-GCC-ICE-on-arm.patch21
-rw-r--r--debian/patches/prefs/Don-t-auto-disable-extensions-in-system-directories.patch21
-rw-r--r--debian/patches/prefs/Set-DPI-to-system-settings.patch21
-rw-r--r--debian/patches/series26
27 files changed, 10434 insertions, 0 deletions
diff --git a/debian/patches/debian-hacks/Add-a-2-minutes-timeout-on-xpcshell-tests.patch b/debian/patches/debian-hacks/Add-a-2-minutes-timeout-on-xpcshell-tests.patch
new file mode 100644
index 0000000000..2aaafbfd9b
--- /dev/null
+++ b/debian/patches/debian-hacks/Add-a-2-minutes-timeout-on-xpcshell-tests.patch
@@ -0,0 +1,47 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Mon, 27 Dec 2010 10:44:28 +0100
+Subject: Add a 2 minutes timeout on xpcshell tests
+
+---
+ testing/xpcshell/runxpcshelltests.py | 21 ++++++++++++++++++---
+ 1 file changed, 18 insertions(+), 3 deletions(-)
+
+diff --git a/testing/xpcshell/runxpcshelltests.py b/testing/xpcshell/runxpcshelltests.py
+index 8a5378e..42e8255 100755
+--- a/testing/xpcshell/runxpcshelltests.py
++++ b/testing/xpcshell/runxpcshelltests.py
+@@ -10,6 +10,7 @@ import os
+ import pipes
+ import random
+ import re
++import select
+ import shutil
+ import signal
+ import subprocess
+@@ -838,9 +839,23 @@ class XPCShellTestThread(Thread):
+ if self.interactive:
+ self.log.info("%s | Process ID: %d" % (name, self.proc_ident))
+
+- # Communicate returns a tuple of (stdout, stderr), however we always
+- # redirect stderr to stdout, so the second element is ignored.
+- process_output, _ = self.communicate(proc)
++ if self.pStdout == PIPE:
++ process_stdout = ""
++ while True:
++ (r, w, e) = select.select([proc.stdout], [], [], 120)
++ if len(r) == 0:
++ process_stdout += "TEST-UNEXPECTED-FAIL | %s | application timed out after 120 seconds with no output" % (test)
++ proc.kill()
++ break
++ line = proc.stdout.read(1)
++ if line == "":
++ break
++ process_stdout += line
++ proc.wait()
++ else:
++ # Communicate returns a tuple of (stdout, stderr), however we always
++ # redirect stderr to stdout, so the second element is ignored.
++ process_output, _ = self.communicate(proc)
+
+ if self.interactive:
+ # Not sure what else to do here...
diff --git a/debian/patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch b/debian/patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch
new file mode 100644
index 0000000000..bd617dff70
--- /dev/null
+++ b/debian/patches/debian-hacks/Add-another-preferences-directory-for-applications-p.patch
@@ -0,0 +1,34 @@
+From: Mike Hommey <glandium@debian.org>
+Date: Sat, 21 Jun 2008 03:09:21 +0200
+Subject: Add another preferences directory for applications:
+ preferences/syspref
+
+It was existing in previous versions of iceweasel as a symlink to
+/etc/iceweasel/pref.
+
+This has the side effect to make these preferences there work again, and
+to disable the "set as default browser" dialog.
+---
+ toolkit/xre/nsXREDirProvider.cpp | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp
+index e8a4f54..83a91dd 100644
+--- a/toolkit/xre/nsXREDirProvider.cpp
++++ b/toolkit/xre/nsXREDirProvider.cpp
+@@ -787,6 +787,7 @@ static const char* const kAppendPrefDir[] = {"defaults", "preferences",
+ static const char* const kAppendBackgroundTasksPrefDir[] = {
+ "defaults", "backgroundtasks", nullptr};
+ #endif
++static const char *const kAppendSysPrefDir[] = { "defaults", "syspref", nullptr };
+
+ nsresult nsXREDirProvider::GetFilesInternal(const char* aProperty,
+ nsISimpleEnumerator** aResult) {
+@@ -803,6 +804,7 @@ nsresult nsXREDirProvider::GetFilesInternal(const char* aProperty,
+ LoadDirIntoArray(mXULAppDir, kAppendBackgroundTasksPrefDir, directories);
+ }
+ #endif
++ LoadDirIntoArray(mXULAppDir, kAppendSysPrefDir, directories);
+
+ rv = NS_NewArrayEnumerator(aResult, directories, NS_GET_IID(nsIFile));
+ } else if (!strcmp(aProperty, NS_APP_CHROME_DIR_LIST)) {
diff --git a/debian/patches/debian-hacks/Add-debian-extra-stuff-to-upstream-build-system-dire.patch b/debian/patches/debian-hacks/Add-debian-extra-stuff-to-upstream-build-system-dire.patch
new file mode 100644
index 0000000000..9a854ab73e
--- /dev/null
+++ b/debian/patches/debian-hacks/Add-debian-extra-stuff-to-upstream-build-system-dire.patch
@@ -0,0 +1,20 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Mon, 16 Dec 2013 10:53:58 +0900
+Subject: Add debian/extra-stuff to upstream build system directory traversal
+
+---
+ moz.build | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/moz.build b/moz.build
+index 80e23e9..a7b9599 100644
+--- a/moz.build
++++ b/moz.build
+@@ -210,4 +210,7 @@ SPHINX_TREES["mots"] = "docs/mots"
+
+ SPHINX_TREES["update-infrastructure"] = "docs/update-infrastructure"
+
++if not CONFIG["LIBXUL_SDK"]:
++ DIRS += ["debian/extra-stuff"]
++
+ include("build/templates.mozbuild")
diff --git a/debian/patches/debian-hacks/Add-missing-webrtc-directory-for-ppc64el-bz-1775202.patch b/debian/patches/debian-hacks/Add-missing-webrtc-directory-for-ppc64el-bz-1775202.patch
new file mode 100644
index 0000000000..f6367a51f9
--- /dev/null
+++ b/debian/patches/debian-hacks/Add-missing-webrtc-directory-for-ppc64el-bz-1775202.patch
@@ -0,0 +1,20 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Mon, 15 Aug 2022 15:41:15 +0900
+Subject: Add missing webrtc directory for ppc64el (bz#1775202)
+
+---
+ third_party/libwebrtc/moz.build | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/third_party/libwebrtc/moz.build b/third_party/libwebrtc/moz.build
+index e405ed6..01cd3d6 100644
+--- a/third_party/libwebrtc/moz.build
++++ b/third_party/libwebrtc/moz.build
+@@ -627,6 +627,7 @@ if CONFIG["CPU_ARCH"] == "ppc64" and CONFIG["OS_TARGET"] == "Linux":
+ "/third_party/libwebrtc/modules/audio_coding/isac_gn",
+ "/third_party/libwebrtc/modules/desktop_capture/desktop_capture_generic_gn",
+ "/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn",
++ "/third_party/libwebrtc/modules/desktop_capture/primitives_gn",
+ ]
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
diff --git a/debian/patches/debian-hacks/Allow-to-override-rust-LTO-flag.patch b/debian/patches/debian-hacks/Allow-to-override-rust-LTO-flag.patch
new file mode 100644
index 0000000000..d18b9360f3
--- /dev/null
+++ b/debian/patches/debian-hacks/Allow-to-override-rust-LTO-flag.patch
@@ -0,0 +1,31 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Sun, 14 Aug 2022 15:05:23 +0900
+Subject: Allow to override rust LTO flag
+
+---
+ config/makefiles/rust.mk | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/config/makefiles/rust.mk b/config/makefiles/rust.mk
+index 9afd7e7..2848d04 100644
+--- a/config/makefiles/rust.mk
++++ b/config/makefiles/rust.mk
+@@ -92,8 +92,9 @@ ifndef rustflags_sancov
+ # Never enable when coverage is enabled to work around https://github.com/rust-lang/rust/issues/90045.
+ ifndef MOZ_CODE_COVERAGE
+ ifeq (,$(findstring gkrust_gtest,$(RUST_LIBRARY_FILE)))
+-cargo_rustc_flags += -Clto
++cargo_rustc_flags += $(or $(DEBIAN_RUST_LTO),-Clto)
+ endif
++ifneq (-Clto=off,$(DEBIAN_RUST_LTO))
+ # We need -Cembed-bitcode=yes for all crates when using -Clto.
+ RUSTFLAGS += -Cembed-bitcode=yes
+ endif
+@@ -101,6 +102,7 @@ endif
+ endif
+ endif
+ endif
++endif
+
+ ifdef CARGO_INCREMENTAL
+ export CARGO_INCREMENTAL
diff --git a/debian/patches/debian-hacks/Avoid-using-vmrs-vmsr-on-armel.patch b/debian/patches/debian-hacks/Avoid-using-vmrs-vmsr-on-armel.patch
new file mode 100644
index 0000000000..ffe17912ca
--- /dev/null
+++ b/debian/patches/debian-hacks/Avoid-using-vmrs-vmsr-on-armel.patch
@@ -0,0 +1,21 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Tue, 22 May 2018 07:51:56 +0900
+Subject: Avoid using vmrs/vmsr on armel
+
+---
+ dom/media/webaudio/blink/DenormalDisabler.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/dom/media/webaudio/blink/DenormalDisabler.h b/dom/media/webaudio/blink/DenormalDisabler.h
+index 646482b..8803a7d 100644
+--- a/dom/media/webaudio/blink/DenormalDisabler.h
++++ b/dom/media/webaudio/blink/DenormalDisabler.h
+@@ -45,7 +45,7 @@ namespace WebCore {
+ # define HAVE_DENORMAL 1
+ #endif
+
+-#if defined(__arm__) || defined(__aarch64__)
++#if (defined(__arm__) && !defined(__SOFTFP__)) || defined(__aarch64__)
+ # define HAVE_DENORMAL 1
+ #endif
+
diff --git a/debian/patches/debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch b/debian/patches/debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch
new file mode 100644
index 0000000000..1af4423c17
--- /dev/null
+++ b/debian/patches/debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch
@@ -0,0 +1,37 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Thu, 12 Nov 2009 17:18:31 +0100
+Subject: Avoid wrong sessionstore data to keep windows out of user sight
+
+It happens that sessionstore can keep wrong information for the window
+position or minimized state. Workaround this until the real bug is found
+and fixed (probably in xulrunner).
+
+Closes: #552426, #553453
+---
+ browser/components/sessionstore/SessionStore.sys.mjs | 5 ++---
+ 1 file changed, 2 insertions(+), 3 deletions(-)
+
+diff --git a/browser/components/sessionstore/SessionStore.sys.mjs b/browser/components/sessionstore/SessionStore.sys.mjs
+index 36d2bb4..a46ea43 100644
+--- a/browser/components/sessionstore/SessionStore.sys.mjs
++++ b/browser/components/sessionstore/SessionStore.sys.mjs
+@@ -5154,7 +5154,7 @@ var SessionStoreInternal = {
+ // _getWindowDimension.
+ let desktopToCssScale =
+ aWindow.desktopToDeviceScale / aWindow.devicePixelRatio;
+- aWindow.moveTo(aLeft * desktopToCssScale, aTop * desktopToCssScale);
++ aWindow.moveTo((aLeft < -aWidth) ? 0 : aLeft * desktopToCssScale, (aTop < -aHeight) ? 0 : aTop * desktopToCssScale);
+ }
+ if (
+ aWidth &&
+@@ -5183,9 +5183,8 @@ var SessionStoreInternal = {
+ case "minimized":
+ if (aSizeModeBeforeMinimized == "maximized") {
+ aWindow.maximize();
++ break;
+ }
+- aWindow.minimize();
+- break;
+ case "normal":
+ aWindow.restore();
+ break;
diff --git a/debian/patches/debian-hacks/Don-t-build-image-gtests.patch b/debian/patches/debian-hacks/Don-t-build-image-gtests.patch
new file mode 100644
index 0000000000..b6884bbd98
--- /dev/null
+++ b/debian/patches/debian-hacks/Don-t-build-image-gtests.patch
@@ -0,0 +1,23 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Thu, 9 Jun 2016 14:45:44 +0900
+Subject: Don't build image/ gtests
+
+Building them causes an ICE with GCC 4.7. As they are not part of what
+is shipped, and not currently run either, just skip building them.
+---
+ image/moz.build | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/image/moz.build b/image/moz.build
+index aab71c1..5f2192c 100644
+--- a/image/moz.build
++++ b/image/moz.build
+@@ -5,8 +5,6 @@
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+ DIRS += ["build", "decoders", "encoders"]
+-if CONFIG["ENABLE_TESTS"]:
+- DIRS += ["test/gtest"]
+
+ if CONFIG["FUZZING_INTERFACES"]:
+ DIRS += ["test/fuzzing"]
diff --git a/debian/patches/debian-hacks/Fix-math_private.h-for-i386-FTBFS.patch b/debian/patches/debian-hacks/Fix-math_private.h-for-i386-FTBFS.patch
new file mode 100644
index 0000000000..1da8156de8
--- /dev/null
+++ b/debian/patches/debian-hacks/Fix-math_private.h-for-i386-FTBFS.patch
@@ -0,0 +1,24 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Sat, 27 Nov 2021 06:49:44 +0900
+Subject: Fix math_private.h for i386 FTBFS
+
+---
+ modules/fdlibm/src/math_private.h | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/modules/fdlibm/src/math_private.h b/modules/fdlibm/src/math_private.h
+index f4373f2..632d2c4 100644
+--- a/modules/fdlibm/src/math_private.h
++++ b/modules/fdlibm/src/math_private.h
+@@ -30,7 +30,11 @@
+ * Adapted from https://github.com/freebsd/freebsd-src/search?q=__double_t
+ */
+
++#if defined __FLT_EVAL_METHOD__ && (__FLT_EVAL_METHOD__ == 2)
++typedef long double __double_t;
++#else
+ typedef double __double_t;
++#endif
+ typedef __double_t double_t;
+ typedef float __float_t;
+
diff --git a/debian/patches/debian-hacks/Relax-minimum-supporter-rust-version-to-1.63.patch b/debian/patches/debian-hacks/Relax-minimum-supporter-rust-version-to-1.63.patch
new file mode 100644
index 0000000000..6410524f36
--- /dev/null
+++ b/debian/patches/debian-hacks/Relax-minimum-supporter-rust-version-to-1.63.patch
@@ -0,0 +1,373 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Wed, 1 Mar 2023 07:19:18 +0900
+Subject: Relax minimum supporter rust version to 1.63
+
+This reverts:
+- https://phabricator.services.mozilla.com/D165236
+- https://phabricator.services.mozilla.com/D165332
+---
+ Cargo.lock | 4 ++--
+ python/mozboot/mozboot/util.py | 2 +-
+ servo/components/selectors/context.rs | 2 +-
+ servo/components/selectors/parser.rs | 4 ++--
+ servo/components/style/gecko/selector_parser.rs | 7 ++++---
+ servo/components/style/properties/gecko.mako.rs | 13 ++-----------
+ servo/components/style/style_resolver.rs | 4 ++--
+ .../style/stylesheets/container_rule.rs | 16 ++++++++--------
+ servo/components/style/stylist.rs | 10 +++++-----
+ third_party/rust/cstr/.cargo-checksum.json | 2 +-
+ third_party/rust/cstr/Cargo.toml | 11 ++---------
+ third_party/rust/cstr/README.md | 2 +-
+ third_party/rust/cstr/src/lib.rs | 4 ++--
+ 13 files changed, 33 insertions(+), 48 deletions(-)
+
+diff --git a/Cargo.lock b/Cargo.lock
+index 86617c3..be7d828 100644
+--- a/Cargo.lock
++++ b/Cargo.lock
+@@ -1128,9 +1128,9 @@ dependencies = [
+
+ [[package]]
+ name = "cstr"
+-version = "0.2.11"
++version = "0.2.10"
+ source = "registry+https://github.com/rust-lang/crates.io-index"
+-checksum = "8aa998c33a6d3271e3678950a22134cd7dd27cef86dee1b611b5b14207d1d90b"
++checksum = "a60f0dd132e4b67f20fd764d4835d968f666ff1a2f59e432983d168b98424deb"
+ dependencies = [
+ "proc-macro2",
+ "quote",
+diff --git a/python/mozboot/mozboot/util.py b/python/mozboot/mozboot/util.py
+index 667df3b..bdb5ac1 100644
+--- a/python/mozboot/mozboot/util.py
++++ b/python/mozboot/mozboot/util.py
+@@ -10,7 +10,7 @@ from urllib.request import urlopen
+ from mach.site import PythonVirtualenv
+ from mach.util import get_state_dir
+
+-MINIMUM_RUST_VERSION = "1.65.0"
++MINIMUM_RUST_VERSION = "1.63.0"
+
+
+ def get_tools_dir(srcdir=False):
+diff --git a/servo/components/selectors/context.rs b/servo/components/selectors/context.rs
+index e29abe6..f595389 100644
+--- a/servo/components/selectors/context.rs
++++ b/servo/components/selectors/context.rs
+@@ -145,7 +145,7 @@ where
+ pub pseudo_element_matching_fn: Option<&'a dyn Fn(&Impl::PseudoElement) -> bool>,
+
+ /// Extra implementation-dependent matching data.
+- pub extra_data: Impl::ExtraMatchingData<'a>,
++ pub extra_data: Impl::ExtraMatchingData,
+
+ quirks_mode: QuirksMode,
+ needs_selector_flags: NeedsSelectorFlags,
+diff --git a/servo/components/selectors/parser.rs b/servo/components/selectors/parser.rs
+index b5cbd64..183a4f9 100644
+--- a/servo/components/selectors/parser.rs
++++ b/servo/components/selectors/parser.rs
+@@ -194,7 +194,7 @@ macro_rules! with_all_bounds {
+ /// are parameterized on SelectorImpl. See
+ /// <https://github.com/rust-lang/rust/issues/26925>
+ pub trait SelectorImpl: Clone + Debug + Sized + 'static {
+- type ExtraMatchingData<'a>: Sized + Default;
++ type ExtraMatchingData: Sized + Default + 'static;
+ type AttrValue: $($InSelector)*;
+ type Identifier: $($InSelector)*;
+ type LocalName: $($InSelector)* + Borrow<Self::BorrowedLocalName>;
+@@ -2791,7 +2791,7 @@ pub mod tests {
+ }
+
+ impl SelectorImpl for DummySelectorImpl {
+- type ExtraMatchingData<'a> = std::marker::PhantomData<&'a ()>;
++ type ExtraMatchingData = ();
+ type AttrValue = DummyAttrValue;
+ type Identifier = DummyAtom;
+ type LocalName = DummyAtom;
+diff --git a/servo/components/style/gecko/selector_parser.rs b/servo/components/style/gecko/selector_parser.rs
+index d149cf7..eb1ce3e 100644
+--- a/servo/components/style/gecko/selector_parser.rs
++++ b/servo/components/style/gecko/selector_parser.rs
+@@ -18,6 +18,7 @@ use cssparser::{CowRcStr, SourceLocation, ToCss, Token};
+ use dom::{DocumentState, ElementState};
+ use selectors::parser::SelectorParseErrorKind;
+ use selectors::SelectorList;
++use servo_arc::Arc;
+ use std::fmt;
+ use style_traits::{CssWriter, ParseError, StyleParseErrorKind, ToCss as ToCss_};
+
+@@ -235,7 +236,7 @@ pub struct SelectorImpl;
+ /// A set of extra data to carry along with the matching context, either for
+ /// selector-matching or invalidation.
+ #[derive(Default)]
+-pub struct ExtraMatchingData<'a> {
++pub struct ExtraMatchingData {
+ /// The invalidation data to invalidate doc-state pseudo-classes correctly.
+ pub invalidation_data: InvalidationMatchingData,
+
+@@ -245,11 +246,11 @@ pub struct ExtraMatchingData<'a> {
+
+ /// The style of the originating element in order to evaluate @container
+ /// size queries affecting pseudo-elements.
+- pub originating_element_style: Option<&'a ComputedValues>,
++ pub originating_element_style: Option<Arc<ComputedValues>>,
+ }
+
+ impl ::selectors::SelectorImpl for SelectorImpl {
+- type ExtraMatchingData<'a> = ExtraMatchingData<'a>;
++ type ExtraMatchingData = ExtraMatchingData;
+ type AttrValue = AtomString;
+ type Identifier = AtomIdent;
+ type LocalName = AtomIdent;
+diff --git a/servo/components/style/properties/gecko.mako.rs b/servo/components/style/properties/gecko.mako.rs
+index 63316c0..85afb2c 100644
+--- a/servo/components/style/properties/gecko.mako.rs
++++ b/servo/components/style/properties/gecko.mako.rs
+@@ -103,15 +103,6 @@ impl ComputedValues {
+ ).to_outer(None)
+ }
+
+- /// Converts the computed values to an Arc<> from a reference.
+- pub fn to_arc(&self) -> Arc<Self> {
+- // SAFETY: We're guaranteed to be allocated as an Arc<> since the
+- // functions above are the only ones that create ComputedValues
+- // instances in Gecko (and that must be the case since ComputedValues'
+- // member is private).
+- unsafe { Arc::from_raw_addrefed(self) }
+- }
+-
+ #[inline]
+ pub fn is_pseudo_style(&self) -> bool {
+ self.0.mPseudoType != PseudoStyleType::NotPseudo
+@@ -217,8 +208,8 @@ impl ComputedValuesInner {
+ &self,
+ pseudo_ty,
+ );
+- // We're simulating move semantics by having C++ do a memcpy and
+- // then forgetting it on this end.
++ // We're simulating move semantics by having C++ do a memcpy and then forgetting
++ // it on this end.
+ forget(self);
+ UniqueArc::assume_init(arc).shareable()
+ }
+diff --git a/servo/components/style/style_resolver.rs b/servo/components/style/style_resolver.rs
+index 19a5338..e2ad792 100644
+--- a/servo/components/style/style_resolver.rs
++++ b/servo/components/style/style_resolver.rs
+@@ -507,7 +507,7 @@ where
+
+ fn match_pseudo(
+ &mut self,
+- originating_element_style: &ComputedValues,
++ originating_element_style: &Arc<ComputedValues>,
+ pseudo_element: &PseudoElement,
+ visited_handling: VisitedHandlingMode,
+ ) -> Option<MatchingResults> {
+@@ -544,7 +544,7 @@ where
+ NeedsSelectorFlags::Yes,
+ );
+ matching_context.extra_data.originating_element_style =
+- Some(originating_element_style);
++ Some(originating_element_style.clone());
+
+ // NB: We handle animation rules for ::before and ::after when
+ // traversing them.
+diff --git a/servo/components/style/stylesheets/container_rule.rs b/servo/components/style/stylesheets/container_rule.rs
+index f9d488b..74ea7c5 100644
+--- a/servo/components/style/stylesheets/container_rule.rs
++++ b/servo/components/style/stylesheets/container_rule.rs
+@@ -135,14 +135,14 @@ enum TraversalResult<T> {
+ Done(T),
+ }
+
+-fn traverse_container<E, F, R>(
++fn traverse_container<E, S, F, R>(
+ mut e: E,
+- originating_element_style: Option<&ComputedValues>,
++ originating_element_style: Option<&S>,
+ evaluator: F,
+ ) -> Option<(E, R)>
+ where
+ E: TElement,
+- F: Fn(E, Option<&ComputedValues>) -> TraversalResult<R>,
++ F: Fn(E, Option<&S>) -> TraversalResult<R>,
+ {
+ if originating_element_style.is_some() {
+ match evaluator(e, originating_element_style) {
+@@ -185,7 +185,7 @@ impl ContainerCondition {
+ fn valid_container_info<E>(
+ &self,
+ potential_container: E,
+- originating_element_style: Option<&ComputedValues>,
++ originating_element_style: Option<&Arc<ComputedValues>>,
+ ) -> TraversalResult<ContainerLookupResult<E>>
+ where
+ E: TElement,
+@@ -198,7 +198,7 @@ impl ContainerCondition {
+ Some(d) => d,
+ None => return TraversalResult::InProgress,
+ };
+- &**data.styles.primary()
++ data.styles.primary()
+ },
+ };
+ let wm = style.writing_mode;
+@@ -220,7 +220,7 @@ impl ContainerCondition {
+ }
+
+ let size = potential_container.query_container_size(&box_style.clone_display());
+- let style = style.to_arc();
++ let style = style.clone();
+ TraversalResult::Done(ContainerLookupResult {
+ element: potential_container,
+ info: ContainerInfo { size, wm },
+@@ -232,7 +232,7 @@ impl ContainerCondition {
+ pub fn find_container<E>(
+ &self,
+ e: E,
+- originating_element_style: Option<&ComputedValues>,
++ originating_element_style: Option<&Arc<ComputedValues>>,
+ ) -> Option<ContainerLookupResult<E>>
+ where
+ E: TElement,
+@@ -254,7 +254,7 @@ impl ContainerCondition {
+ &self,
+ device: &Device,
+ element: E,
+- originating_element_style: Option<&ComputedValues>,
++ originating_element_style: Option<&Arc<ComputedValues>>,
+ invalidation_flags: &mut ComputedValueFlags,
+ ) -> KleeneValue
+ where
+diff --git a/servo/components/style/stylist.rs b/servo/components/style/stylist.rs
+index e4d0e79..6a42d87 100644
+--- a/servo/components/style/stylist.rs
++++ b/servo/components/style/stylist.rs
+@@ -966,7 +966,7 @@ impl Stylist {
+ element: E,
+ pseudo: &PseudoElement,
+ rule_inclusion: RuleInclusion,
+- originating_element_style: &ComputedValues,
++ originating_element_style: &Arc<ComputedValues>,
+ parent_style: &Arc<ComputedValues>,
+ is_probe: bool,
+ matching_fn: Option<&dyn Fn(&PseudoElement) -> bool>,
+@@ -1112,7 +1112,7 @@ impl Stylist {
+ &self,
+ guards: &StylesheetGuards,
+ element: E,
+- originating_element_style: &ComputedValues,
++ originating_element_style: &Arc<ComputedValues>,
+ parent_style: &Arc<ComputedValues>,
+ pseudo: &PseudoElement,
+ is_probe: bool,
+@@ -1143,7 +1143,7 @@ impl Stylist {
+
+ matching_context.pseudo_element_matching_fn = matching_fn;
+ matching_context.extra_data.originating_element_style =
+- Some(originating_element_style);
++ Some(originating_element_style.clone());
+
+ self.push_applicable_declarations(
+ element,
+@@ -1175,7 +1175,7 @@ impl Stylist {
+ );
+ matching_context.pseudo_element_matching_fn = matching_fn;
+ matching_context.extra_data.originating_element_style =
+- Some(originating_element_style);
++ Some(originating_element_style.clone());
+
+ self.push_applicable_declarations(
+ element,
+@@ -2385,7 +2385,7 @@ impl CascadeData {
+ .matches(
+ stylist.device(),
+ element,
+- context.extra_data.originating_element_style,
++ context.extra_data.originating_element_style.as_ref(),
+ &mut context.extra_data.cascade_input_flags,
+ )
+ .to_bool(/* unknown = */ false);
+diff --git a/third_party/rust/cstr/.cargo-checksum.json b/third_party/rust/cstr/.cargo-checksum.json
+index 9d9ca8a..d6c4e0e 100644
+--- a/third_party/rust/cstr/.cargo-checksum.json
++++ b/third_party/rust/cstr/.cargo-checksum.json
+@@ -1 +1 @@
+-{"files":{"Cargo.toml":"9766da0dcd235f8d0d4ebdc925050558710adfd4495c123b1f4997666869d524","LICENSE":"5a9bf0e7661617253ca7c12313f51a96aa62dec0bcd15a59c533c88b8093d124","README.md":"8fdfa924e95d7a83f3c032dcc103cb411743c404e7e080b985c97b5db90eea24","src/lib.rs":"ad266f1d5c682943741344d84dba39c516c3b8b26b34a4ff2c858de9934cdfe5","src/parse.rs":"19214fac49af5852b93a37d43af6ee93e62a1e95e3a629f8d5da254925b7d294","tests/clippy_lints.rs":"4398124cd5bc3a7f295f6203d543fc7d99abfd945eb7418ccfa60535586d7e37","tests/compile_fail/empty.rs":"52dc3c0d4d6ee0bd6d89a34d1caf38d159830401f24ba30f5655f9de92697903","tests/compile_fail/empty.stderr":"dbcf3dab8a8638b833df9089d9bc9ff7494f39dbb91e94bdd769912678ccf7f8","tests/compile_fail/interior-nul.rs":"ecc09440020287377ca18e4b8308d1d516620a87612a5381bafc01fe48734d34","tests/compile_fail/interior-nul.stderr":"8bd003a7dfff248411403bdf666f8a0631307f468d589cf01e475b062db4b101","tests/compile_fail/non-str.rs":"e08be18a524a4482fb7f34cbc6e8448a878b41cf2c26dea99268aaabab6c3f3f","tests/compile_fail/non-str.stderr":"8dff245264d9c69dc151f742542a72400d7422f2a0f2b133a9f4d4fc96a4016a","tests/compile_fail/trash-after.rs":"7dff7a301c9087984c5acda183e34492f3d0f2ebec14b8dc0d2b11aab972a111","tests/compile_fail/trash-after.stderr":"487b5d6b687c52b80f9d9cba691a8654067a88f7d03d2d952d7e97d610ab70f3","tests/compile_test.rs":"13e3e0d22ec0dffa4d0be0c4db6381a03feff50cc25aa65c4950cc7e865d122d","tests/pass/byte_str_lit.rs":"9085e1f1e67dae193d33ff59c253cac23c9e23e9d8c7f92f0aba99097ade132e","tests/pass/const.rs":"777aeb93c3030349529a41ac62b3577b36badc4bada4ec46e45b5055d3676dbd","tests/pass/ident.rs":"5116ee71578d479d899345e039e5955b5dee442234dc504e1a9bfb9260cf8f15","tests/pass/macro.rs":"9596c936ed4d963fb40459ecd98b60610d3d90e41918f350ff45b6129b1aa0b7","tests/pass/str_lit.rs":"955fb887ebc01538bafe10fa810381eb53aebaafb8b36053e8712c081862fe7a"},"package":"8aa998c33a6d3271e3678950a22134cd7dd27cef86dee1b611b5b14207d1d90b"}
+\ No newline at end of file
++{"files":{"Cargo.toml":"efcf30ffc92f8247fde5ac01eb17820b53de43d8407fdab0e6ba226e0538e0f2","LICENSE":"5a9bf0e7661617253ca7c12313f51a96aa62dec0bcd15a59c533c88b8093d124","README.md":"6dd83f5c2d0f29317921e2c1050740cb24e273d5d83409f21d5b955026934804","src/lib.rs":"a54a9c9b3ea2346a2b82f4a66f9614f5596278cd20857a502d272a9ce5c4da4e","src/parse.rs":"19214fac49af5852b93a37d43af6ee93e62a1e95e3a629f8d5da254925b7d294","tests/clippy_lints.rs":"4398124cd5bc3a7f295f6203d543fc7d99abfd945eb7418ccfa60535586d7e37","tests/compile_fail/empty.rs":"52dc3c0d4d6ee0bd6d89a34d1caf38d159830401f24ba30f5655f9de92697903","tests/compile_fail/empty.stderr":"dbcf3dab8a8638b833df9089d9bc9ff7494f39dbb91e94bdd769912678ccf7f8","tests/compile_fail/interior-nul.rs":"ecc09440020287377ca18e4b8308d1d516620a87612a5381bafc01fe48734d34","tests/compile_fail/interior-nul.stderr":"8bd003a7dfff248411403bdf666f8a0631307f468d589cf01e475b062db4b101","tests/compile_fail/non-str.rs":"e08be18a524a4482fb7f34cbc6e8448a878b41cf2c26dea99268aaabab6c3f3f","tests/compile_fail/non-str.stderr":"8dff245264d9c69dc151f742542a72400d7422f2a0f2b133a9f4d4fc96a4016a","tests/compile_fail/trash-after.rs":"7dff7a301c9087984c5acda183e34492f3d0f2ebec14b8dc0d2b11aab972a111","tests/compile_fail/trash-after.stderr":"487b5d6b687c52b80f9d9cba691a8654067a88f7d03d2d952d7e97d610ab70f3","tests/compile_test.rs":"13e3e0d22ec0dffa4d0be0c4db6381a03feff50cc25aa65c4950cc7e865d122d","tests/pass/byte_str_lit.rs":"9085e1f1e67dae193d33ff59c253cac23c9e23e9d8c7f92f0aba99097ade132e","tests/pass/const.rs":"777aeb93c3030349529a41ac62b3577b36badc4bada4ec46e45b5055d3676dbd","tests/pass/ident.rs":"5116ee71578d479d899345e039e5955b5dee442234dc504e1a9bfb9260cf8f15","tests/pass/macro.rs":"9596c936ed4d963fb40459ecd98b60610d3d90e41918f350ff45b6129b1aa0b7","tests/pass/str_lit.rs":"955fb887ebc01538bafe10fa810381eb53aebaafb8b36053e8712c081862fe7a"},"package":"a60f0dd132e4b67f20fd764d4835d968f666ff1a2f59e432983d168b98424deb"}
+\ No newline at end of file
+diff --git a/third_party/rust/cstr/Cargo.toml b/third_party/rust/cstr/Cargo.toml
+index 712f393..046519f 100644
+--- a/third_party/rust/cstr/Cargo.toml
++++ b/third_party/rust/cstr/Cargo.toml
+@@ -11,31 +11,24 @@
+
+ [package]
+ edition = "2018"
+-rust-version = "1.64"
+ name = "cstr"
+-version = "0.2.11"
++version = "0.2.10"
+ authors = ["Xidorn Quan <me@upsuper.org>"]
+ description = "Macro for building static CStr reference"
+ readme = "README.md"
+-keywords = [
+- "macro",
+- "cstr",
+-]
++keywords = ["macro", "cstr"]
+ license = "MIT"
+ repository = "https://github.com/upsuper/cstr"
+
+ [lib]
+ proc-macro = true
+-
+ [dependencies.proc-macro2]
+ version = "1"
+
+ [dependencies.quote]
+ version = "1"
+-
+ [dev-dependencies.trybuild]
+ version = "1.0.30"
+-
+ [badges.travis-ci]
+ branch = "master"
+ repository = "upsuper/cstr"
+diff --git a/third_party/rust/cstr/README.md b/third_party/rust/cstr/README.md
+index 7ee3ba2..9ebda24 100644
+--- a/third_party/rust/cstr/README.md
++++ b/third_party/rust/cstr/README.md
+@@ -11,7 +11,7 @@ A macro for getting `&'static CStr` from literal or identifier.
+ This macro checks whether the given literal is valid for `CStr`
+ at compile time, and returns a static reference of `CStr`.
+
+-This macro can be used to to initialize constants on Rust 1.64 and above.
++This macro can be used to to initialize constants on Rust 1.59 and above.
+
+ ## Example
+
+diff --git a/third_party/rust/cstr/src/lib.rs b/third_party/rust/cstr/src/lib.rs
+index c9e69d9..91d83ae 100644
+--- a/third_party/rust/cstr/src/lib.rs
++++ b/third_party/rust/cstr/src/lib.rs
+@@ -3,7 +3,7 @@
+ //! This macro checks whether the given literal is valid for `CStr`
+ //! at compile time, and returns a static reference of `CStr`.
+ //!
+-//! This macro can be used to to initialize constants on Rust 1.64 and above.
++//! This macro can be used to to initialize constants on Rust 1.59 and above.
+ //!
+ //! ## Example
+ //!
+@@ -37,7 +37,7 @@ struct Error(Span, &'static str);
+ #[proc_macro]
+ pub fn cstr(input: RawTokenStream) -> RawTokenStream {
+ let tokens = match build_byte_str(input.into()) {
+- Ok(s) => quote!(unsafe { ::core::ffi::CStr::from_bytes_with_nul_unchecked(#s) }),
++ Ok(s) => quote!(unsafe { ::std::ffi::CStr::from_bytes_with_nul_unchecked(#s) }),
+ Err(Error(span, msg)) => quote_spanned!(span => compile_error!(#msg)),
+ };
+ tokens.into()
diff --git a/debian/patches/debian-hacks/Relax-nodejs-minimum-version.patch b/debian/patches/debian-hacks/Relax-nodejs-minimum-version.patch
new file mode 100644
index 0000000000..8839a39026
--- /dev/null
+++ b/debian/patches/debian-hacks/Relax-nodejs-minimum-version.patch
@@ -0,0 +1,21 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Wed, 21 Sep 2022 08:48:27 +0900
+Subject: Relax nodejs minimum version
+
+---
+ python/mozbuild/mozbuild/nodeutil.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/python/mozbuild/mozbuild/nodeutil.py b/python/mozbuild/mozbuild/nodeutil.py
+index 8ec724a..efc7b7f 100644
+--- a/python/mozbuild/mozbuild/nodeutil.py
++++ b/python/mozbuild/mozbuild/nodeutil.py
+@@ -11,7 +11,7 @@ from mozboot.util import get_tools_dir
+ from mozfile import which
+ from six import PY3
+
+-NODE_MIN_VERSION = StrictVersion("12.22.12")
++NODE_MIN_VERSION = StrictVersion("12.22")
+ NPM_MIN_VERSION = StrictVersion("6.14.16")
+
+
diff --git a/debian/patches/debian-hacks/Remove-workaround-for-old-libstdc-problem-which-now-.patch b/debian/patches/debian-hacks/Remove-workaround-for-old-libstdc-problem-which-now-.patch
new file mode 100644
index 0000000000..27017a8a31
--- /dev/null
+++ b/debian/patches/debian-hacks/Remove-workaround-for-old-libstdc-problem-which-now-.patch
@@ -0,0 +1,56 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Mon, 15 Aug 2022 14:49:40 +0900
+Subject: Remove workaround for old libstdc++ problem, which now causes
+ problems with GCC 12 on arm
+
+---
+ intl/icu/source/common/unicode/std_string.h | 5 -----
+ intl/icu/source/common/utypeinfo.h | 3 ---
+ intl/icu/source/io/unicode/ustream.h | 4 ----
+ 3 files changed, 12 deletions(-)
+
+diff --git a/intl/icu/source/common/unicode/std_string.h b/intl/icu/source/common/unicode/std_string.h
+index bf87230..c8388ef 100644
+--- a/intl/icu/source/common/unicode/std_string.h
++++ b/intl/icu/source/common/unicode/std_string.h
+@@ -29,11 +29,6 @@
+
+ #if U_SHOW_CPLUSPLUS_API
+
+-// Workaround for a libstdc++ bug before libstdc++4.6 (2011).
+-// https://bugs.llvm.org/show_bug.cgi?id=13364
+-#if defined(__GLIBCXX__)
+-namespace std { class type_info; }
+-#endif
+ #include <string>
+
+ #endif /* U_SHOW_CPLUSPLUS_API */
+diff --git a/intl/icu/source/common/utypeinfo.h b/intl/icu/source/common/utypeinfo.h
+index c666373..5d97240 100644
+--- a/intl/icu/source/common/utypeinfo.h
++++ b/intl/icu/source/common/utypeinfo.h
+@@ -24,9 +24,6 @@
+ #include <exception>
+ using std::exception;
+ #endif
+-#if defined(__GLIBCXX__)
+-namespace std { class type_info; } // WORKAROUND: http://llvm.org/bugs/show_bug.cgi?id=13364
+-#endif
+ #include <typeinfo> // for 'typeid' to work
+
+ #endif
+diff --git a/intl/icu/source/io/unicode/ustream.h b/intl/icu/source/io/unicode/ustream.h
+index 927342c..93ef51c 100644
+--- a/intl/icu/source/io/unicode/ustream.h
++++ b/intl/icu/source/io/unicode/ustream.h
+@@ -34,10 +34,6 @@
+ * C++ I/O stream API.
+ */
+
+-#if defined(__GLIBCXX__)
+-namespace std { class type_info; } // WORKAROUND: http://llvm.org/bugs/show_bug.cgi?id=13364
+-#endif
+-
+ #include <iostream>
+
+ U_NAMESPACE_BEGIN
diff --git a/debian/patches/debian-hacks/Use-build-id-as-langpack-version-for-reproducibility.patch b/debian/patches/debian-hacks/Use-build-id-as-langpack-version-for-reproducibility.patch
new file mode 100644
index 0000000000..463e1683ca
--- /dev/null
+++ b/debian/patches/debian-hacks/Use-build-id-as-langpack-version-for-reproducibility.patch
@@ -0,0 +1,21 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Fri, 12 Jul 2019 18:37:52 +0900
+Subject: Use build id as langpack version for reproducibility
+
+---
+ python/mozbuild/mozbuild/action/langpack_manifest.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/python/mozbuild/mozbuild/action/langpack_manifest.py b/python/mozbuild/mozbuild/action/langpack_manifest.py
+index 598f03e..cb97a9d 100644
+--- a/python/mozbuild/mozbuild/action/langpack_manifest.py
++++ b/python/mozbuild/mozbuild/action/langpack_manifest.py
+@@ -106,7 +106,7 @@ def get_timestamp_for_locale(path):
+ dt = get_dt_from_hg(path)
+
+ if dt is None:
+- dt = datetime.datetime.utcnow()
++ return os.environ['MOZ_BUILD_DATE']
+
+ dt = dt.replace(microsecond=0)
+ return dt.strftime("%Y%m%d%H%M%S")
diff --git a/debian/patches/debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch b/debian/patches/debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch
new file mode 100644
index 0000000000..a6c73700e3
--- /dev/null
+++ b/debian/patches/debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch
@@ -0,0 +1,21 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Sun, 2 Apr 2017 06:33:19 +0900
+Subject: Use the Mozilla Location Service key when the Google Key is not there
+
+---
+ modules/libpref/init/all.js | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules/libpref/init/all.js b/modules/libpref/init/all.js
+index 88e7709..bb03e1c 100644
+--- a/modules/libpref/init/all.js
++++ b/modules/libpref/init/all.js
+@@ -3283,7 +3283,7 @@ pref("network.psl.onUpdate_notify", false);
+
+ // All the Geolocation preferences are here.
+ //
+-#ifndef EARLY_BETA_OR_EARLIER
++#if !defined(EARLY_BETA_OR_EARLIER) && defined(GOOGLE_LOCATION_SERVICE_API_KEY)
+ pref("geo.provider.network.url", "https://www.googleapis.com/geolocation/v1/geolocate?key=%GOOGLE_LOCATION_SERVICE_API_KEY%");
+ #else
+ // Use MLS on Nightly and early Beta.
diff --git a/debian/patches/debian-hacks/Work-around-bz-1775202-to-fix-FTBFS-on-ppc64el.patch b/debian/patches/debian-hacks/Work-around-bz-1775202-to-fix-FTBFS-on-ppc64el.patch
new file mode 100644
index 0000000000..e35eb3a973
--- /dev/null
+++ b/debian/patches/debian-hacks/Work-around-bz-1775202-to-fix-FTBFS-on-ppc64el.patch
@@ -0,0 +1,23 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Sun, 14 Aug 2022 07:01:33 +0900
+Subject: Work around bz#1775202 to fix FTBFS on ppc64el
+
+---
+ third_party/libwebrtc/moz.build | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/third_party/libwebrtc/moz.build b/third_party/libwebrtc/moz.build
+index a32d3b3..e405ed6 100644
+--- a/third_party/libwebrtc/moz.build
++++ b/third_party/libwebrtc/moz.build
+@@ -624,7 +624,9 @@ if CONFIG["CPU_ARCH"] == "ppc64" and CONFIG["OS_TARGET"] == "Linux":
+ "/third_party/libwebrtc/api/audio_codecs/isac/audio_decoder_isac_float_gn",
+ "/third_party/libwebrtc/api/audio_codecs/isac/audio_encoder_isac_float_gn",
+ "/third_party/libwebrtc/modules/audio_coding/isac_c_gn",
+- "/third_party/libwebrtc/modules/audio_coding/isac_gn"
++ "/third_party/libwebrtc/modules/audio_coding/isac_gn",
++ "/third_party/libwebrtc/modules/desktop_capture/desktop_capture_generic_gn",
++ "/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn",
+ ]
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
diff --git a/debian/patches/fixes/Allow-.js-preference-files-to-set-locked-prefs-with-.patch b/debian/patches/fixes/Allow-.js-preference-files-to-set-locked-prefs-with-.patch
new file mode 100644
index 0000000000..7de2acec04
--- /dev/null
+++ b/debian/patches/fixes/Allow-.js-preference-files-to-set-locked-prefs-with-.patch
@@ -0,0 +1,79 @@
+From: Mike Hommey <glandium@debian.org>
+Date: Sat, 21 Jun 2008 02:48:46 +0200
+Subject: Allow .js preference files to set locked prefs with lockPref()
+
+---
+ modules/libpref/parser/src/lib.rs | 20 +++++++++++++-------
+ 1 file changed, 13 insertions(+), 7 deletions(-)
+
+diff --git a/modules/libpref/parser/src/lib.rs b/modules/libpref/parser/src/lib.rs
+index 3a0ad2c..c6e34be 100644
+--- a/modules/libpref/parser/src/lib.rs
++++ b/modules/libpref/parser/src/lib.rs
+@@ -11,8 +11,9 @@
+ //! ```text
+ //! <pref-file> = <pref>*
+ //! <pref> = <pref-spec> "(" <pref-name> "," <pref-value> <pref-attrs> ")" ";"
+-//! <pref-spec> = "user_pref" | "pref" | "sticky_pref" // in default pref files
++//! <pref-spec> = "user_pref" | "pref" | "sticky_pref" | "lockPref" // in default pref files
+ //! <pref-spec> = "user_pref" // in user pref files
++//! <pref-spec> = "user_pref" | "pref" | "sticky_pref | lockPref"
+ //! <pref-name> = <string-literal>
+ //! <pref-value> = <string-literal> | "true" | "false" | <int-value>
+ //! <int-value> = <sign>? <int-literal>
+@@ -169,6 +170,7 @@ enum Token {
+ // Keywords
+ Pref, // pref
+ StickyPref, // sticky_pref
++ LockPref, // lockPref
+ UserPref, // user_pref
+ True, // true
+ False, // false
+@@ -291,7 +293,7 @@ struct KeywordInfo {
+ token: Token,
+ }
+
+-const KEYWORD_INFOS: [KeywordInfo; 7] = [
++const KEYWORD_INFOS: [KeywordInfo; 8] = [
+ // These are ordered by frequency.
+ KeywordInfo {
+ string: b"pref",
+@@ -321,6 +323,10 @@ const KEYWORD_INFOS: [KeywordInfo; 7] = [
+ string: b"sticky_pref",
+ token: Token::StickyPref,
+ },
++ KeywordInfo {
++ string: b"lockPref",
++ token: Token::LockPref,
++ },
+ ];
+
+ struct Parser<'t> {
+@@ -373,14 +379,15 @@ impl<'t> Parser<'t> {
+ // this will be either the first token of a new pref, or EOF.
+ loop {
+ // <pref-spec>
+- let (pref_value_kind, mut is_sticky) = match token {
++ let (pref_value_kind, mut is_sticky, mut is_locked) = match token {
+ Token::Pref if self.kind == PrefValueKind::Default => {
+- (PrefValueKind::Default, false)
++ (PrefValueKind::Default, false, false)
+ }
+ Token::StickyPref if self.kind == PrefValueKind::Default => {
+- (PrefValueKind::Default, true)
++ (PrefValueKind::Default, true, false)
+ }
+- Token::UserPref => (PrefValueKind::User, false),
++ Token::LockPref => (PrefValueKind::Default, false, true),
++ Token::UserPref => (PrefValueKind::User, false, false),
+ Token::SingleChar(EOF) => return !self.has_errors,
+ _ => {
+ token = self.error_and_recover(
+@@ -490,7 +497,6 @@ impl<'t> Parser<'t> {
+ };
+
+ // ("," <pref-attr>)* // default pref files only
+- let mut is_locked = false;
+ let mut has_attrs = false;
+ if self.kind == PrefValueKind::Default {
+ let ok = loop {
diff --git a/debian/patches/fixes/Bug-1795993-Fix-webrtc-FTBFS-from-missing-sse2-flags.patch b/debian/patches/fixes/Bug-1795993-Fix-webrtc-FTBFS-from-missing-sse2-flags.patch
new file mode 100644
index 0000000000..888153e2a7
--- /dev/null
+++ b/debian/patches/fixes/Bug-1795993-Fix-webrtc-FTBFS-from-missing-sse2-flags.patch
@@ -0,0 +1,8780 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Wed, 19 Oct 2022 07:00:23 +0900
+Subject: Bug 1795993 - Fix webrtc FTBFS from missing sse2 flags.
+
+---
+ .../resource_adaptation_api_gn/moz.build | 8 +++++
+ .../api/audio/aec3_config_gn/moz.build | 8 +++++
+ .../api/audio/aec3_factory_gn/moz.build | 8 +++++
+ .../api/audio/audio_frame_api_gn/moz.build | 8 +++++
+ .../L16/audio_decoder_L16_gn/moz.build | 8 +++++
+ .../L16/audio_encoder_L16_gn/moz.build | 8 +++++
+ .../audio_codecs_api_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../g711/audio_decoder_g711_gn/moz.build | 8 +++++
+ .../g711/audio_encoder_g711_gn/moz.build | 8 +++++
+ .../g722/audio_decoder_g722_gn/moz.build | 8 +++++
+ .../g722/audio_encoder_g722_gn/moz.build | 8 +++++
+ .../ilbc/audio_decoder_ilbc_gn/moz.build | 8 +++++
+ .../ilbc/audio_encoder_ilbc_gn/moz.build | 8 +++++
+ .../audio_decoder_isac_float_gn/moz.build | 8 +++++
+ .../audio_encoder_isac_float_gn/moz.build | 8 +++++
+ .../opus/audio_decoder_multiopus_gn/moz.build | 8 +++++
+ .../opus/audio_decoder_opus_gn/moz.build | 8 +++++
+ .../opus/audio_encoder_multiopus_gn/moz.build | 8 +++++
+ .../audio_encoder_opus_config_gn/moz.build | 8 +++++
+ .../opus/audio_encoder_opus_gn/moz.build | 8 +++++
+ .../api/audio_options_api_gn/moz.build | 8 +++++
+ .../libwebrtc/api/crypto/options_gn/moz.build | 8 +++++
+ .../api/media_stream_interface_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../api/neteq/neteq_api_gn/moz.build | 8 +++++
+ .../api/neteq/tick_timer_gn/moz.build | 8 +++++
+ .../api/numerics/numerics_gn/moz.build | 8 +++++
+ .../libwebrtc/api/rtc_error_gn/moz.build | 8 +++++
+ .../rtc_event_log/rtc_event_log_gn/moz.build | 8 +++++
+ .../libwebrtc/api/rtp_headers_gn/moz.build | 8 +++++
+ .../api/rtp_packet_info_gn/moz.build | 8 +++++
+ .../libwebrtc/api/rtp_parameters_gn/moz.build | 8 +++++
+ .../pending_task_safety_flag_gn/moz.build | 8 +++++
+ .../api/task_queue/task_queue_gn/moz.build | 8 +++++
+ .../transport/bitrate_settings_gn/moz.build | 8 +++++
+ .../field_trial_based_config_gn/moz.build | 8 +++++
+ .../api/transport/goog_cc_gn/moz.build | 8 +++++
+ .../transport/network_control_gn/moz.build | 8 +++++
+ .../rtp/dependency_descriptor_gn/moz.build | 8 +++++
+ .../libwebrtc/api/transport_api_gn/moz.build | 8 +++++
+ .../api/units/data_rate_gn/moz.build | 8 +++++
+ .../api/units/data_size_gn/moz.build | 8 +++++
+ .../api/units/frequency_gn/moz.build | 8 +++++
+ .../api/units/time_delta_gn/moz.build | 8 +++++
+ .../api/units/timestamp_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../api/video/encoded_frame_gn/moz.build | 8 +++++
+ .../api/video/encoded_image_gn/moz.build | 8 +++++
+ .../api/video/frame_buffer_gn/moz.build | 8 +++++
+ .../api/video/video_adaptation_gn/moz.build | 8 +++++
+ .../video_bitrate_allocation_gn/moz.build | 8 +++++
+ .../video_bitrate_allocator_gn/moz.build | 8 +++++
+ .../api/video/video_frame_gn/moz.build | 8 +++++
+ .../api/video/video_frame_i010_gn/moz.build | 8 +++++
+ .../video/video_frame_metadata_gn/moz.build | 8 +++++
+ .../api/video/video_rtp_headers_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../scalability_mode_gn/moz.build | 8 +++++
+ .../video_codecs_api_gn/moz.build | 8 +++++
+ .../vp8_temporal_layers_factory_gn/moz.build | 8 +++++
+ .../libwebrtc/audio/audio_gn/moz.build | 8 +++++
+ .../audio_frame_operations_gn/moz.build | 8 +++++
+ .../libwebrtc/build/config/compiler/BUILD.gn | 3 +-
+ .../resource_adaptation_gn/moz.build | 8 +++++
+ .../call/bitrate_allocator_gn/moz.build | 8 +++++
+ .../call/bitrate_configurator_gn/moz.build | 8 +++++
+ third_party/libwebrtc/call/call_gn/moz.build | 8 +++++
+ .../call/call_interfaces_gn/moz.build | 8 +++++
+ .../libwebrtc/call/fake_network_gn/moz.build | 8 +++++
+ .../call/rtp_interfaces_gn/moz.build | 8 +++++
+ .../libwebrtc/call/rtp_receiver_gn/moz.build | 8 +++++
+ .../libwebrtc/call/rtp_sender_gn/moz.build | 8 +++++
+ .../call/simulated_network_gn/moz.build | 8 +++++
+ .../libwebrtc/call/version_gn/moz.build | 8 +++++
+ .../call/video_stream_api_gn/moz.build | 8 +++++
+ .../common_audio_avx2_gn/moz.build | 10 ++++++
+ .../common_audio/common_audio_c_gn/moz.build | 8 +++++
+ .../common_audio/common_audio_cc_gn/moz.build | 8 +++++
+ .../common_audio/common_audio_gn/moz.build | 8 +++++
+ .../common_audio_sse2_gn/moz.build | 32 ++++++++++++++-----
+ .../fir_filter_factory_gn/moz.build | 8 +++++
+ .../ooura/fft_size_128_gn/moz.build | 2 ++
+ .../ooura/fft_size_256_gn/moz.build | 8 +++++
+ .../spl_sqrt_floor_gn/moz.build | 8 +++++
+ .../common_video/common_video_gn/moz.build | 8 +++++
+ .../generic_frame_descriptor_gn/moz.build | 8 +++++
+ .../logging/rtc_event_audio_gn/moz.build | 8 +++++
+ .../logging/rtc_event_bwe_gn/moz.build | 8 +++++
+ .../logging/rtc_event_field_gn/moz.build | 8 +++++
+ .../rtc_event_number_encodings_gn/moz.build | 8 +++++
+ .../logging/rtc_event_pacing_gn/moz.build | 8 +++++
+ .../logging/rtc_event_rtp_rtcp_gn/moz.build | 8 +++++
+ .../logging/rtc_event_video_gn/moz.build | 8 +++++
+ .../logging/rtc_stream_config_gn/moz.build | 8 +++++
+ .../rtc_encoder_simulcast_proxy_gn/moz.build | 8 +++++
+ .../rtc_internal_video_codecs_gn/moz.build | 8 +++++
+ .../media/rtc_media_base_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../async_audio_processing_gn/moz.build | 8 +++++
+ .../audio_coding/audio_coding_gn/moz.build | 8 +++++
+ .../audio_coding_opus_common_gn/moz.build | 8 +++++
+ .../audio_encoder_cng_gn/moz.build | 8 +++++
+ .../audio_network_adaptor_config_gn/moz.build | 8 +++++
+ .../audio_network_adaptor_gn/moz.build | 8 +++++
+ .../default_neteq_factory_gn/moz.build | 8 +++++
+ .../modules/audio_coding/g711_c_gn/moz.build | 8 +++++
+ .../modules/audio_coding/g711_gn/moz.build | 8 +++++
+ .../modules/audio_coding/g722_c_gn/moz.build | 8 +++++
+ .../modules/audio_coding/g722_gn/moz.build | 8 +++++
+ .../modules/audio_coding/ilbc_c_gn/moz.build | 8 +++++
+ .../modules/audio_coding/ilbc_gn/moz.build | 8 +++++
+ .../modules/audio_coding/isac_c_gn/moz.build | 8 +++++
+ .../modules/audio_coding/isac_gn/moz.build | 8 +++++
+ .../audio_coding/isac_vad_gn/moz.build | 8 +++++
+ .../legacy_encoded_audio_frame_gn/moz.build | 8 +++++
+ .../modules/audio_coding/neteq_gn/moz.build | 8 +++++
+ .../audio_coding/pcm16b_c_gn/moz.build | 8 +++++
+ .../modules/audio_coding/pcm16b_gn/moz.build | 8 +++++
+ .../modules/audio_coding/red_gn/moz.build | 8 +++++
+ .../audio_coding/webrtc_cng_gn/moz.build | 8 +++++
+ .../webrtc_multiopus_gn/moz.build | 8 +++++
+ .../audio_coding/webrtc_opus_gn/moz.build | 8 +++++
+ .../webrtc_opus_wrapper_gn/moz.build | 8 +++++
+ .../audio_device_buffer_gn/moz.build | 8 +++++
+ .../audio_device_generic_gn/moz.build | 8 +++++
+ .../audio_device_impl_gn/moz.build | 8 +++++
+ .../audio_frame_manipulator_gn/moz.build | 8 +++++
+ .../audio_mixer/audio_mixer_impl_gn/moz.build | 8 +++++
+ .../aec3/aec3_avx2_gn/moz.build | 10 ++++++
+ .../audio_processing/aec3/aec3_gn/moz.build | 8 +++++
+ .../null_aec_dump_factory_gn/moz.build | 8 +++++
+ .../aec_dump_interface_gn/moz.build | 8 +++++
+ .../aecm/aecm_core_gn/moz.build | 8 +++++
+ .../audio_processing/agc/agc_gn/moz.build | 8 +++++
+ .../analog_gain_stats_reporter_gn/moz.build | 8 +++++
+ .../clipping_predictor_evaluator_gn/moz.build | 8 +++++
+ .../agc/clipping_predictor_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../agc/legacy_agc_gn/moz.build | 8 +++++
+ .../agc/level_estimation_gn/moz.build | 8 +++++
+ .../agc2/adaptive_digital_gn/moz.build | 8 +++++
+ .../agc2/biquad_filter_gn/moz.build | 8 +++++
+ .../agc2/cpu_features_gn/moz.build | 8 +++++
+ .../agc2/fixed_digital_gn/moz.build | 8 +++++
+ .../agc2/gain_applier_gn/moz.build | 8 +++++
+ .../agc2/noise_level_estimator_gn/moz.build | 8 +++++
+ .../rnn_vad_auto_correlation_gn/moz.build | 8 +++++
+ .../agc2/rnn_vad/rnn_vad_gn/moz.build | 8 +++++
+ .../agc2/rnn_vad/rnn_vad_layers_gn/moz.build | 8 +++++
+ .../rnn_vad/rnn_vad_lp_residual_gn/moz.build | 8 +++++
+ .../agc2/rnn_vad/rnn_vad_pitch_gn/moz.build | 8 +++++
+ .../rnn_vad_spectral_features_gn/moz.build | 8 +++++
+ .../rnn_vad/vector_math_avx2_gn/moz.build | 10 ++++++
+ .../agc2/vad_wrapper_gn/moz.build | 8 +++++
+ .../modules/audio_processing/api_gn/moz.build | 8 +++++
+ .../audio_processing/apm_logging_gn/moz.build | 8 +++++
+ .../audio_buffer_gn/moz.build | 8 +++++
+ .../audio_frame_proxies_gn/moz.build | 8 +++++
+ .../audio_processing_gn/moz.build | 8 +++++
+ .../audio_processing_statistics_gn/moz.build | 8 +++++
+ .../capture_levels_adjuster_gn/moz.build | 8 +++++
+ .../gain_controller2_gn/moz.build | 8 +++++
+ .../high_pass_filter_gn/moz.build | 8 +++++
+ .../audio_processing/ns/ns_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../audio_processing/rms_level_gn/moz.build | 8 +++++
+ .../transient_suppressor_impl_gn/moz.build | 8 +++++
+ .../voice_probability_delay_unit_gn/moz.build | 8 +++++
+ .../cascaded_biquad_filter_gn/moz.build | 8 +++++
+ .../legacy_delay_estimator_gn/moz.build | 8 +++++
+ .../utility/pffft_wrapper_gn/moz.build | 8 +++++
+ .../audio_processing/vad/vad_gn/moz.build | 8 +++++
+ .../congestion_controller_gn/moz.build | 8 +++++
+ .../goog_cc/alr_detector_gn/moz.build | 8 +++++
+ .../goog_cc/delay_based_bwe_gn/moz.build | 8 +++++
+ .../goog_cc/estimators_gn/moz.build | 8 +++++
+ .../goog_cc/goog_cc_gn/moz.build | 8 +++++
+ .../link_capacity_estimator_gn/moz.build | 8 +++++
+ .../goog_cc/loss_based_bwe_v1_gn/moz.build | 8 +++++
+ .../goog_cc/loss_based_bwe_v2_gn/moz.build | 8 +++++
+ .../goog_cc/probe_controller_gn/moz.build | 8 +++++
+ .../goog_cc/pushback_controller_gn/moz.build | 8 +++++
+ .../goog_cc/send_side_bwe_gn/moz.build | 8 +++++
+ .../rtp/control_handler_gn/moz.build | 8 +++++
+ .../rtp/transport_feedback_gn/moz.build | 8 +++++
+ .../desktop_capture_differ_sse2_gn/moz.build | 17 +++++++---
+ .../desktop_capture_gn/moz.build | 4 +++
+ .../desktop_capture/primitives_gn/moz.build | 4 +++
+ .../pacing/interval_budget_gn/moz.build | 8 +++++
+ .../modules/pacing/pacing_gn/moz.build | 8 +++++
+ .../remote_bitrate_estimator_gn/moz.build | 8 +++++
+ .../rtp_rtcp/rtp_rtcp_format_gn/moz.build | 8 +++++
+ .../modules/rtp_rtcp/rtp_rtcp_gn/moz.build | 8 +++++
+ .../rtp_rtcp/rtp_video_header_gn/moz.build | 8 +++++
+ .../modules/third_party/fft/fft_gn/moz.build | 8 +++++
+ .../third_party/g711/g711_3p_gn/moz.build | 8 +++++
+ .../third_party/g722/g722_3p_gn/moz.build | 8 +++++
+ .../modules/utility/utility_gn/moz.build | 4 +++
+ .../video_capture_internal_impl_gn/moz.build | 4 +++
+ .../video_capture_module_gn/moz.build | 8 +++++
+ .../chain_diff_calculator_gn/moz.build | 8 +++++
+ .../codecs/av1/av1_svc_config_gn/moz.build | 8 +++++
+ .../codecs/av1/dav1d_decoder_gn/moz.build | 8 +++++
+ .../av1/libaom_av1_decoder_gn/moz.build | 8 +++++
+ .../video_coding/encoded_frame_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../video_coding/frame_helpers_gn/moz.build | 8 +++++
+ .../video_coding/nack_requester_gn/moz.build | 8 +++++
+ .../video_coding/packet_buffer_gn/moz.build | 8 +++++
+ .../svc/scalability_mode_util_gn/moz.build | 8 +++++
+ .../svc/scalability_structures_gn/moz.build | 8 +++++
+ .../scalable_video_controller_gn/moz.build | 8 +++++
+ .../svc/svc_rate_allocator_gn/moz.build | 8 +++++
+ .../timing/codec_timer_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../timing/inter_frame_delay_gn/moz.build | 8 +++++
+ .../timing/jitter_estimator_gn/moz.build | 8 +++++
+ .../timing/rtt_filter_gn/moz.build | 8 +++++
+ .../timing/timing_module_gn/moz.build | 8 +++++
+ .../video_codec_interface_gn/moz.build | 8 +++++
+ .../video_coding/video_coding_gn/moz.build | 8 +++++
+ .../video_coding_utility_gn/moz.build | 8 +++++
+ .../video_coding/webrtc_h264_gn/moz.build | 8 +++++
+ .../webrtc_libvpx_interface_gn/moz.build | 8 +++++
+ .../webrtc_multiplex_gn/moz.build | 8 +++++
+ .../video_coding/webrtc_vp8_gn/moz.build | 8 +++++
+ .../webrtc_vp8_scalability_gn/moz.build | 8 +++++
+ .../webrtc_vp8_temporal_layers_gn/moz.build | 8 +++++
+ .../video_coding/webrtc_vp9_gn/moz.build | 8 +++++
+ .../webrtc_vp9_helpers_gn/moz.build | 8 +++++
+ .../video_processing_gn/moz.build | 8 +++++
+ .../video_processing_sse2_gn/moz.build | 32 ++++++++++++++-----
+ .../async_resolver_interface_gn/moz.build | 8 +++++
+ .../rtc_base/async_socket_gn/moz.build | 8 +++++
+ .../audio_format_to_string_gn/moz.build | 8 +++++
+ .../rtc_base/bit_buffer_gn/moz.build | 8 +++++
+ .../rtc_base/bitstream_reader_gn/moz.build | 8 +++++
+ .../rtc_base/byte_buffer_gn/moz.build | 8 +++++
+ .../rtc_base/callback_list_gn/moz.build | 8 +++++
+ .../libwebrtc/rtc_base/checks_gn/moz.build | 8 +++++
+ .../flat_containers_internal_gn/moz.build | 8 +++++
+ .../copy_on_write_buffer_gn/moz.build | 8 +++++
+ .../rtc_base/criticalsection_gn/moz.build | 8 +++++
+ .../rtc_base/event_tracer_gn/moz.build | 8 +++++
+ .../experiments/alr_experiment_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../cpu_speed_experiment_gn/moz.build | 8 +++++
+ .../encoder_info_settings_gn/moz.build | 8 +++++
+ .../field_trial_parser_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../min_video_bitrate_experiment_gn/moz.build | 8 +++++
+ .../quality_rampup_experiment_gn/moz.build | 8 +++++
+ .../quality_scaler_settings_gn/moz.build | 8 +++++
+ .../quality_scaling_experiment_gn/moz.build | 8 +++++
+ .../rate_control_settings_gn/moz.build | 8 +++++
+ .../rtt_mult_experiment_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../histogram_percentile_counter_gn/moz.build | 8 +++++
+ .../rtc_base/ifaddrs_android_gn/moz.build | 4 +++
+ .../rtc_base/ip_address_gn/moz.build | 8 +++++
+ .../libwebrtc/rtc_base/location_gn/moz.build | 8 +++++
+ .../libwebrtc/rtc_base/logging_gn/moz.build | 8 +++++
+ .../memory/aligned_malloc_gn/moz.build | 8 +++++
+ .../rtc_base/net_helpers_gn/moz.build | 8 +++++
+ .../rtc_base/network/sent_packet_gn/moz.build | 8 +++++
+ .../rtc_base/network_constants_gn/moz.build | 8 +++++
+ .../rtc_base/null_socket_server_gn/moz.build | 8 +++++
+ .../rtc_base/platform_thread_gn/moz.build | 8 +++++
+ .../platform_thread_types_gn/moz.build | 8 +++++
+ .../rtc_base/race_checker_gn/moz.build | 8 +++++
+ .../libwebrtc/rtc_base/random_gn/moz.build | 8 +++++
+ .../rtc_base/rate_limiter_gn/moz.build | 8 +++++
+ .../rtc_base/rate_statistics_gn/moz.build | 8 +++++
+ .../rtc_base/rate_tracker_gn/moz.build | 8 +++++
+ .../libwebrtc/rtc_base/rtc_base_gn/moz.build | 8 +++++
+ .../libwebrtc/rtc_base/rtc_event_gn/moz.build | 8 +++++
+ .../rtc_base/rtc_numerics_gn/moz.build | 8 +++++
+ .../rtc_base/rtc_task_queue_gn/moz.build | 8 +++++
+ .../rtc_base/sample_counter_gn/moz.build | 8 +++++
+ .../rtc_base/socket_address_gn/moz.build | 8 +++++
+ .../libwebrtc/rtc_base/socket_gn/moz.build | 8 +++++
+ .../rtc_base/stringutils_gn/moz.build | 8 +++++
+ .../sequence_checker_internal_gn/moz.build | 8 +++++
+ .../synchronization/yield_gn/moz.build | 8 +++++
+ .../synchronization/yield_policy_gn/moz.build | 8 +++++
+ .../rtc_base/system/file_wrapper_gn/moz.build | 8 +++++
+ .../task_utils/repeating_task_gn/moz.build | 8 +++++
+ .../third_party/base64/base64_gn/moz.build | 8 +++++
+ .../third_party/sigslot/sigslot_gn/moz.build | 8 +++++
+ .../libwebrtc/rtc_base/threading_gn/moz.build | 8 +++++
+ .../time/timestamp_extrapolator_gn/moz.build | 8 +++++
+ .../rtc_base/timestamp_aligner_gn/moz.build | 8 +++++
+ .../libwebrtc/rtc_base/timeutils_gn/moz.build | 8 +++++
+ .../libwebrtc/rtc_base/weak_ptr_gn/moz.build | 8 +++++
+ .../rtc_base/zero_memory_gn/moz.build | 8 +++++
+ .../denormal_disabler_gn/moz.build | 8 +++++
+ .../system_wrappers/field_trial_gn/moz.build | 8 +++++
+ .../system_wrappers/metrics_gn/moz.build | 8 +++++
+ .../system_wrappers_gn/moz.build | 8 +++++
+ .../absl/base/log_severity_gn/moz.build | 8 +++++
+ .../base/raw_logging_internal_gn/moz.build | 8 +++++
+ .../absl/base/throw_delegate_gn/moz.build | 8 +++++
+ .../absl/numeric/int128_gn/moz.build | 8 +++++
+ .../absl/strings/internal_gn/moz.build | 8 +++++
+ .../absl/strings/strings_gn/moz.build | 8 +++++
+ .../types/bad_optional_access_gn/moz.build | 8 +++++
+ .../types/bad_variant_access_gn/moz.build | 8 +++++
+ .../third_party/pffft/pffft_gn/moz.build | 8 +++++
+ .../third_party/rnnoise/rnn_vad_gn/moz.build | 8 +++++
+ .../adaptation/video_adaptation_gn/moz.build | 8 +++++
+ .../video/decode_synchronizer_gn/moz.build | 8 +++++
+ .../video/frame_cadence_adapter_gn/moz.build | 8 +++++
+ .../video/frame_decode_timing_gn/moz.build | 8 +++++
+ .../video/frame_dumping_decoder_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../unique_timestamp_counter_gn/moz.build | 8 +++++
+ .../libwebrtc/video/video_gn/moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../moz.build | 8 +++++
+ .../video_stream_encoder_impl_gn/moz.build | 8 +++++
+ 325 files changed, 2610 insertions(+), 22 deletions(-)
+
+diff --git a/third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build b/third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build
+index 8fbfa68..85e236f 100644
+--- a/third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build
++++ b/third_party/libwebrtc/api/adaptation/resource_adaptation_api_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio/aec3_config_gn/moz.build b/third_party/libwebrtc/api/audio/aec3_config_gn/moz.build
+index 64f9396..ac1dc8f 100644
+--- a/third_party/libwebrtc/api/audio/aec3_config_gn/moz.build
++++ b/third_party/libwebrtc/api/audio/aec3_config_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio/aec3_factory_gn/moz.build b/third_party/libwebrtc/api/audio/aec3_factory_gn/moz.build
+index d71f554..a56dc74 100644
+--- a/third_party/libwebrtc/api/audio/aec3_factory_gn/moz.build
++++ b/third_party/libwebrtc/api/audio/aec3_factory_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio/audio_frame_api_gn/moz.build b/third_party/libwebrtc/api/audio/audio_frame_api_gn/moz.build
+index 5178769..ab90d0e 100644
+--- a/third_party/libwebrtc/api/audio/audio_frame_api_gn/moz.build
++++ b/third_party/libwebrtc/api/audio/audio_frame_api_gn/moz.build
+@@ -179,6 +179,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -195,6 +199,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/L16/audio_decoder_L16_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/L16/audio_decoder_L16_gn/moz.build
+index d025ed5..847ec71 100644
+--- a/third_party/libwebrtc/api/audio_codecs/L16/audio_decoder_L16_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/L16/audio_decoder_L16_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/L16/audio_encoder_L16_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/L16/audio_encoder_L16_gn/moz.build
+index 186075c..284bee1 100644
+--- a/third_party/libwebrtc/api/audio_codecs/L16/audio_encoder_L16_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/L16/audio_encoder_L16_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/audio_codecs_api_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/audio_codecs_api_gn/moz.build
+index 7c58a9f..083670f 100644
+--- a/third_party/libwebrtc/api/audio_codecs/audio_codecs_api_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/audio_codecs_api_gn/moz.build
+@@ -181,6 +181,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -197,6 +201,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/builtin_audio_decoder_factory_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/builtin_audio_decoder_factory_gn/moz.build
+index 2358f353..68529fa 100644
+--- a/third_party/libwebrtc/api/audio_codecs/builtin_audio_decoder_factory_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/builtin_audio_decoder_factory_gn/moz.build
+@@ -209,6 +209,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_USE_BUILTIN_ISAC_FIX"] = "0"
+ DEFINES["WEBRTC_USE_BUILTIN_ISAC_FLOAT"] = "1"
+
+@@ -239,6 +243,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["WEBRTC_USE_BUILTIN_ISAC_FIX"] = "0"
+ DEFINES["WEBRTC_USE_BUILTIN_ISAC_FLOAT"] = "1"
+diff --git a/third_party/libwebrtc/api/audio_codecs/builtin_audio_encoder_factory_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/builtin_audio_encoder_factory_gn/moz.build
+index e43ff4a..78d127c 100644
+--- a/third_party/libwebrtc/api/audio_codecs/builtin_audio_encoder_factory_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/builtin_audio_encoder_factory_gn/moz.build
+@@ -209,6 +209,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_USE_BUILTIN_ISAC_FIX"] = "0"
+ DEFINES["WEBRTC_USE_BUILTIN_ISAC_FLOAT"] = "1"
+
+@@ -239,6 +243,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["WEBRTC_USE_BUILTIN_ISAC_FIX"] = "0"
+ DEFINES["WEBRTC_USE_BUILTIN_ISAC_FLOAT"] = "1"
+diff --git a/third_party/libwebrtc/api/audio_codecs/g711/audio_decoder_g711_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/g711/audio_decoder_g711_gn/moz.build
+index 5756aae..ed36a5d 100644
+--- a/third_party/libwebrtc/api/audio_codecs/g711/audio_decoder_g711_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/g711/audio_decoder_g711_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/g711/audio_encoder_g711_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/g711/audio_encoder_g711_gn/moz.build
+index 3bb22b0..df9d0a4 100644
+--- a/third_party/libwebrtc/api/audio_codecs/g711/audio_encoder_g711_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/g711/audio_encoder_g711_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/g722/audio_decoder_g722_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/g722/audio_decoder_g722_gn/moz.build
+index a9afcbe..11734d7 100644
+--- a/third_party/libwebrtc/api/audio_codecs/g722/audio_decoder_g722_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/g722/audio_decoder_g722_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/g722/audio_encoder_g722_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/g722/audio_encoder_g722_gn/moz.build
+index 2b256f9..8d34414 100644
+--- a/third_party/libwebrtc/api/audio_codecs/g722/audio_encoder_g722_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/g722/audio_encoder_g722_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/ilbc/audio_decoder_ilbc_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/ilbc/audio_decoder_ilbc_gn/moz.build
+index b7b4646..9c9dc1f 100644
+--- a/third_party/libwebrtc/api/audio_codecs/ilbc/audio_decoder_ilbc_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/ilbc/audio_decoder_ilbc_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/ilbc/audio_encoder_ilbc_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/ilbc/audio_encoder_ilbc_gn/moz.build
+index dc62483..b05f514 100644
+--- a/third_party/libwebrtc/api/audio_codecs/ilbc/audio_encoder_ilbc_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/ilbc/audio_encoder_ilbc_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/isac/audio_decoder_isac_float_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/isac/audio_decoder_isac_float_gn/moz.build
+index 79448f7..e3ef68e 100644
+--- a/third_party/libwebrtc/api/audio_codecs/isac/audio_decoder_isac_float_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/isac/audio_decoder_isac_float_gn/moz.build
+@@ -169,6 +169,10 @@ if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -180,6 +184,10 @@ if CONFIG["CPU_ARCH"] == "aarch64" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/isac/audio_encoder_isac_float_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/isac/audio_encoder_isac_float_gn/moz.build
+index 062e40e..00eb124 100644
+--- a/third_party/libwebrtc/api/audio_codecs/isac/audio_encoder_isac_float_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/isac/audio_encoder_isac_float_gn/moz.build
+@@ -169,6 +169,10 @@ if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -180,6 +184,10 @@ if CONFIG["CPU_ARCH"] == "aarch64" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/opus/audio_decoder_multiopus_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/opus/audio_decoder_multiopus_gn/moz.build
+index a47f2d8..2bc9881 100644
+--- a/third_party/libwebrtc/api/audio_codecs/opus/audio_decoder_multiopus_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/opus/audio_decoder_multiopus_gn/moz.build
+@@ -179,6 +179,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -195,6 +199,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/opus/audio_decoder_opus_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/opus/audio_decoder_opus_gn/moz.build
+index d60041f..bdc96c2a 100644
+--- a/third_party/libwebrtc/api/audio_codecs/opus/audio_decoder_opus_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/opus/audio_decoder_opus_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/opus/audio_encoder_multiopus_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/opus/audio_encoder_multiopus_gn/moz.build
+index aef6a67..6bae0209 100644
+--- a/third_party/libwebrtc/api/audio_codecs/opus/audio_encoder_multiopus_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/opus/audio_encoder_multiopus_gn/moz.build
+@@ -179,6 +179,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -195,6 +199,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/opus/audio_encoder_opus_config_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/opus/audio_encoder_opus_config_gn/moz.build
+index 3d874ea..7c9c7f4 100644
+--- a/third_party/libwebrtc/api/audio_codecs/opus/audio_encoder_opus_config_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/opus/audio_encoder_opus_config_gn/moz.build
+@@ -175,6 +175,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -191,6 +195,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_codecs/opus/audio_encoder_opus_gn/moz.build b/third_party/libwebrtc/api/audio_codecs/opus/audio_encoder_opus_gn/moz.build
+index 98bce2f..59e7a5a 100644
+--- a/third_party/libwebrtc/api/audio_codecs/opus/audio_encoder_opus_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_codecs/opus/audio_encoder_opus_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/audio_options_api_gn/moz.build b/third_party/libwebrtc/api/audio_options_api_gn/moz.build
+index b11d9b3..af73a69 100644
+--- a/third_party/libwebrtc/api/audio_options_api_gn/moz.build
++++ b/third_party/libwebrtc/api/audio_options_api_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/crypto/options_gn/moz.build b/third_party/libwebrtc/api/crypto/options_gn/moz.build
+index 91d676f..af911bf 100644
+--- a/third_party/libwebrtc/api/crypto/options_gn/moz.build
++++ b/third_party/libwebrtc/api/crypto/options_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/media_stream_interface_gn/moz.build b/third_party/libwebrtc/api/media_stream_interface_gn/moz.build
+index 841bc83..5bf5aa2 100644
+--- a/third_party/libwebrtc/api/media_stream_interface_gn/moz.build
++++ b/third_party/libwebrtc/api/media_stream_interface_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/neteq/default_neteq_controller_factory_gn/moz.build b/third_party/libwebrtc/api/neteq/default_neteq_controller_factory_gn/moz.build
+index e04fd24..c55e637 100644
+--- a/third_party/libwebrtc/api/neteq/default_neteq_controller_factory_gn/moz.build
++++ b/third_party/libwebrtc/api/neteq/default_neteq_controller_factory_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/neteq/neteq_api_gn/moz.build b/third_party/libwebrtc/api/neteq/neteq_api_gn/moz.build
+index a12067d..eb03b19 100644
+--- a/third_party/libwebrtc/api/neteq/neteq_api_gn/moz.build
++++ b/third_party/libwebrtc/api/neteq/neteq_api_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/neteq/tick_timer_gn/moz.build b/third_party/libwebrtc/api/neteq/tick_timer_gn/moz.build
+index a96170c..2baab46 100644
+--- a/third_party/libwebrtc/api/neteq/tick_timer_gn/moz.build
++++ b/third_party/libwebrtc/api/neteq/tick_timer_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/numerics/numerics_gn/moz.build b/third_party/libwebrtc/api/numerics/numerics_gn/moz.build
+index 44d6d1c..3dc71e0 100644
+--- a/third_party/libwebrtc/api/numerics/numerics_gn/moz.build
++++ b/third_party/libwebrtc/api/numerics/numerics_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/rtc_error_gn/moz.build b/third_party/libwebrtc/api/rtc_error_gn/moz.build
+index a8296cb..16cbf5a 100644
+--- a/third_party/libwebrtc/api/rtc_error_gn/moz.build
++++ b/third_party/libwebrtc/api/rtc_error_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/rtc_event_log/rtc_event_log_gn/moz.build b/third_party/libwebrtc/api/rtc_event_log/rtc_event_log_gn/moz.build
+index 2b0b008..b9e7b3a 100644
+--- a/third_party/libwebrtc/api/rtc_event_log/rtc_event_log_gn/moz.build
++++ b/third_party/libwebrtc/api/rtc_event_log/rtc_event_log_gn/moz.build
+@@ -179,6 +179,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -195,6 +199,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/rtp_headers_gn/moz.build b/third_party/libwebrtc/api/rtp_headers_gn/moz.build
+index 1615966..ef07456 100644
+--- a/third_party/libwebrtc/api/rtp_headers_gn/moz.build
++++ b/third_party/libwebrtc/api/rtp_headers_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/rtp_packet_info_gn/moz.build b/third_party/libwebrtc/api/rtp_packet_info_gn/moz.build
+index a8a4516..a8bcf57 100644
+--- a/third_party/libwebrtc/api/rtp_packet_info_gn/moz.build
++++ b/third_party/libwebrtc/api/rtp_packet_info_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/rtp_parameters_gn/moz.build b/third_party/libwebrtc/api/rtp_parameters_gn/moz.build
+index a9ad014..a573ed2 100644
+--- a/third_party/libwebrtc/api/rtp_parameters_gn/moz.build
++++ b/third_party/libwebrtc/api/rtp_parameters_gn/moz.build
+@@ -175,6 +175,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -191,6 +195,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/task_queue/pending_task_safety_flag_gn/moz.build b/third_party/libwebrtc/api/task_queue/pending_task_safety_flag_gn/moz.build
+index c3887b4..46e4e88 100644
+--- a/third_party/libwebrtc/api/task_queue/pending_task_safety_flag_gn/moz.build
++++ b/third_party/libwebrtc/api/task_queue/pending_task_safety_flag_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/task_queue/task_queue_gn/moz.build b/third_party/libwebrtc/api/task_queue/task_queue_gn/moz.build
+index caf50afe..ef0e22b 100644
+--- a/third_party/libwebrtc/api/task_queue/task_queue_gn/moz.build
++++ b/third_party/libwebrtc/api/task_queue/task_queue_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/transport/bitrate_settings_gn/moz.build b/third_party/libwebrtc/api/transport/bitrate_settings_gn/moz.build
+index 9ebe979..83d17d5 100644
+--- a/third_party/libwebrtc/api/transport/bitrate_settings_gn/moz.build
++++ b/third_party/libwebrtc/api/transport/bitrate_settings_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/transport/field_trial_based_config_gn/moz.build b/third_party/libwebrtc/api/transport/field_trial_based_config_gn/moz.build
+index 700b5a8..e54dc90 100644
+--- a/third_party/libwebrtc/api/transport/field_trial_based_config_gn/moz.build
++++ b/third_party/libwebrtc/api/transport/field_trial_based_config_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/transport/goog_cc_gn/moz.build b/third_party/libwebrtc/api/transport/goog_cc_gn/moz.build
+index 15ad847..5e2691f 100644
+--- a/third_party/libwebrtc/api/transport/goog_cc_gn/moz.build
++++ b/third_party/libwebrtc/api/transport/goog_cc_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/transport/network_control_gn/moz.build b/third_party/libwebrtc/api/transport/network_control_gn/moz.build
+index ba07009..30a2320 100644
+--- a/third_party/libwebrtc/api/transport/network_control_gn/moz.build
++++ b/third_party/libwebrtc/api/transport/network_control_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/transport/rtp/dependency_descriptor_gn/moz.build b/third_party/libwebrtc/api/transport/rtp/dependency_descriptor_gn/moz.build
+index 9d92835..bb9d911 100644
+--- a/third_party/libwebrtc/api/transport/rtp/dependency_descriptor_gn/moz.build
++++ b/third_party/libwebrtc/api/transport/rtp/dependency_descriptor_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/transport_api_gn/moz.build b/third_party/libwebrtc/api/transport_api_gn/moz.build
+index db1ced3..9956aad 100644
+--- a/third_party/libwebrtc/api/transport_api_gn/moz.build
++++ b/third_party/libwebrtc/api/transport_api_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/units/data_rate_gn/moz.build b/third_party/libwebrtc/api/units/data_rate_gn/moz.build
+index e4b61f8..00c3673 100644
+--- a/third_party/libwebrtc/api/units/data_rate_gn/moz.build
++++ b/third_party/libwebrtc/api/units/data_rate_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/units/data_size_gn/moz.build b/third_party/libwebrtc/api/units/data_size_gn/moz.build
+index c6effb8..68a9ac7 100644
+--- a/third_party/libwebrtc/api/units/data_size_gn/moz.build
++++ b/third_party/libwebrtc/api/units/data_size_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/units/frequency_gn/moz.build b/third_party/libwebrtc/api/units/frequency_gn/moz.build
+index 788398d..bad1b4f 100644
+--- a/third_party/libwebrtc/api/units/frequency_gn/moz.build
++++ b/third_party/libwebrtc/api/units/frequency_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/units/time_delta_gn/moz.build b/third_party/libwebrtc/api/units/time_delta_gn/moz.build
+index c487779..7e965f2 100644
+--- a/third_party/libwebrtc/api/units/time_delta_gn/moz.build
++++ b/third_party/libwebrtc/api/units/time_delta_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/units/timestamp_gn/moz.build b/third_party/libwebrtc/api/units/timestamp_gn/moz.build
+index ece2614..997f99a 100644
+--- a/third_party/libwebrtc/api/units/timestamp_gn/moz.build
++++ b/third_party/libwebrtc/api/units/timestamp_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video/builtin_video_bitrate_allocator_factory_gn/moz.build b/third_party/libwebrtc/api/video/builtin_video_bitrate_allocator_factory_gn/moz.build
+index d130ac6..77f149a 100644
+--- a/third_party/libwebrtc/api/video/builtin_video_bitrate_allocator_factory_gn/moz.build
++++ b/third_party/libwebrtc/api/video/builtin_video_bitrate_allocator_factory_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video/encoded_frame_gn/moz.build b/third_party/libwebrtc/api/video/encoded_frame_gn/moz.build
+index 90f9758..bfede4e 100644
+--- a/third_party/libwebrtc/api/video/encoded_frame_gn/moz.build
++++ b/third_party/libwebrtc/api/video/encoded_frame_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video/encoded_image_gn/moz.build b/third_party/libwebrtc/api/video/encoded_image_gn/moz.build
+index 05a9a40..095b5c3 100644
+--- a/third_party/libwebrtc/api/video/encoded_image_gn/moz.build
++++ b/third_party/libwebrtc/api/video/encoded_image_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video/frame_buffer_gn/moz.build b/third_party/libwebrtc/api/video/frame_buffer_gn/moz.build
+index de9fae8..c419db3 100644
+--- a/third_party/libwebrtc/api/video/frame_buffer_gn/moz.build
++++ b/third_party/libwebrtc/api/video/frame_buffer_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video/video_adaptation_gn/moz.build b/third_party/libwebrtc/api/video/video_adaptation_gn/moz.build
+index 803834e..e827c1d 100644
+--- a/third_party/libwebrtc/api/video/video_adaptation_gn/moz.build
++++ b/third_party/libwebrtc/api/video/video_adaptation_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video/video_bitrate_allocation_gn/moz.build b/third_party/libwebrtc/api/video/video_bitrate_allocation_gn/moz.build
+index e6dad36..86897e1 100644
+--- a/third_party/libwebrtc/api/video/video_bitrate_allocation_gn/moz.build
++++ b/third_party/libwebrtc/api/video/video_bitrate_allocation_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video/video_bitrate_allocator_gn/moz.build b/third_party/libwebrtc/api/video/video_bitrate_allocator_gn/moz.build
+index f82e342..0a66a4f 100644
+--- a/third_party/libwebrtc/api/video/video_bitrate_allocator_gn/moz.build
++++ b/third_party/libwebrtc/api/video/video_bitrate_allocator_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video/video_frame_gn/moz.build b/third_party/libwebrtc/api/video/video_frame_gn/moz.build
+index 0eef21b..a39d88a 100644
+--- a/third_party/libwebrtc/api/video/video_frame_gn/moz.build
++++ b/third_party/libwebrtc/api/video/video_frame_gn/moz.build
+@@ -189,6 +189,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -205,6 +209,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video/video_frame_i010_gn/moz.build b/third_party/libwebrtc/api/video/video_frame_i010_gn/moz.build
+index 9c539a9..798e068 100644
+--- a/third_party/libwebrtc/api/video/video_frame_i010_gn/moz.build
++++ b/third_party/libwebrtc/api/video/video_frame_i010_gn/moz.build
+@@ -193,6 +193,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -209,6 +213,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video/video_frame_metadata_gn/moz.build b/third_party/libwebrtc/api/video/video_frame_metadata_gn/moz.build
+index 995eb12..5c7a506 100644
+--- a/third_party/libwebrtc/api/video/video_frame_metadata_gn/moz.build
++++ b/third_party/libwebrtc/api/video/video_frame_metadata_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video/video_rtp_headers_gn/moz.build b/third_party/libwebrtc/api/video/video_rtp_headers_gn/moz.build
+index b51f065..ce782727 100644
+--- a/third_party/libwebrtc/api/video/video_rtp_headers_gn/moz.build
++++ b/third_party/libwebrtc/api/video/video_rtp_headers_gn/moz.build
+@@ -181,6 +181,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -197,6 +201,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video_codecs/builtin_video_decoder_factory_gn/moz.build b/third_party/libwebrtc/api/video_codecs/builtin_video_decoder_factory_gn/moz.build
+index 080b959..56ec90a 100644
+--- a/third_party/libwebrtc/api/video_codecs/builtin_video_decoder_factory_gn/moz.build
++++ b/third_party/libwebrtc/api/video_codecs/builtin_video_decoder_factory_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video_codecs/builtin_video_encoder_factory_gn/moz.build b/third_party/libwebrtc/api/video_codecs/builtin_video_encoder_factory_gn/moz.build
+index 9eaa39a..44136024 100644
+--- a/third_party/libwebrtc/api/video_codecs/builtin_video_encoder_factory_gn/moz.build
++++ b/third_party/libwebrtc/api/video_codecs/builtin_video_encoder_factory_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video_codecs/rtc_software_fallback_wrappers_gn/moz.build b/third_party/libwebrtc/api/video_codecs/rtc_software_fallback_wrappers_gn/moz.build
+index 005c722..9355c66 100644
+--- a/third_party/libwebrtc/api/video_codecs/rtc_software_fallback_wrappers_gn/moz.build
++++ b/third_party/libwebrtc/api/video_codecs/rtc_software_fallback_wrappers_gn/moz.build
+@@ -188,6 +188,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -204,6 +208,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video_codecs/scalability_mode_gn/moz.build b/third_party/libwebrtc/api/video_codecs/scalability_mode_gn/moz.build
+index 3a93583..80d3b263 100644
+--- a/third_party/libwebrtc/api/video_codecs/scalability_mode_gn/moz.build
++++ b/third_party/libwebrtc/api/video_codecs/scalability_mode_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video_codecs/video_codecs_api_gn/moz.build b/third_party/libwebrtc/api/video_codecs/video_codecs_api_gn/moz.build
+index 3a056cb..73c79ce 100644
+--- a/third_party/libwebrtc/api/video_codecs/video_codecs_api_gn/moz.build
++++ b/third_party/libwebrtc/api/video_codecs/video_codecs_api_gn/moz.build
+@@ -189,6 +189,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -205,6 +209,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/api/video_codecs/vp8_temporal_layers_factory_gn/moz.build b/third_party/libwebrtc/api/video_codecs/vp8_temporal_layers_factory_gn/moz.build
+index 7be7d67..abac637 100644
+--- a/third_party/libwebrtc/api/video_codecs/vp8_temporal_layers_factory_gn/moz.build
++++ b/third_party/libwebrtc/api/video_codecs/vp8_temporal_layers_factory_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/audio/audio_gn/moz.build b/third_party/libwebrtc/audio/audio_gn/moz.build
+index 1f619c4c..da98262 100644
+--- a/third_party/libwebrtc/audio/audio_gn/moz.build
++++ b/third_party/libwebrtc/audio/audio_gn/moz.build
+@@ -199,6 +199,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -215,6 +219,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/audio/utility/audio_frame_operations_gn/moz.build b/third_party/libwebrtc/audio/utility/audio_frame_operations_gn/moz.build
+index ef559b9..7f34adf 100644
+--- a/third_party/libwebrtc/audio/utility/audio_frame_operations_gn/moz.build
++++ b/third_party/libwebrtc/audio/utility/audio_frame_operations_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/build/config/compiler/BUILD.gn b/third_party/libwebrtc/build/config/compiler/BUILD.gn
+index b4a7a5e..e68feb7 100644
+--- a/third_party/libwebrtc/build/config/compiler/BUILD.gn
++++ b/third_party/libwebrtc/build/config/compiler/BUILD.gn
+@@ -882,7 +882,6 @@ config("compiler_cpu_abi") {
+ cflags += [
+ "-m64",
+ "-march=$x64_arch",
+- "-msse3",
+ ]
+ ldflags += [ "-m64" ]
+ } else if (target_cpu == "x86") {
+@@ -891,7 +890,7 @@ config("compiler_cpu_abi") {
+ if (!is_nacl) {
+ cflags += [
+ "-mfpmath=sse",
+- "-msse3",
++ "-msse2",
+ ]
+ }
+ } else if (target_cpu == "arm") {
+diff --git a/third_party/libwebrtc/call/adaptation/resource_adaptation_gn/moz.build b/third_party/libwebrtc/call/adaptation/resource_adaptation_gn/moz.build
+index 3c1d8cc..a71e1aa 100644
+--- a/third_party/libwebrtc/call/adaptation/resource_adaptation_gn/moz.build
++++ b/third_party/libwebrtc/call/adaptation/resource_adaptation_gn/moz.build
+@@ -196,6 +196,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -212,6 +216,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/call/bitrate_allocator_gn/moz.build b/third_party/libwebrtc/call/bitrate_allocator_gn/moz.build
+index 0e14a5d..9bde1fe 100644
+--- a/third_party/libwebrtc/call/bitrate_allocator_gn/moz.build
++++ b/third_party/libwebrtc/call/bitrate_allocator_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/call/bitrate_configurator_gn/moz.build b/third_party/libwebrtc/call/bitrate_configurator_gn/moz.build
+index 4e17c8a..a7f6b1c 100644
+--- a/third_party/libwebrtc/call/bitrate_configurator_gn/moz.build
++++ b/third_party/libwebrtc/call/bitrate_configurator_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/call/call_gn/moz.build b/third_party/libwebrtc/call/call_gn/moz.build
+index 8a43be5..a724cb7 100644
+--- a/third_party/libwebrtc/call/call_gn/moz.build
++++ b/third_party/libwebrtc/call/call_gn/moz.build
+@@ -191,6 +191,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -207,6 +211,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/call/call_interfaces_gn/moz.build b/third_party/libwebrtc/call/call_interfaces_gn/moz.build
+index fa81c96..d89da5b 100644
+--- a/third_party/libwebrtc/call/call_interfaces_gn/moz.build
++++ b/third_party/libwebrtc/call/call_interfaces_gn/moz.build
+@@ -193,6 +193,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -209,6 +213,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/call/fake_network_gn/moz.build b/third_party/libwebrtc/call/fake_network_gn/moz.build
+index 6641aaf..e3aff75 100644
+--- a/third_party/libwebrtc/call/fake_network_gn/moz.build
++++ b/third_party/libwebrtc/call/fake_network_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/call/rtp_interfaces_gn/moz.build b/third_party/libwebrtc/call/rtp_interfaces_gn/moz.build
+index 9a45042..10fd829 100644
+--- a/third_party/libwebrtc/call/rtp_interfaces_gn/moz.build
++++ b/third_party/libwebrtc/call/rtp_interfaces_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/call/rtp_receiver_gn/moz.build b/third_party/libwebrtc/call/rtp_receiver_gn/moz.build
+index f245b8f..8738af5 100644
+--- a/third_party/libwebrtc/call/rtp_receiver_gn/moz.build
++++ b/third_party/libwebrtc/call/rtp_receiver_gn/moz.build
+@@ -189,6 +189,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -205,6 +209,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/call/rtp_sender_gn/moz.build b/third_party/libwebrtc/call/rtp_sender_gn/moz.build
+index 56e1d83..1f688d1 100644
+--- a/third_party/libwebrtc/call/rtp_sender_gn/moz.build
++++ b/third_party/libwebrtc/call/rtp_sender_gn/moz.build
+@@ -189,6 +189,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -205,6 +209,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/call/simulated_network_gn/moz.build b/third_party/libwebrtc/call/simulated_network_gn/moz.build
+index dc88d9e..8437b5b 100644
+--- a/third_party/libwebrtc/call/simulated_network_gn/moz.build
++++ b/third_party/libwebrtc/call/simulated_network_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/call/version_gn/moz.build b/third_party/libwebrtc/call/version_gn/moz.build
+index 6f82bc3..c96fff2 100644
+--- a/third_party/libwebrtc/call/version_gn/moz.build
++++ b/third_party/libwebrtc/call/version_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/call/video_stream_api_gn/moz.build b/third_party/libwebrtc/call/video_stream_api_gn/moz.build
+index ee981f9..b8a7e06 100644
+--- a/third_party/libwebrtc/call/video_stream_api_gn/moz.build
++++ b/third_party/libwebrtc/call/video_stream_api_gn/moz.build
+@@ -188,6 +188,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -204,6 +208,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/common_audio/common_audio_avx2_gn/moz.build b/third_party/libwebrtc/common_audio/common_audio_avx2_gn/moz.build
+index df7f52b..753b23f 100644
+--- a/third_party/libwebrtc/common_audio/common_audio_avx2_gn/moz.build
++++ b/third_party/libwebrtc/common_audio/common_audio_avx2_gn/moz.build
+@@ -167,8 +167,18 @@ if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+
++if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
++
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ Library("common_audio_avx2_gn")
+diff --git a/third_party/libwebrtc/common_audio/common_audio_c_gn/moz.build b/third_party/libwebrtc/common_audio/common_audio_c_gn/moz.build
+index 625fcd1..1b27f68 100644
+--- a/third_party/libwebrtc/common_audio/common_audio_c_gn/moz.build
++++ b/third_party/libwebrtc/common_audio/common_audio_c_gn/moz.build
+@@ -252,6 +252,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -285,6 +289,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/common_audio/common_audio_cc_gn/moz.build b/third_party/libwebrtc/common_audio/common_audio_cc_gn/moz.build
+index 241c878..36e92061 100644
+--- a/third_party/libwebrtc/common_audio/common_audio_cc_gn/moz.build
++++ b/third_party/libwebrtc/common_audio/common_audio_cc_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/common_audio/common_audio_gn/moz.build b/third_party/libwebrtc/common_audio/common_audio_gn/moz.build
+index d81fd8f0..64d07db 100644
+--- a/third_party/libwebrtc/common_audio/common_audio_gn/moz.build
++++ b/third_party/libwebrtc/common_audio/common_audio_gn/moz.build
+@@ -198,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -214,6 +218,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/common_audio/common_audio_sse2_gn/moz.build b/third_party/libwebrtc/common_audio/common_audio_sse2_gn/moz.build
+index 93daf37..7142192 100644
+--- a/third_party/libwebrtc/common_audio/common_audio_sse2_gn/moz.build
++++ b/third_party/libwebrtc/common_audio/common_audio_sse2_gn/moz.build
+@@ -46,10 +46,6 @@ if CONFIG["MOZ_DEBUG"] == "1":
+
+ if CONFIG["OS_TARGET"] == "Android":
+
+- CXXFLAGS += [
+- "-msse2"
+- ]
+-
+ DEFINES["ANDROID"] = True
+ DEFINES["ANDROID_NDK_VERSION_ROLL"] = "r22_1"
+ DEFINES["HAVE_SYS_UIO_H"] = True
+@@ -80,10 +76,6 @@ if CONFIG["OS_TARGET"] == "Darwin":
+
+ if CONFIG["OS_TARGET"] == "Linux":
+
+- CXXFLAGS += [
+- "-msse2"
+- ]
+-
+ DEFINES["USE_AURA"] = "1"
+ DEFINES["USE_GLIB"] = "1"
+ DEFINES["USE_NSS_CERTS"] = "1"
+@@ -178,8 +170,32 @@ if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2",
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+
++if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Android":
++
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
++if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
++
++ CXXFLAGS += [
++ "-msse2",
++ "-msse2"
++ ]
++
++if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
++
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ Library("common_audio_sse2_gn")
+diff --git a/third_party/libwebrtc/common_audio/fir_filter_factory_gn/moz.build b/third_party/libwebrtc/common_audio/fir_filter_factory_gn/moz.build
+index 47f99db..1dff4b4 100644
+--- a/third_party/libwebrtc/common_audio/fir_filter_factory_gn/moz.build
++++ b/third_party/libwebrtc/common_audio/fir_filter_factory_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/common_audio/third_party/ooura/fft_size_128_gn/moz.build b/third_party/libwebrtc/common_audio/third_party/ooura/fft_size_128_gn/moz.build
+index 142887b..90b3230 100644
+--- a/third_party/libwebrtc/common_audio/third_party/ooura/fft_size_128_gn/moz.build
++++ b/third_party/libwebrtc/common_audio/third_party/ooura/fft_size_128_gn/moz.build
+@@ -206,6 +206,7 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
+ CXXFLAGS += [
++ "-msse2",
+ "-msse2"
+ ]
+
+@@ -238,6 +239,7 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
+ CXXFLAGS += [
++ "-msse2",
+ "-msse2"
+ ]
+
+diff --git a/third_party/libwebrtc/common_audio/third_party/ooura/fft_size_256_gn/moz.build b/third_party/libwebrtc/common_audio/third_party/ooura/fft_size_256_gn/moz.build
+index b007a1e..f58d8e5 100644
+--- a/third_party/libwebrtc/common_audio/third_party/ooura/fft_size_256_gn/moz.build
++++ b/third_party/libwebrtc/common_audio/third_party/ooura/fft_size_256_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/common_audio/third_party/spl_sqrt_floor/spl_sqrt_floor_gn/moz.build b/third_party/libwebrtc/common_audio/third_party/spl_sqrt_floor/spl_sqrt_floor_gn/moz.build
+index ec6e2ec..a35f2de 100644
+--- a/third_party/libwebrtc/common_audio/third_party/spl_sqrt_floor/spl_sqrt_floor_gn/moz.build
++++ b/third_party/libwebrtc/common_audio/third_party/spl_sqrt_floor/spl_sqrt_floor_gn/moz.build
+@@ -190,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -220,6 +224,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/common_video/common_video_gn/moz.build b/third_party/libwebrtc/common_video/common_video_gn/moz.build
+index 369cdc3..9e39116 100644
+--- a/third_party/libwebrtc/common_video/common_video_gn/moz.build
++++ b/third_party/libwebrtc/common_video/common_video_gn/moz.build
+@@ -201,6 +201,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -217,6 +221,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/common_video/generic_frame_descriptor/generic_frame_descriptor_gn/moz.build b/third_party/libwebrtc/common_video/generic_frame_descriptor/generic_frame_descriptor_gn/moz.build
+index 651826f..5827e1f 100644
+--- a/third_party/libwebrtc/common_video/generic_frame_descriptor/generic_frame_descriptor_gn/moz.build
++++ b/third_party/libwebrtc/common_video/generic_frame_descriptor/generic_frame_descriptor_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/logging/rtc_event_audio_gn/moz.build b/third_party/libwebrtc/logging/rtc_event_audio_gn/moz.build
+index fc4a82d..f7ee1f3 100644
+--- a/third_party/libwebrtc/logging/rtc_event_audio_gn/moz.build
++++ b/third_party/libwebrtc/logging/rtc_event_audio_gn/moz.build
+@@ -181,6 +181,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -197,6 +201,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/logging/rtc_event_bwe_gn/moz.build b/third_party/libwebrtc/logging/rtc_event_bwe_gn/moz.build
+index 49e8f52..a1f3060 100644
+--- a/third_party/libwebrtc/logging/rtc_event_bwe_gn/moz.build
++++ b/third_party/libwebrtc/logging/rtc_event_bwe_gn/moz.build
+@@ -183,6 +183,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -199,6 +203,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/logging/rtc_event_field_gn/moz.build b/third_party/libwebrtc/logging/rtc_event_field_gn/moz.build
+index 0d64638..5e3ac8d 100644
+--- a/third_party/libwebrtc/logging/rtc_event_field_gn/moz.build
++++ b/third_party/libwebrtc/logging/rtc_event_field_gn/moz.build
+@@ -181,6 +181,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -197,6 +201,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/logging/rtc_event_number_encodings_gn/moz.build b/third_party/libwebrtc/logging/rtc_event_number_encodings_gn/moz.build
+index d6d86cd..9fbb704 100644
+--- a/third_party/libwebrtc/logging/rtc_event_number_encodings_gn/moz.build
++++ b/third_party/libwebrtc/logging/rtc_event_number_encodings_gn/moz.build
+@@ -176,6 +176,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -192,6 +196,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/logging/rtc_event_pacing_gn/moz.build b/third_party/libwebrtc/logging/rtc_event_pacing_gn/moz.build
+index 985b84c..ab80a10 100644
+--- a/third_party/libwebrtc/logging/rtc_event_pacing_gn/moz.build
++++ b/third_party/libwebrtc/logging/rtc_event_pacing_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/logging/rtc_event_rtp_rtcp_gn/moz.build b/third_party/libwebrtc/logging/rtc_event_rtp_rtcp_gn/moz.build
+index cc048c7..17c24f5 100644
+--- a/third_party/libwebrtc/logging/rtc_event_rtp_rtcp_gn/moz.build
++++ b/third_party/libwebrtc/logging/rtc_event_rtp_rtcp_gn/moz.build
+@@ -190,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -206,6 +210,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/logging/rtc_event_video_gn/moz.build b/third_party/libwebrtc/logging/rtc_event_video_gn/moz.build
+index b1758b7..fad62b6 100644
+--- a/third_party/libwebrtc/logging/rtc_event_video_gn/moz.build
++++ b/third_party/libwebrtc/logging/rtc_event_video_gn/moz.build
+@@ -179,6 +179,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -195,6 +199,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/logging/rtc_stream_config_gn/moz.build b/third_party/libwebrtc/logging/rtc_stream_config_gn/moz.build
+index 0273e15..6ec9346 100644
+--- a/third_party/libwebrtc/logging/rtc_stream_config_gn/moz.build
++++ b/third_party/libwebrtc/logging/rtc_stream_config_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/media/rtc_encoder_simulcast_proxy_gn/moz.build b/third_party/libwebrtc/media/rtc_encoder_simulcast_proxy_gn/moz.build
+index 9fd4c74..56988c6 100644
+--- a/third_party/libwebrtc/media/rtc_encoder_simulcast_proxy_gn/moz.build
++++ b/third_party/libwebrtc/media/rtc_encoder_simulcast_proxy_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/media/rtc_internal_video_codecs_gn/moz.build b/third_party/libwebrtc/media/rtc_internal_video_codecs_gn/moz.build
+index 09893f4..8195c95 100644
+--- a/third_party/libwebrtc/media/rtc_internal_video_codecs_gn/moz.build
++++ b/third_party/libwebrtc/media/rtc_internal_video_codecs_gn/moz.build
+@@ -189,6 +189,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -205,6 +209,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/media/rtc_media_base_gn/moz.build b/third_party/libwebrtc/media/rtc_media_base_gn/moz.build
+index b9b963a..6e03152 100644
+--- a/third_party/libwebrtc/media/rtc_media_base_gn/moz.build
++++ b/third_party/libwebrtc/media/rtc_media_base_gn/moz.build
+@@ -192,6 +192,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -208,6 +212,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/media/rtc_simulcast_encoder_adapter_gn/moz.build b/third_party/libwebrtc/media/rtc_simulcast_encoder_adapter_gn/moz.build
+index 1bc62c2..95e8042 100644
+--- a/third_party/libwebrtc/media/rtc_simulcast_encoder_adapter_gn/moz.build
++++ b/third_party/libwebrtc/media/rtc_simulcast_encoder_adapter_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/async_audio_processing/async_audio_processing_gn/moz.build b/third_party/libwebrtc/modules/async_audio_processing/async_audio_processing_gn/moz.build
+index 24f8656..da3a8ff 100644
+--- a/third_party/libwebrtc/modules/async_audio_processing/async_audio_processing_gn/moz.build
++++ b/third_party/libwebrtc/modules/async_audio_processing/async_audio_processing_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/audio_coding_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/audio_coding_gn/moz.build
+index 3d193a4..5413160 100644
+--- a/third_party/libwebrtc/modules/audio_coding/audio_coding_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/audio_coding_gn/moz.build
+@@ -189,6 +189,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -205,6 +209,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/audio_coding_opus_common_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/audio_coding_opus_common_gn/moz.build
+index 132dbaa..2d68003 100644
+--- a/third_party/libwebrtc/modules/audio_coding/audio_coding_opus_common_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/audio_coding_opus_common_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/audio_encoder_cng_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/audio_encoder_cng_gn/moz.build
+index 725d37c..e6544c1 100644
+--- a/third_party/libwebrtc/modules/audio_coding/audio_encoder_cng_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/audio_encoder_cng_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/audio_network_adaptor_config_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/audio_network_adaptor_config_gn/moz.build
+index 7ef11d4..1cc2a1a 100644
+--- a/third_party/libwebrtc/modules/audio_coding/audio_network_adaptor_config_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/audio_network_adaptor_config_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/audio_network_adaptor_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/audio_network_adaptor_gn/moz.build
+index b65fc49..5a88356 100644
+--- a/third_party/libwebrtc/modules/audio_coding/audio_network_adaptor_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/audio_network_adaptor_gn/moz.build
+@@ -195,6 +195,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -211,6 +215,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/default_neteq_factory_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/default_neteq_factory_gn/moz.build
+index 1576435..2fef324 100644
+--- a/third_party/libwebrtc/modules/audio_coding/default_neteq_factory_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/default_neteq_factory_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/g711_c_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/g711_c_gn/moz.build
+index ea97f94..f12c0cf 100644
+--- a/third_party/libwebrtc/modules/audio_coding/g711_c_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/g711_c_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/g711_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/g711_gn/moz.build
+index 80fb980..7e07287 100644
+--- a/third_party/libwebrtc/modules/audio_coding/g711_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/g711_gn/moz.build
+@@ -179,6 +179,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -195,6 +199,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/g722_c_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/g722_c_gn/moz.build
+index 87571de..4fa22a8 100644
+--- a/third_party/libwebrtc/modules/audio_coding/g722_c_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/g722_c_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/g722_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/g722_gn/moz.build
+index be80bff..3a32026 100644
+--- a/third_party/libwebrtc/modules/audio_coding/g722_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/g722_gn/moz.build
+@@ -179,6 +179,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -195,6 +199,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/ilbc_c_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/ilbc_c_gn/moz.build
+index 771a415..b741b15 100644
+--- a/third_party/libwebrtc/modules/audio_coding/ilbc_c_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/ilbc_c_gn/moz.build
+@@ -253,6 +253,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -269,6 +273,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/ilbc_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/ilbc_gn/moz.build
+index a652760..cbe6bc8 100644
+--- a/third_party/libwebrtc/modules/audio_coding/ilbc_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/ilbc_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/isac_c_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/isac_c_gn/moz.build
+index 09da7ad..72b82be 100644
+--- a/third_party/libwebrtc/modules/audio_coding/isac_c_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/isac_c_gn/moz.build
+@@ -191,6 +191,10 @@ if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "aarch64" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/isac_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/isac_gn/moz.build
+index 5e75a5c..d0b639c 100644
+--- a/third_party/libwebrtc/modules/audio_coding/isac_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/isac_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -181,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "aarch64" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/isac_vad_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/isac_vad_gn/moz.build
+index 2769ce2..b041262 100644
+--- a/third_party/libwebrtc/modules/audio_coding/isac_vad_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/isac_vad_gn/moz.build
+@@ -173,6 +173,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -189,6 +193,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/legacy_encoded_audio_frame_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/legacy_encoded_audio_frame_gn/moz.build
+index 81572e4..52330f7 100644
+--- a/third_party/libwebrtc/modules/audio_coding/legacy_encoded_audio_frame_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/legacy_encoded_audio_frame_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/neteq_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/neteq_gn/moz.build
+index 032a190..882516cc 100644
+--- a/third_party/libwebrtc/modules/audio_coding/neteq_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/neteq_gn/moz.build
+@@ -220,6 +220,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -236,6 +240,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/pcm16b_c_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/pcm16b_c_gn/moz.build
+index 4828d70..cec76eb 100644
+--- a/third_party/libwebrtc/modules/audio_coding/pcm16b_c_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/pcm16b_c_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/pcm16b_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/pcm16b_gn/moz.build
+index be33178..13fd71d 100644
+--- a/third_party/libwebrtc/modules/audio_coding/pcm16b_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/pcm16b_gn/moz.build
+@@ -180,6 +180,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -196,6 +200,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/red_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/red_gn/moz.build
+index 8b44f5f..2dce89a8 100644
+--- a/third_party/libwebrtc/modules/audio_coding/red_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/red_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/webrtc_cng_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/webrtc_cng_gn/moz.build
+index 8ff29da..f3c78d9 100644
+--- a/third_party/libwebrtc/modules/audio_coding/webrtc_cng_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/webrtc_cng_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_coding/webrtc_multiopus_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/webrtc_multiopus_gn/moz.build
+index ba2537b..04c2b235 100644
+--- a/third_party/libwebrtc/modules/audio_coding/webrtc_multiopus_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/webrtc_multiopus_gn/moz.build
+@@ -195,6 +195,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_CODEC_ISAC"] = True
+
+ OS_LIBS += [
+@@ -218,6 +222,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_CODEC_ISAC"] = True
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+diff --git a/third_party/libwebrtc/modules/audio_coding/webrtc_opus_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/webrtc_opus_gn/moz.build
+index 2142946..6be0387 100644
+--- a/third_party/libwebrtc/modules/audio_coding/webrtc_opus_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/webrtc_opus_gn/moz.build
+@@ -202,6 +202,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_CODEC_ISAC"] = True
+
+ OS_LIBS += [
+@@ -225,6 +229,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_CODEC_ISAC"] = True
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+diff --git a/third_party/libwebrtc/modules/audio_coding/webrtc_opus_wrapper_gn/moz.build b/third_party/libwebrtc/modules/audio_coding/webrtc_opus_wrapper_gn/moz.build
+index 5a26300..0300509 100644
+--- a/third_party/libwebrtc/modules/audio_coding/webrtc_opus_wrapper_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_coding/webrtc_opus_wrapper_gn/moz.build
+@@ -194,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_CODEC_ISAC"] = True
+
+ OS_LIBS += [
+@@ -217,6 +221,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_CODEC_ISAC"] = True
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+diff --git a/third_party/libwebrtc/modules/audio_device/audio_device_buffer_gn/moz.build b/third_party/libwebrtc/modules/audio_device/audio_device_buffer_gn/moz.build
+index 30a6f5a..442ae43 100644
+--- a/third_party/libwebrtc/modules/audio_device/audio_device_buffer_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_device/audio_device_buffer_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_device/audio_device_generic_gn/moz.build b/third_party/libwebrtc/modules/audio_device/audio_device_generic_gn/moz.build
+index cb0ddf1..e844bb5 100644
+--- a/third_party/libwebrtc/modules/audio_device/audio_device_generic_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_device/audio_device_generic_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_device/audio_device_impl_gn/moz.build b/third_party/libwebrtc/modules/audio_device/audio_device_impl_gn/moz.build
+index 0d8c6863..f5d912f 100644
+--- a/third_party/libwebrtc/modules/audio_device/audio_device_impl_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_device/audio_device_impl_gn/moz.build
+@@ -190,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -206,6 +210,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_mixer/audio_frame_manipulator_gn/moz.build b/third_party/libwebrtc/modules/audio_mixer/audio_frame_manipulator_gn/moz.build
+index 79dbb7b..b49bf28 100644
+--- a/third_party/libwebrtc/modules/audio_mixer/audio_frame_manipulator_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_mixer/audio_frame_manipulator_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_mixer/audio_mixer_impl_gn/moz.build b/third_party/libwebrtc/modules/audio_mixer/audio_mixer_impl_gn/moz.build
+index 1e88321..670d079 100644
+--- a/third_party/libwebrtc/modules/audio_mixer/audio_mixer_impl_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_mixer/audio_mixer_impl_gn/moz.build
+@@ -188,6 +188,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -204,6 +208,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/aec3/aec3_avx2_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/aec3/aec3_avx2_gn/moz.build
+index 23ed464..8550029 100644
+--- a/third_party/libwebrtc/modules/audio_processing/aec3/aec3_avx2_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/aec3/aec3_avx2_gn/moz.build
+@@ -171,8 +171,18 @@ if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+
++if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
++
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ Library("aec3_avx2_gn")
+diff --git a/third_party/libwebrtc/modules/audio_processing/aec3/aec3_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/aec3/aec3_gn/moz.build
+index 571aae8..84ba5f9 100644
+--- a/third_party/libwebrtc/modules/audio_processing/aec3/aec3_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/aec3/aec3_gn/moz.build
+@@ -242,6 +242,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -258,6 +262,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/aec_dump/null_aec_dump_factory_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/aec_dump/null_aec_dump_factory_gn/moz.build
+index ff1c21af..4516b00 100644
+--- a/third_party/libwebrtc/modules/audio_processing/aec_dump/null_aec_dump_factory_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/aec_dump/null_aec_dump_factory_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/aec_dump_interface_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/aec_dump_interface_gn/moz.build
+index 96883bf..8642ac2 100644
+--- a/third_party/libwebrtc/modules/audio_processing/aec_dump_interface_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/aec_dump_interface_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/aecm/aecm_core_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/aecm/aecm_core_gn/moz.build
+index aec0342..6684249 100644
+--- a/third_party/libwebrtc/modules/audio_processing/aecm/aecm_core_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/aecm/aecm_core_gn/moz.build
+@@ -195,6 +195,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -211,6 +215,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc/agc_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc/agc_gn/moz.build
+index f64fb94..7da897c 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc/agc_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc/agc_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc/analog_gain_stats_reporter_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc/analog_gain_stats_reporter_gn/moz.build
+index 63f69dc..11c61d2 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc/analog_gain_stats_reporter_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc/analog_gain_stats_reporter_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor_evaluator_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor_evaluator_gn/moz.build
+index f5acc34..f441f79 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor_evaluator_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor_evaluator_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor_gn/moz.build
+index fbbf08b..e95915c 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor_level_buffer_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor_level_buffer_gn/moz.build
+index e99a2d6..228d3b3 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor_level_buffer_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc/clipping_predictor_level_buffer_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc/legacy_agc_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc/legacy_agc_gn/moz.build
+index a9b1ddd0..3ca8fb0 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc/legacy_agc_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc/legacy_agc_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc/level_estimation_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc/level_estimation_gn/moz.build
+index c4bdd7c..eba8064 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc/level_estimation_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc/level_estimation_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/adaptive_digital_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/adaptive_digital_gn/moz.build
+index 26182ba..b9efc5b 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/adaptive_digital_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/adaptive_digital_gn/moz.build
+@@ -190,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -206,6 +210,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/biquad_filter_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/biquad_filter_gn/moz.build
+index ec66966..2cc7bca 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/biquad_filter_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/biquad_filter_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/cpu_features_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/cpu_features_gn/moz.build
+index 53d9444..13ec89c 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/cpu_features_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/cpu_features_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/fixed_digital_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/fixed_digital_gn/moz.build
+index 3e76688..a7361a5 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/fixed_digital_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/fixed_digital_gn/moz.build
+@@ -188,6 +188,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -204,6 +208,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/gain_applier_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/gain_applier_gn/moz.build
+index 1e7fc30..7fab3de 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/gain_applier_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/gain_applier_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/noise_level_estimator_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/noise_level_estimator_gn/moz.build
+index 6b53dda..91945d4 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/noise_level_estimator_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/noise_level_estimator_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_auto_correlation_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_auto_correlation_gn/moz.build
+index 1e156ad..d830beb 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_auto_correlation_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_auto_correlation_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_gn/moz.build
+index 26fa033..7964a97 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_layers_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_layers_gn/moz.build
+index 9bac4ab..97f2bc8 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_layers_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_layers_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_lp_residual_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_lp_residual_gn/moz.build
+index 19e8737..59255ad 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_lp_residual_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_lp_residual_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_pitch_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_pitch_gn/moz.build
+index 4d64842..7f5f921 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_pitch_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_pitch_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_spectral_features_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_spectral_features_gn/moz.build
+index 1cdba1b..f01159a 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_spectral_features_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/rnn_vad_spectral_features_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/vector_math_avx2_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/vector_math_avx2_gn/moz.build
+index a640c19..5b8c32b 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/vector_math_avx2_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/rnn_vad/vector_math_avx2_gn/moz.build
+@@ -166,8 +166,18 @@ if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+
++if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
++
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ Library("vector_math_avx2_gn")
+diff --git a/third_party/libwebrtc/modules/audio_processing/agc2/vad_wrapper_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/agc2/vad_wrapper_gn/moz.build
+index 30e1f281..7fa5ca0 100644
+--- a/third_party/libwebrtc/modules/audio_processing/agc2/vad_wrapper_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/agc2/vad_wrapper_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/api_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/api_gn/moz.build
+index eb8d4aa..4767e35 100644
+--- a/third_party/libwebrtc/modules/audio_processing/api_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/api_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/apm_logging_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/apm_logging_gn/moz.build
+index 555f8dc..5836eef 100644
+--- a/third_party/libwebrtc/modules/audio_processing/apm_logging_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/apm_logging_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/audio_buffer_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/audio_buffer_gn/moz.build
+index e642368..ef143d1 100644
+--- a/third_party/libwebrtc/modules/audio_processing/audio_buffer_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/audio_buffer_gn/moz.build
+@@ -188,6 +188,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -204,6 +208,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/audio_frame_proxies_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/audio_frame_proxies_gn/moz.build
+index 5485891..3c6a574 100644
+--- a/third_party/libwebrtc/modules/audio_processing/audio_frame_proxies_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/audio_frame_proxies_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/audio_processing_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/audio_processing_gn/moz.build
+index 0e55763..9487486 100644
+--- a/third_party/libwebrtc/modules/audio_processing/audio_processing_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/audio_processing_gn/moz.build
+@@ -192,6 +192,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -208,6 +212,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/audio_processing_statistics_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/audio_processing_statistics_gn/moz.build
+index 9446476..124481d 100644
+--- a/third_party/libwebrtc/modules/audio_processing/audio_processing_statistics_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/audio_processing_statistics_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/capture_levels_adjuster/capture_levels_adjuster_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/capture_levels_adjuster/capture_levels_adjuster_gn/moz.build
+index ded0d72..e29237e 100644
+--- a/third_party/libwebrtc/modules/audio_processing/capture_levels_adjuster/capture_levels_adjuster_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/capture_levels_adjuster/capture_levels_adjuster_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/gain_controller2_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/gain_controller2_gn/moz.build
+index b63751c..8fa7873 100644
+--- a/third_party/libwebrtc/modules/audio_processing/gain_controller2_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/gain_controller2_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/high_pass_filter_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/high_pass_filter_gn/moz.build
+index ca00a03..69130c9 100644
+--- a/third_party/libwebrtc/modules/audio_processing/high_pass_filter_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/high_pass_filter_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/ns/ns_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/ns/ns_gn/moz.build
+index d83a789..7465b54 100644
+--- a/third_party/libwebrtc/modules/audio_processing/ns/ns_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/ns/ns_gn/moz.build
+@@ -198,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -214,6 +218,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/optionally_built_submodule_creators_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/optionally_built_submodule_creators_gn/moz.build
+index b32a08b..00f3929 100644
+--- a/third_party/libwebrtc/modules/audio_processing/optionally_built_submodule_creators_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/optionally_built_submodule_creators_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/rms_level_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/rms_level_gn/moz.build
+index cb54ed6..c84a80b 100644
+--- a/third_party/libwebrtc/modules/audio_processing/rms_level_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/rms_level_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/transient/transient_suppressor_impl_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/transient/transient_suppressor_impl_gn/moz.build
+index b7f5a0e..68e7ad9 100644
+--- a/third_party/libwebrtc/modules/audio_processing/transient/transient_suppressor_impl_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/transient/transient_suppressor_impl_gn/moz.build
+@@ -189,6 +189,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -205,6 +209,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/transient/voice_probability_delay_unit_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/transient/voice_probability_delay_unit_gn/moz.build
+index 61917bc..f243fac2 100644
+--- a/third_party/libwebrtc/modules/audio_processing/transient/voice_probability_delay_unit_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/transient/voice_probability_delay_unit_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/utility/cascaded_biquad_filter_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/utility/cascaded_biquad_filter_gn/moz.build
+index 9147ecb..8eb3630 100644
+--- a/third_party/libwebrtc/modules/audio_processing/utility/cascaded_biquad_filter_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/utility/cascaded_biquad_filter_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/utility/legacy_delay_estimator_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/utility/legacy_delay_estimator_gn/moz.build
+index 2df7917..efa0723 100644
+--- a/third_party/libwebrtc/modules/audio_processing/utility/legacy_delay_estimator_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/utility/legacy_delay_estimator_gn/moz.build
+@@ -175,6 +175,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -191,6 +195,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/utility/pffft_wrapper_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/utility/pffft_wrapper_gn/moz.build
+index 9ecfbdf..1ddc21b 100644
+--- a/third_party/libwebrtc/modules/audio_processing/utility/pffft_wrapper_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/utility/pffft_wrapper_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/audio_processing/vad/vad_gn/moz.build b/third_party/libwebrtc/modules/audio_processing/vad/vad_gn/moz.build
+index 8c94a12..2f8c6bf 100644
+--- a/third_party/libwebrtc/modules/audio_processing/vad/vad_gn/moz.build
++++ b/third_party/libwebrtc/modules/audio_processing/vad/vad_gn/moz.build
+@@ -192,6 +192,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -208,6 +212,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/congestion_controller_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/congestion_controller_gn/moz.build
+index 17ab56b..cbb48cf 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/congestion_controller_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/congestion_controller_gn/moz.build
+@@ -189,6 +189,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -205,6 +209,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/goog_cc/alr_detector_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/goog_cc/alr_detector_gn/moz.build
+index 622fd6f..e7650a5 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/goog_cc/alr_detector_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/goog_cc/alr_detector_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/goog_cc/delay_based_bwe_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/goog_cc/delay_based_bwe_gn/moz.build
+index ac2e6ec..94c054e 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/goog_cc/delay_based_bwe_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/goog_cc/delay_based_bwe_gn/moz.build
+@@ -189,6 +189,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -205,6 +209,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/goog_cc/estimators_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/goog_cc/estimators_gn/moz.build
+index c2bee72..e022257 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/goog_cc/estimators_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/goog_cc/estimators_gn/moz.build
+@@ -193,6 +193,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -209,6 +213,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/goog_cc/goog_cc_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/goog_cc/goog_cc_gn/moz.build
+index ea12fe5..f162029 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/goog_cc/goog_cc_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/goog_cc/goog_cc_gn/moz.build
+@@ -188,6 +188,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -204,6 +208,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/goog_cc/link_capacity_estimator_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/goog_cc/link_capacity_estimator_gn/moz.build
+index b153a0e..123670e 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/goog_cc/link_capacity_estimator_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/goog_cc/link_capacity_estimator_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v1_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v1_gn/moz.build
+index e3394c9..9c1d802 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v1_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v1_gn/moz.build
+@@ -179,6 +179,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -195,6 +199,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2_gn/moz.build
+index 4064872..5788df6 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/goog_cc/loss_based_bwe_v2_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/goog_cc/probe_controller_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/goog_cc/probe_controller_gn/moz.build
+index e337176..838207cb 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/goog_cc/probe_controller_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/goog_cc/probe_controller_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/goog_cc/pushback_controller_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/goog_cc/pushback_controller_gn/moz.build
+index b7b667317..346c03e 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/goog_cc/pushback_controller_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/goog_cc/pushback_controller_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/goog_cc/send_side_bwe_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/goog_cc/send_side_bwe_gn/moz.build
+index 742df43..60277de 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/goog_cc/send_side_bwe_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/goog_cc/send_side_bwe_gn/moz.build
+@@ -188,6 +188,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -204,6 +208,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/rtp/control_handler_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/rtp/control_handler_gn/moz.build
+index b81ef2d..be6fa2d5 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/rtp/control_handler_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/rtp/control_handler_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/congestion_controller/rtp/transport_feedback_gn/moz.build b/third_party/libwebrtc/modules/congestion_controller/rtp/transport_feedback_gn/moz.build
+index b4d2de8..d93d0a5 100644
+--- a/third_party/libwebrtc/modules/congestion_controller/rtp/transport_feedback_gn/moz.build
++++ b/third_party/libwebrtc/modules/congestion_controller/rtp/transport_feedback_gn/moz.build
+@@ -188,6 +188,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -204,6 +208,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/desktop_capture/desktop_capture_differ_sse2_gn/moz.build b/third_party/libwebrtc/modules/desktop_capture/desktop_capture_differ_sse2_gn/moz.build
+index 1d9b39c..17e6b23 100644
+--- a/third_party/libwebrtc/modules/desktop_capture/desktop_capture_differ_sse2_gn/moz.build
++++ b/third_party/libwebrtc/modules/desktop_capture/desktop_capture_differ_sse2_gn/moz.build
+@@ -58,10 +58,6 @@ if CONFIG["OS_TARGET"] == "Darwin":
+
+ if CONFIG["OS_TARGET"] == "Linux":
+
+- CXXFLAGS += [
+- "-msse2"
+- ]
+-
+ DEFINES["USE_AURA"] = "1"
+ DEFINES["USE_GLIB"] = "1"
+ DEFINES["USE_NSS_CERTS"] = "1"
+@@ -139,4 +135,17 @@ if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux":
+
+ DEFINES["USE_X11"] = "1"
+
++if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
++
++ CXXFLAGS += [
++ "-msse2",
++ "-msse2"
++ ]
++
++if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
++
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ Library("desktop_capture_differ_sse2_gn")
+diff --git a/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn/moz.build b/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn/moz.build
+index 8631744..99ff74f 100644
+--- a/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn/moz.build
++++ b/third_party/libwebrtc/modules/desktop_capture/desktop_capture_gn/moz.build
+@@ -302,6 +302,10 @@ if CONFIG["CPU_ARCH"] == "aarch64" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["WEBRTC_USE_PIPEWIRE"] = True
+ DEFINES["_GNU_SOURCE"] = True
+diff --git a/third_party/libwebrtc/modules/desktop_capture/primitives_gn/moz.build b/third_party/libwebrtc/modules/desktop_capture/primitives_gn/moz.build
+index c0ef33e..24e2437 100644
+--- a/third_party/libwebrtc/modules/desktop_capture/primitives_gn/moz.build
++++ b/third_party/libwebrtc/modules/desktop_capture/primitives_gn/moz.build
+@@ -158,6 +158,10 @@ if CONFIG["CPU_ARCH"] == "aarch64" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/pacing/interval_budget_gn/moz.build b/third_party/libwebrtc/modules/pacing/interval_budget_gn/moz.build
+index f03ff5e..760775b 100644
+--- a/third_party/libwebrtc/modules/pacing/interval_budget_gn/moz.build
++++ b/third_party/libwebrtc/modules/pacing/interval_budget_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/pacing/pacing_gn/moz.build b/third_party/libwebrtc/modules/pacing/pacing_gn/moz.build
+index eb2187e..e793fad 100644
+--- a/third_party/libwebrtc/modules/pacing/pacing_gn/moz.build
++++ b/third_party/libwebrtc/modules/pacing/pacing_gn/moz.build
+@@ -195,6 +195,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -211,6 +215,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/remote_bitrate_estimator/remote_bitrate_estimator_gn/moz.build b/third_party/libwebrtc/modules/remote_bitrate_estimator/remote_bitrate_estimator_gn/moz.build
+index 7af9c5f..677db04 100644
+--- a/third_party/libwebrtc/modules/remote_bitrate_estimator/remote_bitrate_estimator_gn/moz.build
++++ b/third_party/libwebrtc/modules/remote_bitrate_estimator/remote_bitrate_estimator_gn/moz.build
+@@ -199,6 +199,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -215,6 +219,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/rtp_rtcp/rtp_rtcp_format_gn/moz.build b/third_party/libwebrtc/modules/rtp_rtcp/rtp_rtcp_format_gn/moz.build
+index 0a05e48..5816bb0 100644
+--- a/third_party/libwebrtc/modules/rtp_rtcp/rtp_rtcp_format_gn/moz.build
++++ b/third_party/libwebrtc/modules/rtp_rtcp/rtp_rtcp_format_gn/moz.build
+@@ -229,6 +229,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -245,6 +249,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/rtp_rtcp/rtp_rtcp_gn/moz.build b/third_party/libwebrtc/modules/rtp_rtcp/rtp_rtcp_gn/moz.build
+index ff314f8..e314aa9 100644
+--- a/third_party/libwebrtc/modules/rtp_rtcp/rtp_rtcp_gn/moz.build
++++ b/third_party/libwebrtc/modules/rtp_rtcp/rtp_rtcp_gn/moz.build
+@@ -239,6 +239,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -255,6 +259,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/rtp_rtcp/rtp_video_header_gn/moz.build b/third_party/libwebrtc/modules/rtp_rtcp/rtp_video_header_gn/moz.build
+index 7bb5cb1..910f13b 100644
+--- a/third_party/libwebrtc/modules/rtp_rtcp/rtp_video_header_gn/moz.build
++++ b/third_party/libwebrtc/modules/rtp_rtcp/rtp_video_header_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/third_party/fft/fft_gn/moz.build b/third_party/libwebrtc/modules/third_party/fft/fft_gn/moz.build
+index f035730..657eed3 100644
+--- a/third_party/libwebrtc/modules/third_party/fft/fft_gn/moz.build
++++ b/third_party/libwebrtc/modules/third_party/fft/fft_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/third_party/g711/g711_3p_gn/moz.build b/third_party/libwebrtc/modules/third_party/g711/g711_3p_gn/moz.build
+index 240656c..561738d 100644
+--- a/third_party/libwebrtc/modules/third_party/g711/g711_3p_gn/moz.build
++++ b/third_party/libwebrtc/modules/third_party/g711/g711_3p_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/third_party/g722/g722_3p_gn/moz.build b/third_party/libwebrtc/modules/third_party/g722/g722_3p_gn/moz.build
+index 3657b2c..947b0b1 100644
+--- a/third_party/libwebrtc/modules/third_party/g722/g722_3p_gn/moz.build
++++ b/third_party/libwebrtc/modules/third_party/g722/g722_3p_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/utility/utility_gn/moz.build b/third_party/libwebrtc/modules/utility/utility_gn/moz.build
+index 5b578af..222776d 100644
+--- a/third_party/libwebrtc/modules/utility/utility_gn/moz.build
++++ b/third_party/libwebrtc/modules/utility/utility_gn/moz.build
+@@ -175,6 +175,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+diff --git a/third_party/libwebrtc/modules/video_capture/video_capture_internal_impl_gn/moz.build b/third_party/libwebrtc/modules/video_capture/video_capture_internal_impl_gn/moz.build
+index d7b98c3..a150b56 100644
+--- a/third_party/libwebrtc/modules/video_capture/video_capture_internal_impl_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_capture/video_capture_internal_impl_gn/moz.build
+@@ -228,6 +228,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_capture/video_capture_module_gn/moz.build b/third_party/libwebrtc/modules/video_capture/video_capture_module_gn/moz.build
+index 4cad010..cf4aae4 100644
+--- a/third_party/libwebrtc/modules/video_capture/video_capture_module_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_capture/video_capture_module_gn/moz.build
+@@ -191,6 +191,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -207,6 +211,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/chain_diff_calculator_gn/moz.build b/third_party/libwebrtc/modules/video_coding/chain_diff_calculator_gn/moz.build
+index 09766af..fa501a9 100644
+--- a/third_party/libwebrtc/modules/video_coding/chain_diff_calculator_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/chain_diff_calculator_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/codecs/av1/av1_svc_config_gn/moz.build b/third_party/libwebrtc/modules/video_coding/codecs/av1/av1_svc_config_gn/moz.build
+index f3bef36..6a404f8 100644
+--- a/third_party/libwebrtc/modules/video_coding/codecs/av1/av1_svc_config_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/codecs/av1/av1_svc_config_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/codecs/av1/dav1d_decoder_gn/moz.build b/third_party/libwebrtc/modules/video_coding/codecs/av1/dav1d_decoder_gn/moz.build
+index c21b842..fa1d2d04 100644
+--- a/third_party/libwebrtc/modules/video_coding/codecs/av1/dav1d_decoder_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/codecs/av1/dav1d_decoder_gn/moz.build
+@@ -191,6 +191,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -207,6 +211,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/codecs/av1/libaom_av1_decoder_gn/moz.build b/third_party/libwebrtc/modules/video_coding/codecs/av1/libaom_av1_decoder_gn/moz.build
+index 15ec27b..8add2b3 100644
+--- a/third_party/libwebrtc/modules/video_coding/codecs/av1/libaom_av1_decoder_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/codecs/av1/libaom_av1_decoder_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/encoded_frame_gn/moz.build b/third_party/libwebrtc/modules/video_coding/encoded_frame_gn/moz.build
+index 2c74aec1..88d3195 100644
+--- a/third_party/libwebrtc/modules/video_coding/encoded_frame_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/encoded_frame_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/frame_dependencies_calculator_gn/moz.build b/third_party/libwebrtc/modules/video_coding/frame_dependencies_calculator_gn/moz.build
+index b39c49b..bb1ad6c 100644
+--- a/third_party/libwebrtc/modules/video_coding/frame_dependencies_calculator_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/frame_dependencies_calculator_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/frame_helpers_gn/moz.build b/third_party/libwebrtc/modules/video_coding/frame_helpers_gn/moz.build
+index 34db296..cf026bb 100644
+--- a/third_party/libwebrtc/modules/video_coding/frame_helpers_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/frame_helpers_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/nack_requester_gn/moz.build b/third_party/libwebrtc/modules/video_coding/nack_requester_gn/moz.build
+index 82f0c8e..0901362 100644
+--- a/third_party/libwebrtc/modules/video_coding/nack_requester_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/nack_requester_gn/moz.build
+@@ -186,6 +186,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -202,6 +206,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/packet_buffer_gn/moz.build b/third_party/libwebrtc/modules/video_coding/packet_buffer_gn/moz.build
+index 12ec6e5..846ee15 100644
+--- a/third_party/libwebrtc/modules/video_coding/packet_buffer_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/packet_buffer_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/svc/scalability_mode_util_gn/moz.build b/third_party/libwebrtc/modules/video_coding/svc/scalability_mode_util_gn/moz.build
+index 2c545af9..db1c3dd 100644
+--- a/third_party/libwebrtc/modules/video_coding/svc/scalability_mode_util_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/svc/scalability_mode_util_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/svc/scalability_structures_gn/moz.build b/third_party/libwebrtc/modules/video_coding/svc/scalability_structures_gn/moz.build
+index dbd579d..6f1feb6 100644
+--- a/third_party/libwebrtc/modules/video_coding/svc/scalability_structures_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/svc/scalability_structures_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/svc/scalable_video_controller_gn/moz.build b/third_party/libwebrtc/modules/video_coding/svc/scalable_video_controller_gn/moz.build
+index 8e22ed6..a6a4eb1 100644
+--- a/third_party/libwebrtc/modules/video_coding/svc/scalable_video_controller_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/svc/scalable_video_controller_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/svc/svc_rate_allocator_gn/moz.build b/third_party/libwebrtc/modules/video_coding/svc/svc_rate_allocator_gn/moz.build
+index cb5e4a4..93c76f5 100644
+--- a/third_party/libwebrtc/modules/video_coding/svc/svc_rate_allocator_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/svc/svc_rate_allocator_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/timing/codec_timer_gn/moz.build b/third_party/libwebrtc/modules/video_coding/timing/codec_timer_gn/moz.build
+index fe230f2..43dd17d 100644
+--- a/third_party/libwebrtc/modules/video_coding/timing/codec_timer_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/timing/codec_timer_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/timing/frame_delay_delta_kalman_filter_gn/moz.build b/third_party/libwebrtc/modules/video_coding/timing/frame_delay_delta_kalman_filter_gn/moz.build
+index 35e13f8..7002434 100644
+--- a/third_party/libwebrtc/modules/video_coding/timing/frame_delay_delta_kalman_filter_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/timing/frame_delay_delta_kalman_filter_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/timing/inter_frame_delay_gn/moz.build b/third_party/libwebrtc/modules/video_coding/timing/inter_frame_delay_gn/moz.build
+index 84a87f2..cffa97b 100644
+--- a/third_party/libwebrtc/modules/video_coding/timing/inter_frame_delay_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/timing/inter_frame_delay_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/timing/jitter_estimator_gn/moz.build b/third_party/libwebrtc/modules/video_coding/timing/jitter_estimator_gn/moz.build
+index f45f6f0..cf5cb9b 100644
+--- a/third_party/libwebrtc/modules/video_coding/timing/jitter_estimator_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/timing/jitter_estimator_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/timing/rtt_filter_gn/moz.build b/third_party/libwebrtc/modules/video_coding/timing/rtt_filter_gn/moz.build
+index 54c90f4..3501181 100644
+--- a/third_party/libwebrtc/modules/video_coding/timing/rtt_filter_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/timing/rtt_filter_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/timing/timing_module_gn/moz.build b/third_party/libwebrtc/modules/video_coding/timing/timing_module_gn/moz.build
+index 7f4e361..fd78905 100644
+--- a/third_party/libwebrtc/modules/video_coding/timing/timing_module_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/timing/timing_module_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/video_codec_interface_gn/moz.build b/third_party/libwebrtc/modules/video_coding/video_codec_interface_gn/moz.build
+index da29622..874eb3e1 100644
+--- a/third_party/libwebrtc/modules/video_coding/video_codec_interface_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/video_codec_interface_gn/moz.build
+@@ -188,6 +188,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -204,6 +208,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/video_coding_gn/moz.build b/third_party/libwebrtc/modules/video_coding/video_coding_gn/moz.build
+index f04ffa3..a32bb40 100644
+--- a/third_party/libwebrtc/modules/video_coding/video_coding_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/video_coding_gn/moz.build
+@@ -203,6 +203,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -219,6 +223,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/video_coding_utility_gn/moz.build b/third_party/libwebrtc/modules/video_coding/video_coding_utility_gn/moz.build
+index 1fb1c34..e3ca123 100644
+--- a/third_party/libwebrtc/modules/video_coding/video_coding_utility_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/video_coding_utility_gn/moz.build
+@@ -198,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -214,6 +218,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/webrtc_h264_gn/moz.build b/third_party/libwebrtc/modules/video_coding/webrtc_h264_gn/moz.build
+index 68f59de..6bb40e7 100644
+--- a/third_party/libwebrtc/modules/video_coding/webrtc_h264_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/webrtc_h264_gn/moz.build
+@@ -192,6 +192,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -208,6 +212,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/webrtc_libvpx_interface_gn/moz.build b/third_party/libwebrtc/modules/video_coding/webrtc_libvpx_interface_gn/moz.build
+index 6f360d9..48d1acf 100644
+--- a/third_party/libwebrtc/modules/video_coding/webrtc_libvpx_interface_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/webrtc_libvpx_interface_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/webrtc_multiplex_gn/moz.build b/third_party/libwebrtc/modules/video_coding/webrtc_multiplex_gn/moz.build
+index 2b1679f..8f44308 100644
+--- a/third_party/libwebrtc/modules/video_coding/webrtc_multiplex_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/webrtc_multiplex_gn/moz.build
+@@ -190,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -206,6 +210,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/webrtc_vp8_gn/moz.build b/third_party/libwebrtc/modules/video_coding/webrtc_vp8_gn/moz.build
+index d4a85cb..5b389c1 100644
+--- a/third_party/libwebrtc/modules/video_coding/webrtc_vp8_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/webrtc_vp8_gn/moz.build
+@@ -190,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -206,6 +210,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/webrtc_vp8_scalability_gn/moz.build b/third_party/libwebrtc/modules/video_coding/webrtc_vp8_scalability_gn/moz.build
+index 1e8317f..cfb48cb 100644
+--- a/third_party/libwebrtc/modules/video_coding/webrtc_vp8_scalability_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/webrtc_vp8_scalability_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/webrtc_vp8_temporal_layers_gn/moz.build b/third_party/libwebrtc/modules/video_coding/webrtc_vp8_temporal_layers_gn/moz.build
+index 2e8bb42..61d9760 100644
+--- a/third_party/libwebrtc/modules/video_coding/webrtc_vp8_temporal_layers_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/webrtc_vp8_temporal_layers_gn/moz.build
+@@ -192,6 +192,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -208,6 +212,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/webrtc_vp9_gn/moz.build b/third_party/libwebrtc/modules/video_coding/webrtc_vp9_gn/moz.build
+index e3f0d17..5cda04c 100644
+--- a/third_party/libwebrtc/modules/video_coding/webrtc_vp9_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/webrtc_vp9_gn/moz.build
+@@ -192,6 +192,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -208,6 +212,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_coding/webrtc_vp9_helpers_gn/moz.build b/third_party/libwebrtc/modules/video_coding/webrtc_vp9_helpers_gn/moz.build
+index c73282c..a36c89a 100644
+--- a/third_party/libwebrtc/modules/video_coding/webrtc_vp9_helpers_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_coding/webrtc_vp9_helpers_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_processing/video_processing_gn/moz.build b/third_party/libwebrtc/modules/video_processing/video_processing_gn/moz.build
+index aa332ad..35fad80 100644
+--- a/third_party/libwebrtc/modules/video_processing/video_processing_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_processing/video_processing_gn/moz.build
+@@ -193,6 +193,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -209,6 +213,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/modules/video_processing/video_processing_sse2_gn/moz.build b/third_party/libwebrtc/modules/video_processing/video_processing_sse2_gn/moz.build
+index 9d41f52..4b61e52 100644
+--- a/third_party/libwebrtc/modules/video_processing/video_processing_sse2_gn/moz.build
++++ b/third_party/libwebrtc/modules/video_processing/video_processing_sse2_gn/moz.build
+@@ -45,10 +45,6 @@ if CONFIG["MOZ_DEBUG"] == "1":
+
+ if CONFIG["OS_TARGET"] == "Android":
+
+- CXXFLAGS += [
+- "-msse2"
+- ]
+-
+ DEFINES["ANDROID"] = True
+ DEFINES["ANDROID_NDK_VERSION_ROLL"] = "r22_1"
+ DEFINES["HAVE_SYS_UIO_H"] = True
+@@ -79,10 +75,6 @@ if CONFIG["OS_TARGET"] == "Darwin":
+
+ if CONFIG["OS_TARGET"] == "Linux":
+
+- CXXFLAGS += [
+- "-msse2"
+- ]
+-
+ DEFINES["USE_AURA"] = "1"
+ DEFINES["USE_GLIB"] = "1"
+ DEFINES["USE_NSS_CERTS"] = "1"
+@@ -177,8 +169,32 @@ if CONFIG["MOZ_X11"] == "1" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2",
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+
++if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Android":
++
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
++if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
++
++ CXXFLAGS += [
++ "-msse2",
++ "-msse2"
++ ]
++
++if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
++
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ Library("video_processing_sse2_gn")
+diff --git a/third_party/libwebrtc/rtc_base/async_resolver_interface_gn/moz.build b/third_party/libwebrtc/rtc_base/async_resolver_interface_gn/moz.build
+index 5628bb3..3f5752d 100644
+--- a/third_party/libwebrtc/rtc_base/async_resolver_interface_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/async_resolver_interface_gn/moz.build
+@@ -182,6 +182,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -198,6 +202,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/async_socket_gn/moz.build b/third_party/libwebrtc/rtc_base/async_socket_gn/moz.build
+index 732d822..9b8256f 100644
+--- a/third_party/libwebrtc/rtc_base/async_socket_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/async_socket_gn/moz.build
+@@ -182,6 +182,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -198,6 +202,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/audio_format_to_string_gn/moz.build b/third_party/libwebrtc/rtc_base/audio_format_to_string_gn/moz.build
+index 10985c3..3c1beb4 100644
+--- a/third_party/libwebrtc/rtc_base/audio_format_to_string_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/audio_format_to_string_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/bit_buffer_gn/moz.build b/third_party/libwebrtc/rtc_base/bit_buffer_gn/moz.build
+index b3daad9..c637406 100644
+--- a/third_party/libwebrtc/rtc_base/bit_buffer_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/bit_buffer_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/bitstream_reader_gn/moz.build b/third_party/libwebrtc/rtc_base/bitstream_reader_gn/moz.build
+index 5578717..2d69397 100644
+--- a/third_party/libwebrtc/rtc_base/bitstream_reader_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/bitstream_reader_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/byte_buffer_gn/moz.build b/third_party/libwebrtc/rtc_base/byte_buffer_gn/moz.build
+index ab65698..b835608 100644
+--- a/third_party/libwebrtc/rtc_base/byte_buffer_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/byte_buffer_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/callback_list_gn/moz.build b/third_party/libwebrtc/rtc_base/callback_list_gn/moz.build
+index 6c63dc7..4445d76 100644
+--- a/third_party/libwebrtc/rtc_base/callback_list_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/callback_list_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/checks_gn/moz.build b/third_party/libwebrtc/rtc_base/checks_gn/moz.build
+index 1c7ee11..e0af0a1 100644
+--- a/third_party/libwebrtc/rtc_base/checks_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/checks_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/containers/flat_containers_internal_gn/moz.build b/third_party/libwebrtc/rtc_base/containers/flat_containers_internal_gn/moz.build
+index aeba5a1f..aa05eb0 100644
+--- a/third_party/libwebrtc/rtc_base/containers/flat_containers_internal_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/containers/flat_containers_internal_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/copy_on_write_buffer_gn/moz.build b/third_party/libwebrtc/rtc_base/copy_on_write_buffer_gn/moz.build
+index 5a3b34c..04c029d 100644
+--- a/third_party/libwebrtc/rtc_base/copy_on_write_buffer_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/copy_on_write_buffer_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/criticalsection_gn/moz.build b/third_party/libwebrtc/rtc_base/criticalsection_gn/moz.build
+index 9e2ce84..b44ed25 100644
+--- a/third_party/libwebrtc/rtc_base/criticalsection_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/criticalsection_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/event_tracer_gn/moz.build b/third_party/libwebrtc/rtc_base/event_tracer_gn/moz.build
+index 50d3678..cb13df8 100644
+--- a/third_party/libwebrtc/rtc_base/event_tracer_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/event_tracer_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/alr_experiment_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/alr_experiment_gn/moz.build
+index 6fae52b..6f7ca39 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/alr_experiment_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/alr_experiment_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/balanced_degradation_settings_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/balanced_degradation_settings_gn/moz.build
+index 4e7e01c..4a21ab4 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/balanced_degradation_settings_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/balanced_degradation_settings_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/bandwidth_quality_scaler_settings_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/bandwidth_quality_scaler_settings_gn/moz.build
+index b77512e..6f550d30 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/bandwidth_quality_scaler_settings_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/bandwidth_quality_scaler_settings_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/cpu_speed_experiment_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/cpu_speed_experiment_gn/moz.build
+index b2eda23..c01df40 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/cpu_speed_experiment_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/cpu_speed_experiment_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/encoder_info_settings_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/encoder_info_settings_gn/moz.build
+index 28b528d..b6a837a 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/encoder_info_settings_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/encoder_info_settings_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/field_trial_parser_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/field_trial_parser_gn/moz.build
+index b87d19d..f1d406e 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/field_trial_parser_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/field_trial_parser_gn/moz.build
+@@ -181,6 +181,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -197,6 +201,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/keyframe_interval_settings_experiment_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/keyframe_interval_settings_experiment_gn/moz.build
+index 4fc29dd..67a9927 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/keyframe_interval_settings_experiment_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/keyframe_interval_settings_experiment_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/min_video_bitrate_experiment_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/min_video_bitrate_experiment_gn/moz.build
+index eb80428..60672ef 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/min_video_bitrate_experiment_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/min_video_bitrate_experiment_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/quality_rampup_experiment_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/quality_rampup_experiment_gn/moz.build
+index b1c8c0d..995a262 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/quality_rampup_experiment_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/quality_rampup_experiment_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/quality_scaler_settings_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/quality_scaler_settings_gn/moz.build
+index e03ac53..532a0ac 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/quality_scaler_settings_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/quality_scaler_settings_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/quality_scaling_experiment_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/quality_scaling_experiment_gn/moz.build
+index 8eab3b6..ad92026 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/quality_scaling_experiment_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/quality_scaling_experiment_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/rate_control_settings_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/rate_control_settings_gn/moz.build
+index 0d2c512..383043a 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/rate_control_settings_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/rate_control_settings_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/rtt_mult_experiment_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/rtt_mult_experiment_gn/moz.build
+index a2d84ca..11f41f9 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/rtt_mult_experiment_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/rtt_mult_experiment_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/experiments/stable_target_rate_experiment_gn/moz.build b/third_party/libwebrtc/rtc_base/experiments/stable_target_rate_experiment_gn/moz.build
+index 587c408..8db1337 100644
+--- a/third_party/libwebrtc/rtc_base/experiments/stable_target_rate_experiment_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/experiments/stable_target_rate_experiment_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/histogram_percentile_counter_gn/moz.build b/third_party/libwebrtc/rtc_base/histogram_percentile_counter_gn/moz.build
+index b4a901c..1e33e7b 100644
+--- a/third_party/libwebrtc/rtc_base/histogram_percentile_counter_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/histogram_percentile_counter_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/ifaddrs_android_gn/moz.build b/third_party/libwebrtc/rtc_base/ifaddrs_android_gn/moz.build
+index 404b7f5..4c4ae05 100644
+--- a/third_party/libwebrtc/rtc_base/ifaddrs_android_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/ifaddrs_android_gn/moz.build
+@@ -81,6 +81,10 @@ if CONFIG["CPU_ARCH"] == "arm":
+
+ if CONFIG["CPU_ARCH"] == "x86":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+diff --git a/third_party/libwebrtc/rtc_base/ip_address_gn/moz.build b/third_party/libwebrtc/rtc_base/ip_address_gn/moz.build
+index 686dd85..8e527c2 100644
+--- a/third_party/libwebrtc/rtc_base/ip_address_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/ip_address_gn/moz.build
+@@ -182,6 +182,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -198,6 +202,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/location_gn/moz.build b/third_party/libwebrtc/rtc_base/location_gn/moz.build
+index e5ccd52..bb071c2 100644
+--- a/third_party/libwebrtc/rtc_base/location_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/location_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/logging_gn/moz.build b/third_party/libwebrtc/rtc_base/logging_gn/moz.build
+index 25c1b29..4ed50b3 100644
+--- a/third_party/libwebrtc/rtc_base/logging_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/logging_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/memory/aligned_malloc_gn/moz.build b/third_party/libwebrtc/rtc_base/memory/aligned_malloc_gn/moz.build
+index aeb2867..ab3de421 100644
+--- a/third_party/libwebrtc/rtc_base/memory/aligned_malloc_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/memory/aligned_malloc_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/net_helpers_gn/moz.build b/third_party/libwebrtc/rtc_base/net_helpers_gn/moz.build
+index 9544696..bcc958b 100644
+--- a/third_party/libwebrtc/rtc_base/net_helpers_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/net_helpers_gn/moz.build
+@@ -182,6 +182,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -198,6 +202,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/network/sent_packet_gn/moz.build b/third_party/libwebrtc/rtc_base/network/sent_packet_gn/moz.build
+index e91b1dd..491703f 100644
+--- a/third_party/libwebrtc/rtc_base/network/sent_packet_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/network/sent_packet_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/network_constants_gn/moz.build b/third_party/libwebrtc/rtc_base/network_constants_gn/moz.build
+index 14b68b4..05bbb06 100644
+--- a/third_party/libwebrtc/rtc_base/network_constants_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/network_constants_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/null_socket_server_gn/moz.build b/third_party/libwebrtc/rtc_base/null_socket_server_gn/moz.build
+index 52ae3bc..44c2034 100644
+--- a/third_party/libwebrtc/rtc_base/null_socket_server_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/null_socket_server_gn/moz.build
+@@ -182,6 +182,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -198,6 +202,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/platform_thread_gn/moz.build b/third_party/libwebrtc/rtc_base/platform_thread_gn/moz.build
+index c759dfd..fbc161e 100644
+--- a/third_party/libwebrtc/rtc_base/platform_thread_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/platform_thread_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/platform_thread_types_gn/moz.build b/third_party/libwebrtc/rtc_base/platform_thread_types_gn/moz.build
+index 5962bb5..0087192 100644
+--- a/third_party/libwebrtc/rtc_base/platform_thread_types_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/platform_thread_types_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/race_checker_gn/moz.build b/third_party/libwebrtc/rtc_base/race_checker_gn/moz.build
+index e1eee7a..b06d2df 100644
+--- a/third_party/libwebrtc/rtc_base/race_checker_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/race_checker_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/random_gn/moz.build b/third_party/libwebrtc/rtc_base/random_gn/moz.build
+index a0f473e..4bde747 100644
+--- a/third_party/libwebrtc/rtc_base/random_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/random_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/rate_limiter_gn/moz.build b/third_party/libwebrtc/rtc_base/rate_limiter_gn/moz.build
+index f3b8159..70306d4 100644
+--- a/third_party/libwebrtc/rtc_base/rate_limiter_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/rate_limiter_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/rate_statistics_gn/moz.build b/third_party/libwebrtc/rtc_base/rate_statistics_gn/moz.build
+index fdb0812..ab0774c 100644
+--- a/third_party/libwebrtc/rtc_base/rate_statistics_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/rate_statistics_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/rate_tracker_gn/moz.build b/third_party/libwebrtc/rtc_base/rate_tracker_gn/moz.build
+index b793860..c86b682 100644
+--- a/third_party/libwebrtc/rtc_base/rate_tracker_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/rate_tracker_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/rtc_base_gn/moz.build b/third_party/libwebrtc/rtc_base/rtc_base_gn/moz.build
+index 5b5c480..4b8e41d 100644
+--- a/third_party/libwebrtc/rtc_base/rtc_base_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/rtc_base_gn/moz.build
+@@ -210,6 +210,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -226,6 +230,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/rtc_event_gn/moz.build b/third_party/libwebrtc/rtc_base/rtc_event_gn/moz.build
+index 8357ece..f8a9d99 100644
+--- a/third_party/libwebrtc/rtc_base/rtc_event_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/rtc_event_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/rtc_numerics_gn/moz.build b/third_party/libwebrtc/rtc_base/rtc_numerics_gn/moz.build
+index 46355c5..6699b02 100644
+--- a/third_party/libwebrtc/rtc_base/rtc_numerics_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/rtc_numerics_gn/moz.build
+@@ -176,6 +176,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -192,6 +196,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/rtc_task_queue_gn/moz.build b/third_party/libwebrtc/rtc_base/rtc_task_queue_gn/moz.build
+index 333461b..8a1fe58 100644
+--- a/third_party/libwebrtc/rtc_base/rtc_task_queue_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/rtc_task_queue_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/sample_counter_gn/moz.build b/third_party/libwebrtc/rtc_base/sample_counter_gn/moz.build
+index da05f0b..dae08d1 100644
+--- a/third_party/libwebrtc/rtc_base/sample_counter_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/sample_counter_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/socket_address_gn/moz.build b/third_party/libwebrtc/rtc_base/socket_address_gn/moz.build
+index 615800a..8f2840a 100644
+--- a/third_party/libwebrtc/rtc_base/socket_address_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/socket_address_gn/moz.build
+@@ -182,6 +182,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -198,6 +202,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/socket_gn/moz.build b/third_party/libwebrtc/rtc_base/socket_gn/moz.build
+index a77aa3b..69cab03 100644
+--- a/third_party/libwebrtc/rtc_base/socket_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/socket_gn/moz.build
+@@ -182,6 +182,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -198,6 +202,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/stringutils_gn/moz.build b/third_party/libwebrtc/rtc_base/stringutils_gn/moz.build
+index a28a8193..853932b 100644
+--- a/third_party/libwebrtc/rtc_base/stringutils_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/stringutils_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/synchronization/sequence_checker_internal_gn/moz.build b/third_party/libwebrtc/rtc_base/synchronization/sequence_checker_internal_gn/moz.build
+index e930dc4..ec28ce3 100644
+--- a/third_party/libwebrtc/rtc_base/synchronization/sequence_checker_internal_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/synchronization/sequence_checker_internal_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/synchronization/yield_gn/moz.build b/third_party/libwebrtc/rtc_base/synchronization/yield_gn/moz.build
+index c1c194d..6147698 100644
+--- a/third_party/libwebrtc/rtc_base/synchronization/yield_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/synchronization/yield_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/synchronization/yield_policy_gn/moz.build b/third_party/libwebrtc/rtc_base/synchronization/yield_policy_gn/moz.build
+index 3f9531f..11d6b02 100644
+--- a/third_party/libwebrtc/rtc_base/synchronization/yield_policy_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/synchronization/yield_policy_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/system/file_wrapper_gn/moz.build b/third_party/libwebrtc/rtc_base/system/file_wrapper_gn/moz.build
+index 7dcc5ec..37f1a04 100644
+--- a/third_party/libwebrtc/rtc_base/system/file_wrapper_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/system/file_wrapper_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/task_utils/repeating_task_gn/moz.build b/third_party/libwebrtc/rtc_base/task_utils/repeating_task_gn/moz.build
+index 46a6aca..9e5147f 100644
+--- a/third_party/libwebrtc/rtc_base/task_utils/repeating_task_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/task_utils/repeating_task_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/third_party/base64/base64_gn/moz.build b/third_party/libwebrtc/rtc_base/third_party/base64/base64_gn/moz.build
+index c123810..f5864a3 100644
+--- a/third_party/libwebrtc/rtc_base/third_party/base64/base64_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/third_party/base64/base64_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/third_party/sigslot/sigslot_gn/moz.build b/third_party/libwebrtc/rtc_base/third_party/sigslot/sigslot_gn/moz.build
+index 7d7f886..f475776 100644
+--- a/third_party/libwebrtc/rtc_base/third_party/sigslot/sigslot_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/third_party/sigslot/sigslot_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/threading_gn/moz.build b/third_party/libwebrtc/rtc_base/threading_gn/moz.build
+index 5620799..cd18d97 100644
+--- a/third_party/libwebrtc/rtc_base/threading_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/threading_gn/moz.build
+@@ -188,6 +188,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -204,6 +208,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/time/timestamp_extrapolator_gn/moz.build b/third_party/libwebrtc/rtc_base/time/timestamp_extrapolator_gn/moz.build
+index af464b0..89ea991 100644
+--- a/third_party/libwebrtc/rtc_base/time/timestamp_extrapolator_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/time/timestamp_extrapolator_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/timestamp_aligner_gn/moz.build b/third_party/libwebrtc/rtc_base/timestamp_aligner_gn/moz.build
+index be466ad..4f715b3 100644
+--- a/third_party/libwebrtc/rtc_base/timestamp_aligner_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/timestamp_aligner_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/timeutils_gn/moz.build b/third_party/libwebrtc/rtc_base/timeutils_gn/moz.build
+index 782ed92..2f6bd5a 100644
+--- a/third_party/libwebrtc/rtc_base/timeutils_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/timeutils_gn/moz.build
+@@ -180,6 +180,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -196,6 +200,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/weak_ptr_gn/moz.build b/third_party/libwebrtc/rtc_base/weak_ptr_gn/moz.build
+index 11b1483..4e594f6 100644
+--- a/third_party/libwebrtc/rtc_base/weak_ptr_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/weak_ptr_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/rtc_base/zero_memory_gn/moz.build b/third_party/libwebrtc/rtc_base/zero_memory_gn/moz.build
+index 1b5f0d9..31ba34a 100644
+--- a/third_party/libwebrtc/rtc_base/zero_memory_gn/moz.build
++++ b/third_party/libwebrtc/rtc_base/zero_memory_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/system_wrappers/denormal_disabler_gn/moz.build b/third_party/libwebrtc/system_wrappers/denormal_disabler_gn/moz.build
+index ed0facb..a5a30d5 100644
+--- a/third_party/libwebrtc/system_wrappers/denormal_disabler_gn/moz.build
++++ b/third_party/libwebrtc/system_wrappers/denormal_disabler_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/system_wrappers/field_trial_gn/moz.build b/third_party/libwebrtc/system_wrappers/field_trial_gn/moz.build
+index 6fe8360..5acdef2 100644
+--- a/third_party/libwebrtc/system_wrappers/field_trial_gn/moz.build
++++ b/third_party/libwebrtc/system_wrappers/field_trial_gn/moz.build
+@@ -178,6 +178,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -194,6 +198,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/system_wrappers/metrics_gn/moz.build b/third_party/libwebrtc/system_wrappers/metrics_gn/moz.build
+index b17503c..bdaedd5 100644
+--- a/third_party/libwebrtc/system_wrappers/metrics_gn/moz.build
++++ b/third_party/libwebrtc/system_wrappers/metrics_gn/moz.build
+@@ -174,6 +174,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -190,6 +194,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/system_wrappers/system_wrappers_gn/moz.build b/third_party/libwebrtc/system_wrappers/system_wrappers_gn/moz.build
+index 46d6c22..486898f 100644
+--- a/third_party/libwebrtc/system_wrappers/system_wrappers_gn/moz.build
++++ b/third_party/libwebrtc/system_wrappers/system_wrappers_gn/moz.build
+@@ -199,6 +199,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -215,6 +219,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/third_party/abseil-cpp/absl/base/log_severity_gn/moz.build b/third_party/libwebrtc/third_party/abseil-cpp/absl/base/log_severity_gn/moz.build
+index f96ddd9..f980c1a 100644
+--- a/third_party/libwebrtc/third_party/abseil-cpp/absl/base/log_severity_gn/moz.build
++++ b/third_party/libwebrtc/third_party/abseil-cpp/absl/base/log_severity_gn/moz.build
+@@ -133,6 +133,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -147,6 +151,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
+diff --git a/third_party/libwebrtc/third_party/abseil-cpp/absl/base/raw_logging_internal_gn/moz.build b/third_party/libwebrtc/third_party/abseil-cpp/absl/base/raw_logging_internal_gn/moz.build
+index 5dc6a84..d1023ea 100644
+--- a/third_party/libwebrtc/third_party/abseil-cpp/absl/base/raw_logging_internal_gn/moz.build
++++ b/third_party/libwebrtc/third_party/abseil-cpp/absl/base/raw_logging_internal_gn/moz.build
+@@ -133,6 +133,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -147,6 +151,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
+diff --git a/third_party/libwebrtc/third_party/abseil-cpp/absl/base/throw_delegate_gn/moz.build b/third_party/libwebrtc/third_party/abseil-cpp/absl/base/throw_delegate_gn/moz.build
+index a95db63..516cad6 100644
+--- a/third_party/libwebrtc/third_party/abseil-cpp/absl/base/throw_delegate_gn/moz.build
++++ b/third_party/libwebrtc/third_party/abseil-cpp/absl/base/throw_delegate_gn/moz.build
+@@ -133,6 +133,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -147,6 +151,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
+diff --git a/third_party/libwebrtc/third_party/abseil-cpp/absl/numeric/int128_gn/moz.build b/third_party/libwebrtc/third_party/abseil-cpp/absl/numeric/int128_gn/moz.build
+index d927703..f9bc44e 100644
+--- a/third_party/libwebrtc/third_party/abseil-cpp/absl/numeric/int128_gn/moz.build
++++ b/third_party/libwebrtc/third_party/abseil-cpp/absl/numeric/int128_gn/moz.build
+@@ -133,6 +133,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -147,6 +151,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
+diff --git a/third_party/libwebrtc/third_party/abseil-cpp/absl/strings/internal_gn/moz.build b/third_party/libwebrtc/third_party/abseil-cpp/absl/strings/internal_gn/moz.build
+index a62204b..5fa737d 100644
+--- a/third_party/libwebrtc/third_party/abseil-cpp/absl/strings/internal_gn/moz.build
++++ b/third_party/libwebrtc/third_party/abseil-cpp/absl/strings/internal_gn/moz.build
+@@ -135,6 +135,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -149,6 +153,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
+diff --git a/third_party/libwebrtc/third_party/abseil-cpp/absl/strings/strings_gn/moz.build b/third_party/libwebrtc/third_party/abseil-cpp/absl/strings/strings_gn/moz.build
+index d855b7b..a959236 100644
+--- a/third_party/libwebrtc/third_party/abseil-cpp/absl/strings/strings_gn/moz.build
++++ b/third_party/libwebrtc/third_party/abseil-cpp/absl/strings/strings_gn/moz.build
+@@ -148,6 +148,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -162,6 +166,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
+diff --git a/third_party/libwebrtc/third_party/abseil-cpp/absl/types/bad_optional_access_gn/moz.build b/third_party/libwebrtc/third_party/abseil-cpp/absl/types/bad_optional_access_gn/moz.build
+index 146f86e..3f29719d 100644
+--- a/third_party/libwebrtc/third_party/abseil-cpp/absl/types/bad_optional_access_gn/moz.build
++++ b/third_party/libwebrtc/third_party/abseil-cpp/absl/types/bad_optional_access_gn/moz.build
+@@ -133,6 +133,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -147,6 +151,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
+diff --git a/third_party/libwebrtc/third_party/abseil-cpp/absl/types/bad_variant_access_gn/moz.build b/third_party/libwebrtc/third_party/abseil-cpp/absl/types/bad_variant_access_gn/moz.build
+index 4af1048..e502ef5 100644
+--- a/third_party/libwebrtc/third_party/abseil-cpp/absl/types/bad_variant_access_gn/moz.build
++++ b/third_party/libwebrtc/third_party/abseil-cpp/absl/types/bad_variant_access_gn/moz.build
+@@ -133,6 +133,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -147,6 +151,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
+diff --git a/third_party/libwebrtc/third_party/pffft/pffft_gn/moz.build b/third_party/libwebrtc/third_party/pffft/pffft_gn/moz.build
+index be95ea0..8f0506e 100644
+--- a/third_party/libwebrtc/third_party/pffft/pffft_gn/moz.build
++++ b/third_party/libwebrtc/third_party/pffft/pffft_gn/moz.build
+@@ -141,6 +141,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -155,6 +159,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
+diff --git a/third_party/libwebrtc/third_party/rnnoise/rnn_vad_gn/moz.build b/third_party/libwebrtc/third_party/rnnoise/rnn_vad_gn/moz.build
+index 37ea6a9..f7fb59e 100644
+--- a/third_party/libwebrtc/third_party/rnnoise/rnn_vad_gn/moz.build
++++ b/third_party/libwebrtc/third_party/rnnoise/rnn_vad_gn/moz.build
+@@ -136,6 +136,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -150,6 +154,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["_GNU_SOURCE"] = True
+
+ if CONFIG["CPU_ARCH"] == "x86_64" and CONFIG["OS_TARGET"] == "Linux":
+diff --git a/third_party/libwebrtc/video/adaptation/video_adaptation_gn/moz.build b/third_party/libwebrtc/video/adaptation/video_adaptation_gn/moz.build
+index a1f7c3b..8093a56 100644
+--- a/third_party/libwebrtc/video/adaptation/video_adaptation_gn/moz.build
++++ b/third_party/libwebrtc/video/adaptation/video_adaptation_gn/moz.build
+@@ -196,6 +196,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -212,6 +216,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/video/decode_synchronizer_gn/moz.build b/third_party/libwebrtc/video/decode_synchronizer_gn/moz.build
+index 413feef..3056d7c 100644
+--- a/third_party/libwebrtc/video/decode_synchronizer_gn/moz.build
++++ b/third_party/libwebrtc/video/decode_synchronizer_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/video/frame_cadence_adapter_gn/moz.build b/third_party/libwebrtc/video/frame_cadence_adapter_gn/moz.build
+index 1f9b0da..8dacb02 100644
+--- a/third_party/libwebrtc/video/frame_cadence_adapter_gn/moz.build
++++ b/third_party/libwebrtc/video/frame_cadence_adapter_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/video/frame_decode_timing_gn/moz.build b/third_party/libwebrtc/video/frame_decode_timing_gn/moz.build
+index 6d3c945..df1cf13 100644
+--- a/third_party/libwebrtc/video/frame_decode_timing_gn/moz.build
++++ b/third_party/libwebrtc/video/frame_decode_timing_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/video/frame_dumping_decoder_gn/moz.build b/third_party/libwebrtc/video/frame_dumping_decoder_gn/moz.build
+index 6cd9226..12fba4f 100644
+--- a/third_party/libwebrtc/video/frame_dumping_decoder_gn/moz.build
++++ b/third_party/libwebrtc/video/frame_dumping_decoder_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/video/task_queue_frame_decode_scheduler_gn/moz.build b/third_party/libwebrtc/video/task_queue_frame_decode_scheduler_gn/moz.build
+index 11be038..b3866f7 100644
+--- a/third_party/libwebrtc/video/task_queue_frame_decode_scheduler_gn/moz.build
++++ b/third_party/libwebrtc/video/task_queue_frame_decode_scheduler_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/video/unique_timestamp_counter_gn/moz.build b/third_party/libwebrtc/video/unique_timestamp_counter_gn/moz.build
+index e2984f7..7df52c0 100644
+--- a/third_party/libwebrtc/video/unique_timestamp_counter_gn/moz.build
++++ b/third_party/libwebrtc/video/unique_timestamp_counter_gn/moz.build
+@@ -170,6 +170,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -186,6 +190,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/video/video_gn/moz.build b/third_party/libwebrtc/video/video_gn/moz.build
+index bc06006..88b20d4 100644
+--- a/third_party/libwebrtc/video/video_gn/moz.build
++++ b/third_party/libwebrtc/video/video_gn/moz.build
+@@ -209,6 +209,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -225,6 +229,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/video/video_receive_stream_timeout_tracker_gn/moz.build b/third_party/libwebrtc/video/video_receive_stream_timeout_tracker_gn/moz.build
+index b9d00d7..da0c24c8 100644
+--- a/third_party/libwebrtc/video/video_receive_stream_timeout_tracker_gn/moz.build
++++ b/third_party/libwebrtc/video/video_receive_stream_timeout_tracker_gn/moz.build
+@@ -185,6 +185,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -201,6 +205,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/video/video_stream_buffer_controller_gn/moz.build b/third_party/libwebrtc/video/video_stream_buffer_controller_gn/moz.build
+index f5b2508..226e6c3 100644
+--- a/third_party/libwebrtc/video/video_stream_buffer_controller_gn/moz.build
++++ b/third_party/libwebrtc/video/video_stream_buffer_controller_gn/moz.build
+@@ -187,6 +187,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -203,6 +207,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
+diff --git a/third_party/libwebrtc/video/video_stream_encoder_impl_gn/moz.build b/third_party/libwebrtc/video/video_stream_encoder_impl_gn/moz.build
+index e47ba1d..b22128e 100644
+--- a/third_party/libwebrtc/video/video_stream_encoder_impl_gn/moz.build
++++ b/third_party/libwebrtc/video/video_stream_encoder_impl_gn/moz.build
+@@ -192,6 +192,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Android":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Android":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ OS_LIBS += [
+ "android_support"
+ ]
+@@ -208,6 +212,10 @@ if CONFIG["CPU_ARCH"] == "arm" and CONFIG["OS_TARGET"] == "Linux":
+
+ if CONFIG["CPU_ARCH"] == "x86" and CONFIG["OS_TARGET"] == "Linux":
+
++ CXXFLAGS += [
++ "-msse2"
++ ]
++
+ DEFINES["WEBRTC_ENABLE_AVX2"] = True
+ DEFINES["_GNU_SOURCE"] = True
+
diff --git a/debian/patches/fixes/Bug-1810584-Suppress-false-positive-error-for-gcc-r-.patch b/debian/patches/fixes/Bug-1810584-Suppress-false-positive-error-for-gcc-r-.patch
new file mode 100644
index 0000000000..0cfb78ae49
--- /dev/null
+++ b/debian/patches/fixes/Bug-1810584-Suppress-false-positive-error-for-gcc-r-.patch
@@ -0,0 +1,24 @@
+From: Iain Ireland <iireland@mozilla.com>
+Date: Wed, 18 Jan 2023 23:22:41 +0000
+Subject: Bug 1810584: Suppress false positive error for gcc r=mgaudet
+
+Differential Revision: https://phabricator.services.mozilla.com/D167194
+---
+ js/src/irregexp/moz.build | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/js/src/irregexp/moz.build b/js/src/irregexp/moz.build
+index 8acb242..ff030ad 100644
+--- a/js/src/irregexp/moz.build
++++ b/js/src/irregexp/moz.build
+@@ -14,6 +14,10 @@ include("../js-cxxflags.mozbuild")
+
+ CXXFLAGS += ["-Wno-error=type-limits", "-Wno-error=return-type"]
+
++# Suppress spurious warnings in third-party code. See bug 1810584.
++if CONFIG["CC_TYPE"] == "gcc":
++ CXXFLAGS += ["-Wno-error=nonnull"]
++
+ UNIFIED_SOURCES += [
+ "imported/regexp-bytecode-generator.cc",
+ "imported/regexp-bytecode-peephole.cc",
diff --git a/debian/patches/porting/Add-xptcall-support-for-SH4-processors.patch b/debian/patches/porting/Add-xptcall-support-for-SH4-processors.patch
new file mode 100644
index 0000000000..d048accf9e
--- /dev/null
+++ b/debian/patches/porting/Add-xptcall-support-for-SH4-processors.patch
@@ -0,0 +1,516 @@
+From: Mike Hommey <glandium@debian.org>
+Date: Fri, 30 Apr 2010 11:03:50 +0200
+Subject: Add xptcall support for SH4 processors
+
+Closes: #553593
+https://bugzilla.mozilla.org/show_bug.cgi?id=382214
+---
+ xpcom/reflect/xptcall/md/unix/moz.build | 5 +
+ .../src/md/unix/xptcinvoke_linux_sh.cpp | 203 +++++++++++++
+ .../src/md/unix/xptcstubs_linux_sh.cpp | 271 ++++++++++++++++++
+ 3 files changed, 479 insertions(+)
+ create mode 100644 xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_sh.cpp
+ create mode 100644 xpcom/reflect/xptcall/src/md/unix/xptcstubs_linux_sh.cpp
+
+diff --git a/xpcom/reflect/xptcall/md/unix/moz.build b/xpcom/reflect/xptcall/md/unix/moz.build
+index 1779c14..43a10a2 100644
+--- a/xpcom/reflect/xptcall/md/unix/moz.build
++++ b/xpcom/reflect/xptcall/md/unix/moz.build
+@@ -262,6 +262,11 @@ if CONFIG["OS_ARCH"] == "Linux":
+ CXXFLAGS += [
+ "-fno-integrated-as",
+ ]
++ elif CONFIG['OS_TEST'] in ('sh4', 'sh4a'):
++ SOURCES += [
++ 'xptcinvoke_linux_sh.cpp',
++ 'xptcstubs_linux_sh.cpp',
++ ]
+
+ if CONFIG["OS_ARCH"] == "Linux" and CONFIG["CPU_ARCH"] == "riscv64":
+ SOURCES += [
+diff --git a/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_sh.cpp b/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_sh.cpp
+new file mode 100644
+index 0000000..ca4807d
+--- /dev/null
++++ b/xpcom/reflect/xptcall/src/md/unix/xptcinvoke_linux_sh.cpp
+@@ -0,0 +1,203 @@
++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
++ *
++ * ***** BEGIN LICENSE BLOCK *****
++ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
++ *
++ * The contents of this file are subject to the Mozilla Public License Version
++ * 1.1 (the "License"); you may not use this file except in compliance with
++ * the License. You may obtain a copy of the License at
++ * http://www.mozilla.org/MPL/
++ *
++ * Software distributed under the License is distributed on an "AS IS" basis,
++ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
++ * for the specific language governing rights and limitations under the
++ * License.
++ *
++ * The Original Code is mozilla.org code.
++ *
++ * The Initial Developer of the Original Code is
++ * Netscape Communications Corporation.
++ * Portions created by the Initial Developer are Copyright (C) 1998
++ * the Initial Developer. All Rights Reserved.
++ *
++ * Contributor(s):
++ * - Copyright (C) 2008-2009 STMicroelectronics
++ *
++ * Alternatively, the contents of this file may be used under the terms of
++ * either of the GNU General Public License Version 2 or later (the "GPL"),
++ * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
++ * in which case the provisions of the GPL or the LGPL are applicable instead
++ * of those above. If you wish to allow use of your version of this file only
++ * under the terms of either the GPL or the LGPL, and not to allow others to
++ * use your version of this file under the terms of the MPL, indicate your
++ * decision by deleting the provisions above and replace them with the notice
++ * and other provisions required by the GPL or the LGPL. If you do not delete
++ * the provisions above, a recipient may use your version of this file under
++ * the terms of any one of the MPL, the GPL or the LGPL.
++ *
++ * Based on the neutroni port, however that assumed that the compiler was pushing params
++ * onto the stack. Change to take this into account.
++ *
++ * ***** END LICENSE BLOCK ***** */
++
++#include "xptcprivate.h"
++
++extern "C" {
++
++const int c_int_register_params = 4;
++const int c_float_register_params = 8;
++
++static PRUint32 __attribute__((__used__))
++copy_to_stack(PRUint32 **that,PRUint32 methodIndex,PRUint32 paramCount, nsXPTCVariant* s,PRUint32* data)
++{
++ int intCount = 1; // Because of that
++ int floatCount = 0;
++ PRUint32 *intRegParams=data+1 ;
++ float *floatRegParams = (float *)(data+4);
++
++ /* Push the that register into the right place so it can be restored on exit */
++ *data= (PRUint32)(that);
++ data+=12; /* 4 integer registers, and 8 floating point registers */
++
++ for ( PRUint32 i = 0; i < paramCount; ++i, ++s )
++ {
++ nsXPTType type = s->IsPtrData() ? nsXPTType::T_I32 : s->type;
++
++ switch ( type ) {
++ case nsXPTType::T_I64:
++ case nsXPTType::T_U64:
++ // Space to pass in registers?
++ if ( (c_int_register_params - intCount) >= 2 ) {
++ *((PRInt64 *) intRegParams) = s->val.i64;
++ intRegParams += 2;
++ intCount += 2;
++ }
++ else {
++ *((PRInt64*) data) = s->val.i64;
++ data += 2;
++ }
++ break;
++ case nsXPTType::T_FLOAT:
++ // Space to pass in registers?
++ if ( floatCount < c_float_register_params ) {
++ *floatRegParams = s->val.f;
++ ++floatCount;
++ ++floatRegParams;
++ }
++ else {
++ *((float*) data) = s->val.f;
++ ++data;
++ }
++ break;
++ case nsXPTType::T_DOUBLE:
++ // Space to pass in registers?
++ if ( (c_float_register_params - floatCount) >= 2 ) {
++ if ( (floatCount & 1) != 0 ) {
++ ++floatCount;
++ ++floatRegParams;
++ }
++ *(double *)floatRegParams = s->val.d;
++ floatCount += 2;
++ floatRegParams += 2;
++ }
++ else {
++ *((double *) data) = s->val.d;
++ data += 2;
++ }
++ break;
++ default: // 32 (non-float) value
++ PRInt32 value = (PRInt32) (s->IsPtrData() ? s->ptr : s->val.p);
++ // Space to pass in registers?
++ if ( intCount < c_int_register_params ) {
++ *intRegParams = value;
++ ++intRegParams;
++ ++intCount;
++ }
++ else {
++ *data = value;
++ ++data;
++ }
++ break;
++ }
++ }
++
++ /* Now calculate the return address
++ * Dereference that to get vtable pointer
++ */
++ return *( (*(that))+(methodIndex) );
++
++}
++
++}
++
++ /* This was originally done as a C function, but the original code was
++ * relying on how the compiler laid out the stack. Later versions of
++ * gcc do a better job of optimising and never push the parameters on the
++ * stack. So it is simpler to just write the whole thing in assembler anyway
++ */
++
++ /* Because the SH processor passes the first few parameters in registers
++ it is a bit tricky setting things up right. To make things easier,
++ all the hard work will be done by copy_to_stack above. We pass to it
++ a chunk of memory, the bottom of which will be copied to registers r4 to r7
++ and fr4 to fr11 before calling the target function.
++ */
++
++/* r4= that, r5=methodIndex,r6=paramCount,r7=params */
++
++ __asm__ (
++
++
++ /* Make space for parameters to be passed to the method. Assume worst case
++ 8 bytes per parameter. Also leave space for 4 longs and 8 floats that
++ will be put into registers. The worst case is all int64 parameters
++ and even in this case 8 bytes are passed in registers so we can
++ deduct this from our allocation.
++ */
++ ".section .text\n"
++ ".balign 4\n"
++ ".global NS_InvokeByIndex_P\n"
++ "NS_InvokeByIndex_P:\n"
++ "mov.l r14, @-r15 \n\t" // Push frame
++ "sts.l pr, @-r15 \n\t" // Push link
++ "mov.l r8, @-r15 \n\t" // Save
++ "mov r15, r14\n\t" // Set frame
++ "mov #3, r1 \n\t" // Assume worse case, all params are 64bit, hence *8
++ "mov r6, r2\n\t"
++ "shld r1, r2 \n\t"
++ "mov r2, r8 \n\t" // Save stack drop
++ "add #48, r2 \n\t" // Space for 4 longs, 8 floats
++ "sub r2, r15 \n\t" // Drop stack
++ "mov.l 1f, r1 \n\t" // Get address of copy_to_stack_function
++ "jsr @r1 \n\t"
++ "mov.l r15, @-r15 \n\t" // Params will be dumped here
++ "add #4, r15 \n\t" // Pop stack ptr param. r0 contains method address
++
++ /* Now everything is laid out nicely in the stack. We just have to
++ load values at the top end of the memory area into registers and
++ make the call. We may load more things into registers than needed,
++ but nobody will care about that.
++ */
++
++ "mov.l @r15+, r4 \n\t" // that
++ "mov.l @r15+, r5 \n\t"
++ "mov.l @r15+, r6 \n\t"
++ "mov.l @r15+, r7 \n\t"
++ "fmov.s @r15+, fr5 \n\t"
++ "fmov.s @r15+, fr4 \n\t"
++ "fmov.s @r15+, fr7 \n\t"
++ "fmov.s @r15+, fr6 \n\t"
++ "fmov.s @r15+, fr9 \n\t"
++ "fmov.s @r15+, fr8 \n\t"
++ "fmov.s @r15+, fr11 \n\t"
++ "jsr @r0 \n\t" // Invoke method
++ "fmov.s @r15+, fr10 \n\t"
++ "add r8, r15\n\t" // Pop stack back
++ "mov.l @r15+, r8\n\t" // Restore r8
++ "lds.l @r15+, pr\n\t"
++ "rts\n\t"
++ "mov.l @r15+, r14\n\t"
++ ".balign 4\n\t"
++ "1: .long copy_to_stack \n\t"
++ );
++
+diff --git a/xpcom/reflect/xptcall/src/md/unix/xptcstubs_linux_sh.cpp b/xpcom/reflect/xptcall/src/md/unix/xptcstubs_linux_sh.cpp
+new file mode 100644
+index 0000000..cf9fcea
+--- /dev/null
++++ b/xpcom/reflect/xptcall/src/md/unix/xptcstubs_linux_sh.cpp
+@@ -0,0 +1,271 @@
++/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
++/* ***** BEGIN LICENSE BLOCK *****
++ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
++ *
++ * The contents of this file are subject to the Mozilla Public License Version
++ * 1.1 (the "License"); you may not use this file except in compliance with
++ * the License. You may obtain a copy of the License at
++ * http://www.mozilla.org/MPL/
++ *
++ * Software distributed under the License is distributed on an "AS IS" basis,
++ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
++ * for the specific language governing rights and limitations under the
++ * License.
++ *
++ * The Original Code is mozilla.org code.
++ *
++ * The Initial Developer of the Original Code is
++ * Netscape Communications Corporation.
++ * Portions created by the Initial Developer are Copyright (C) 1999
++ * the Initial Developer. All Rights Reserved.
++ *
++ * Contributor(s):
++ * - Copyright (C) 2008-2009 STMicroelectronics
++ *
++ * Alternatively, the contents of this file may be used under the terms of
++ * either of the GNU General Public License Version 2 or later (the "GPL"),
++ * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
++ * in which case the provisions of the GPL or the LGPL are applicable instead
++ * of those above. If you wish to allow use of your version of this file only
++ * under the terms of either the GPL or the LGPL, and not to allow others to
++ * use your version of this file under the terms of the MPL, indicate your
++ * decision by deleting the provisions above and replace them with the notice
++ * and other provisions required by the GPL or the LGPL. If you do not delete
++ * the provisions above, a recipient may use your version of this file under
++ * the terms of any one of the MPL, the GPL or the LGPL.
++ *
++ * Based on the neutrino code, with some bug fixes and using the C preprocessor
++ * like all the other ports rather than the python script.
++ *
++ * ***** END LICENSE BLOCK ***** */
++
++#include "xptcprivate.h"
++#include "xptiprivate.h"
++
++const int c_int_register_params = 3;
++const int c_float_register_params = 8;
++
++/*
++ Dispatch function for all stubs.
++
++ The parameters to the original function are spread between 'data' which
++ is value of the stack pointer when the stub was called, intRegParams which
++ points to an area containing the values of r5, r6 and r7 when the stub was
++ called and floatRegParams which points to an area containing the values
++ of float registers fr4 to fr11 when the stub was called.
++
++ */
++extern "C" nsresult
++PrepareAndDispatch(nsXPTCStubBase* self, int methodIndex, PRUint32* data,
++ PRUint32 *intRegParams, float *floatRegParams)
++{
++#define PARAM_BUFFER_COUNT 16
++
++ nsresult result = NS_ERROR_FAILURE;
++ int intCount = 0;
++ int floatCount = 0;
++ nsXPTCMiniVariant paramBuffer[PARAM_BUFFER_COUNT];
++ nsXPTCMiniVariant* dispatchParams = NULL;
++ const nsXPTMethodInfo* info;
++ PRUint8 paramCount;
++ PRUint8 i;
++
++ NS_ASSERTION(self,"no self");
++
++ self->mEntry->GetMethodInfo(PRUint16(methodIndex), &info);
++ NS_ASSERTION(info,"no interface info");
++
++ paramCount = info->GetParamCount();
++
++ // setup variant array pointer
++ if(paramCount > PARAM_BUFFER_COUNT)
++ dispatchParams = new nsXPTCMiniVariant[paramCount];
++ else
++ dispatchParams = paramBuffer;
++ NS_ASSERTION(dispatchParams,"no place for params");
++
++ for ( i = 0; i < paramCount; ++i ) {
++ const nsXPTParamInfo& param = info->GetParam(i);
++ nsXPTCMiniVariant* dp = &dispatchParams[i];
++ nsXPTType type = param.IsOut() ? nsXPTType::T_I32 : param.GetType();
++
++ switch ( type ) {
++ case nsXPTType::T_I64:
++ case nsXPTType::T_U64:
++ // Was this passed in a register?
++ if ( (c_int_register_params - intCount) >= 2 ) {
++ dp->val.i64 = *((PRInt64 *) intRegParams);
++ intRegParams += 2;
++ intCount += 2;
++ }
++ else {
++ dp->val.i64 = *((PRInt64*) data);
++ data += 2;
++ }
++ break;
++ case nsXPTType::T_FLOAT:
++ // Was this passed in a register?
++ if ( floatCount < c_float_register_params ) {
++ dp->val.f = *floatRegParams;
++ ++floatCount;
++ ++floatRegParams;
++ }
++ else {
++ dp->val.f = *((float*) data);
++ ++data;
++ }
++ break;
++ case nsXPTType::T_DOUBLE:
++ // Was this passed in a register?
++ if ( (c_float_register_params - floatCount) >= 2 ) {
++ if ( floatCount & 1 != 0 ) {
++ ++floatCount;
++ ++floatRegParams;
++ }
++ dp->val.d = *(double *)floatRegParams;
++ floatCount += 2;
++ floatRegParams += 2;
++ }
++ else {
++ dp->val.d = *((double *) data);
++ data += 2;
++ }
++ break;
++ default: // 32-bit (non-float) value
++ // Was this passed in a register?
++ if ( intCount < c_int_register_params ) {
++ dp->val.i32 = *intRegParams;
++ ++intRegParams;
++ ++intCount;
++ }
++ else {
++ dp->val.i32 = *data;
++ ++data;
++ }
++ break;
++ }
++ }
++
++ result = self->mOuter->CallMethod((PRUint16)methodIndex, info, dispatchParams);
++
++ if(dispatchParams != paramBuffer)
++ delete [] dispatchParams;
++
++ return result;
++}
++
++
++__asm__ (
++ ".text\n"
++ ".little\n"
++ ".section .rodata\n"
++
++ ".globl SharedStub\n"
++ ".type SharedStub, @function\n"
++ "SharedStub:\n"
++ "mov r15, r1\n"
++ "mov.l r14,@-r15\n"
++ "sts.l pr,@-r15\n"
++ "mov r15, r14\n"
++
++ /* Some parameters might have been passed in registers, so push them
++ * all onto the stack, PrepareAndDispatch can then work out whats what
++ * given method type information.
++ */
++ "mov.l r7, @-r15\n"
++ "mov.l r6, @-r15\n"
++ "mov.l r5, @-r15\n"
++ "mov r15, r7\n" /* r7 = PrepareAndDispatch intRegParams param */
++
++ "fmov.s fr10, @-r15\n"
++ "fmov.s fr11, @-r15\n"
++ "fmov.s fr8, @-r15\n"
++ "fmov.s fr9, @-r15\n"
++ "fmov.s fr6, @-r15\n"
++ "fmov.s fr7, @-r15\n"
++ "fmov.s fr4, @-r15\n"
++ "fmov.s fr5, @-r15\n"
++ "mov.l r15, @-r15\n" /* PrepareAndDispatch floatRegParams param */
++
++ "mov r1, r6\n" /* r6 = PrepareAndDispatch data param */
++
++ "mov.l 1f, r1\n"
++ "jsr @r1\n" /* Note, following instruction is executed first*/
++ "mov r2, r5\n" /* r5 = PrepareAndDispatch methodIndex param */
++
++ "mov r14,r15\n"
++ "lds.l @r15+,pr\n"
++ "mov.l @r15+,r14\n"
++ "rts\n"
++ "nop\n"
++ ".align 2\n"
++ "1:\n"
++ ".long PrepareAndDispatch\n"
++ );
++
++#define STUB_ENTRY(n) \
++__asm__( \
++ ".text\n" \
++ ".align 1 \n" \
++ ".if " #n " < 10\n\t" \
++ ".globl _ZN14nsXPTCStubBase5Stub" #n "Ev\n\t" \
++ ".type _ZN14nsXPTCStubBase5Stub" #n "Ev,@function\n"\
++ "_ZN14nsXPTCStubBase5Stub" #n "Ev:\n\t" \
++ ".elseif " #n " < 100\n\t" \
++ ".globl _ZN14nsXPTCStubBase6Stub" #n "Ev\n\t" \
++ ".type _ZN14nsXPTCStubBase6Stub" #n "Ev,@function\n"\
++ "_ZN14nsXPTCStubBase6Stub" #n "Ev:\n\t" \
++ ".elseif " #n " < 1000\n\t" \
++ ".globl _ZN14nsXPTCStubBase7Stub" #n "Ev\n\t" \
++ ".type _ZN14nsXPTCStubBase7Stub" #n "Ev,@function\n"\
++ "_ZN14nsXPTCStubBase7Stub" #n "Ev:\n\t" \
++ ".else\n\t" \
++ ".err \"stub number " #n " >= 1000 not yet supported\"\n\t" \
++ ".endif\n\t" \
++ "mov.l 1f, r1 \n" \
++ ".if "#n" < 128 \n" \
++ "jmp @r1 \n" \
++ " mov #"#n",r2 \n" \
++ ".elseif "#n" < 256 \n" \
++ "mov #"#n", r2 \n" \
++ "jmp @r1 \n" \
++ " extu.b r2, r2 \n" \
++ ".else \n" \
++ "mov #"#n" & 0xff,r2 \n" \
++ "extu.b r2, r2 \n" \
++ "mov #"#n">>8, r3 \n" \
++ "shll8 r3 \n" \
++ "jmp @r1 \n" \
++ " or r3, r2 \n" \
++ ".endif \n" \
++ ".if "#n" % 20 == 0\n" \
++ ".align 2\n" \
++ "1:\n" \
++ ".long SharedStub\n" \
++ ".endif\n" \
++ );
++
++
++/* Due to the fact that the SH4 can only load forward labels, we have
++ * to use sentinel_entry to output the last label. A better solution
++ * would be to introduce a STUB_LAST macro in the defs.in file, but
++ * this will do for now
++ */
++
++#define SENTINEL_ENTRY(n) \
++__asm__( \
++".if "#n" == 0 \n" \
++ ".text \n" \
++ ".align 2\n" \
++ "1:\n" \
++ ".long SharedStub\n" \
++".endif\n" \
++); \
++ \
++nsresult nsXPTCStubBase::Sentinel##n() \
++{ \
++ NS_ASSERTION(0,"nsXPTCStubBase::Sentinel called"); \
++ return NS_ERROR_NOT_IMPLEMENTED; \
++}
++
++#include "xptcstubsdef.inc"
diff --git a/debian/patches/porting/NSS-Fix-FTBFS-on-Hurd-because-of-MAXPATHLEN.patch b/debian/patches/porting/NSS-Fix-FTBFS-on-Hurd-because-of-MAXPATHLEN.patch
new file mode 100644
index 0000000000..224d460660
--- /dev/null
+++ b/debian/patches/porting/NSS-Fix-FTBFS-on-Hurd-because-of-MAXPATHLEN.patch
@@ -0,0 +1,63 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Mon, 13 Jan 2014 12:00:25 +0900
+Subject: [NSS] Fix FTBFS on Hurd because of MAXPATHLEN
+
+---
+ security/nss/cmd/shlibsign/shlibsign.c | 21 ++++++++++++++++-----
+ security/nss/lib/freebl/unix_rand.c | 4 ++++
+ 2 files changed, 20 insertions(+), 5 deletions(-)
+
+diff --git a/security/nss/cmd/shlibsign/shlibsign.c b/security/nss/cmd/shlibsign/shlibsign.c
+index ad8f3b8..c33f2c9 100644
+--- a/security/nss/cmd/shlibsign/shlibsign.c
++++ b/security/nss/cmd/shlibsign/shlibsign.c
+@@ -725,7 +725,6 @@ main(int argc, char **argv)
+ #ifdef USES_LINKS
+ int ret;
+ struct stat stat_buf;
+- char link_buf[MAXPATHLEN + 1];
+ char *link_file = NULL;
+ #endif
+
+@@ -1068,10 +1067,22 @@ main(int argc, char **argv)
+ }
+ if (S_ISLNK(stat_buf.st_mode)) {
+ char *dirpath, *dirend;
+- ret = readlink(input_file, link_buf, sizeof(link_buf) - 1);
+- if (ret < 0) {
+- perror(input_file);
+- goto cleanup;
++ char *link_buf = NULL;
++ size_t size = 64;
++ while (1) {
++ link_buf = realloc(link_buf, size);
++ if (!link_buf) {
++ perror(input_file);
++ goto cleanup;
++ }
++ ret = readlink(input_file, link_buf, size - 1);
++ if (ret < 0) {
++ perror(input_file);
++ goto cleanup;
++ }
++ if (ret < size - 1)
++ break;
++ size *= 2;
+ }
+ link_buf[ret] = 0;
+ link_file = mkoutput(input_file);
+diff --git a/security/nss/lib/freebl/unix_rand.c b/security/nss/lib/freebl/unix_rand.c
+index e46bac6..9ca2ba4a 100644
+--- a/security/nss/lib/freebl/unix_rand.c
++++ b/security/nss/lib/freebl/unix_rand.c
+@@ -756,6 +756,10 @@ RNG_FileForRNG(const char *fileName)
+ #define _POSIX_PTHREAD_SEMANTICS
+ #include <dirent.h>
+
++#ifndef PATH_MAX
++#define PATH_MAX 1024
++#endif
++
+ PRBool
+ ReadFileOK(char *dir, char *file)
+ {
diff --git a/debian/patches/porting/Use-NEON_FLAGS-instead-of-VPX_ASFLAGS-for-libaom-neo.patch b/debian/patches/porting/Use-NEON_FLAGS-instead-of-VPX_ASFLAGS-for-libaom-neo.patch
new file mode 100644
index 0000000000..b58b9e2610
--- /dev/null
+++ b/debian/patches/porting/Use-NEON_FLAGS-instead-of-VPX_ASFLAGS-for-libaom-neo.patch
@@ -0,0 +1,21 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Mon, 26 Nov 2018 09:59:56 +0900
+Subject: Use NEON_FLAGS instead of VPX_ASFLAGS for libaom neon code
+
+---
+ media/libaom/moz.build | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/media/libaom/moz.build b/media/libaom/moz.build
+index fd8c7f2..db3f9ca 100644
+--- a/media/libaom/moz.build
++++ b/media/libaom/moz.build
+@@ -55,7 +55,7 @@ elif CONFIG['CPU_ARCH'] == 'arm':
+
+ for f in SOURCES:
+ if f.endswith('neon.c'):
+- SOURCES[f].flags += CONFIG['VPX_ASFLAGS']
++ SOURCES[f].flags += CONFIG['NEON_FLAGS']
+
+ if CONFIG['OS_TARGET'] == 'Android':
+ # For cpu-features.h
diff --git a/debian/patches/porting/Use-compiler-macros-to-detect-big-endian.patch b/debian/patches/porting/Use-compiler-macros-to-detect-big-endian.patch
new file mode 100644
index 0000000000..ab77ccdf9c
--- /dev/null
+++ b/debian/patches/porting/Use-compiler-macros-to-detect-big-endian.patch
@@ -0,0 +1,68 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Wed, 15 Feb 2023 08:44:19 +0900
+Subject: Use compiler macros to detect big endian
+
+Both clang and GCC define endianness as builtin defines.
+---
+ third_party/wasm2c/src/common.h | 8 ++++++++
+ third_party/wasm2c/src/prebuilt/wasm2c.include.c | 8 ++++++++
+ third_party/wasm2c/src/wasm2c.c.tmpl | 8 ++++++++
+ 3 files changed, 24 insertions(+)
+
+diff --git a/third_party/wasm2c/src/common.h b/third_party/wasm2c/src/common.h
+index de5e44a..c4eb760 100644
+--- a/third_party/wasm2c/src/common.h
++++ b/third_party/wasm2c/src/common.h
+@@ -103,6 +103,14 @@
+ #define PRIaddress PRIu64
+ #define PRIoffset PRIzx
+
++#ifndef WABT_BIG_ENDIAN
++# if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
++# define WABT_BIG_ENDIAN 1
++# elif __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
++# define WABT_BIG_ENDIAN 0
++# endif
++#endif
++
+ namespace wabt {
+ #if WABT_BIG_ENDIAN
+ inline void MemcpyEndianAware(void *dst, const void *src, size_t dsize, size_t ssize, size_t doff, size_t soff, size_t len) {
+diff --git a/third_party/wasm2c/src/prebuilt/wasm2c.include.c b/third_party/wasm2c/src/prebuilt/wasm2c.include.c
+index de62978..5040afa 100644
+--- a/third_party/wasm2c/src/prebuilt/wasm2c.include.c
++++ b/third_party/wasm2c/src/prebuilt/wasm2c.include.c
+@@ -113,6 +113,14 @@ const char SECTION_NAME(declarations)[] =
+ "#define wasm_asm(X)\n"
+ "#endif\n"
+ "\n"
++"#ifndef WABT_BIG_ENDIAN\n"
++"# if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__\n"
++"# define WABT_BIG_ENDIAN 1\n"
++"# elif __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__\n"
++"# define WABT_BIG_ENDIAN 0\n"
++"# endif\n"
++"#endif\n"
++"\n"
+ "#if WABT_BIG_ENDIAN\n"
+ "static inline void load_data(void *dest, const void *src, size_t n) {\n"
+ " size_t i = 0;\n"
+diff --git a/third_party/wasm2c/src/wasm2c.c.tmpl b/third_party/wasm2c/src/wasm2c.c.tmpl
+index 6539ddc..990bb2f 100644
+--- a/third_party/wasm2c/src/wasm2c.c.tmpl
++++ b/third_party/wasm2c/src/wasm2c.c.tmpl
+@@ -110,6 +110,14 @@ void WASM2C_MALLOC_FAIL_CALLBACK(u32 ptr_size);
+ #define wasm_asm(X)
+ #endif
+
++#ifndef WABT_BIG_ENDIAN
++# if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__
++# define WABT_BIG_ENDIAN 1
++# elif __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__
++# define WABT_BIG_ENDIAN 0
++# endif
++#endif
++
+ #if WABT_BIG_ENDIAN
+ static inline void load_data(void *dest, const void *src, size_t n) {
+ size_t i = 0;
diff --git a/debian/patches/porting/Work-around-GCC-ICE-on-mips-i386-and-s390x.patch b/debian/patches/porting/Work-around-GCC-ICE-on-mips-i386-and-s390x.patch
new file mode 100644
index 0000000000..008994765e
--- /dev/null
+++ b/debian/patches/porting/Work-around-GCC-ICE-on-mips-i386-and-s390x.patch
@@ -0,0 +1,22 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Fri, 12 Jul 2019 18:28:34 +0900
+Subject: Work around GCC ICE on mips*, i386 and s390x
+
+Closes: #931757
+---
+ gfx/skia/skia/third_party/skcms/src/Transform_inl.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gfx/skia/skia/third_party/skcms/src/Transform_inl.h b/gfx/skia/skia/third_party/skcms/src/Transform_inl.h
+index c4b3122..cfaae3e 100644
+--- a/gfx/skia/skia/third_party/skcms/src/Transform_inl.h
++++ b/gfx/skia/skia/third_party/skcms/src/Transform_inl.h
+@@ -685,7 +685,7 @@ SI void sample_clut_16(const skcms_A2B* a2b, I32 ix, F* r, F* g, F* b) {
+ // GCC 7.2.0 hits an internal compiler error with -finline-functions (or -O3)
+ // when targeting MIPS 64, i386, or s390x, I think attempting to inline clut() into exec_ops().
+ #if 1 && defined(__GNUC__) && !defined(__clang__) \
+- && (defined(__mips64) || defined(__i386) || defined(__s390x__))
++ && (defined(__mips__) || defined(__i386) || defined(__s390x__))
+ #define MAYBE_NOINLINE __attribute__((noinline))
+ #else
+ #define MAYBE_NOINLINE
diff --git a/debian/patches/porting/Work-around-another-GCC-ICE-on-arm.patch b/debian/patches/porting/Work-around-another-GCC-ICE-on-arm.patch
new file mode 100644
index 0000000000..31bc9f918d
--- /dev/null
+++ b/debian/patches/porting/Work-around-another-GCC-ICE-on-arm.patch
@@ -0,0 +1,21 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Sat, 7 Dec 2019 08:32:14 +0900
+Subject: Work around another GCC ICE on arm
+
+---
+ gfx/skia/skia/third_party/skcms/src/Transform_inl.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gfx/skia/skia/third_party/skcms/src/Transform_inl.h b/gfx/skia/skia/third_party/skcms/src/Transform_inl.h
+index cfaae3e..604e109 100644
+--- a/gfx/skia/skia/third_party/skcms/src/Transform_inl.h
++++ b/gfx/skia/skia/third_party/skcms/src/Transform_inl.h
+@@ -685,7 +685,7 @@ SI void sample_clut_16(const skcms_A2B* a2b, I32 ix, F* r, F* g, F* b) {
+ // GCC 7.2.0 hits an internal compiler error with -finline-functions (or -O3)
+ // when targeting MIPS 64, i386, or s390x, I think attempting to inline clut() into exec_ops().
+ #if 1 && defined(__GNUC__) && !defined(__clang__) \
+- && (defined(__mips__) || defined(__i386) || defined(__s390x__))
++ && (defined(__arm__) || defined(__aarch64__) || defined(__mips__) || defined(__i386) || defined(__s390x__))
+ #define MAYBE_NOINLINE __attribute__((noinline))
+ #else
+ #define MAYBE_NOINLINE
diff --git a/debian/patches/prefs/Don-t-auto-disable-extensions-in-system-directories.patch b/debian/patches/prefs/Don-t-auto-disable-extensions-in-system-directories.patch
new file mode 100644
index 0000000000..ec826bdc37
--- /dev/null
+++ b/debian/patches/prefs/Don-t-auto-disable-extensions-in-system-directories.patch
@@ -0,0 +1,21 @@
+From: Mike Hommey <mh@glandium.org>
+Date: Fri, 17 Feb 2012 17:47:15 +0100
+Subject: Don't auto-disable extensions in system directories
+
+---
+ browser/app/profile/firefox.js | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
+index ef8a4aa..2bb07ca 100644
+--- a/browser/app/profile/firefox.js
++++ b/browser/app/profile/firefox.js
+@@ -56,7 +56,7 @@ pref("extensions.systemAddon.update.enabled", true);
+
+ // Disable add-ons that are not installed by the user in all scopes by default.
+ // See the SCOPE constants in AddonManager.jsm for values to use here.
+-pref("extensions.autoDisableScopes", 15);
++pref("extensions.autoDisableScopes", 3);
+ // Scopes to scan for changes at startup.
+ pref("extensions.startupScanScopes", 0);
+
diff --git a/debian/patches/prefs/Set-DPI-to-system-settings.patch b/debian/patches/prefs/Set-DPI-to-system-settings.patch
new file mode 100644
index 0000000000..5526be3b93
--- /dev/null
+++ b/debian/patches/prefs/Set-DPI-to-system-settings.patch
@@ -0,0 +1,21 @@
+From: Mike Hommey <glandium@debian.org>
+Date: Thu, 13 Mar 2008 20:30:19 +0100
+Subject: Set DPI to system settings
+
+---
+ modules/libpref/init/StaticPrefList.yaml | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules/libpref/init/StaticPrefList.yaml b/modules/libpref/init/StaticPrefList.yaml
+index e23252c..c4900b3 100644
+--- a/modules/libpref/init/StaticPrefList.yaml
++++ b/modules/libpref/init/StaticPrefList.yaml
+@@ -8019,7 +8019,7 @@
+ # interpretation of physical units such as "pt".
+ - name: layout.css.dpi
+ type: int32_t
+- value: -1
++ value: 0
+ mirror: always
+
+ # Whether @layer is enabled
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644
index 0000000000..fff9983a51
--- /dev/null
+++ b/debian/patches/series
@@ -0,0 +1,26 @@
+fixes/Allow-.js-preference-files-to-set-locked-prefs-with-.patch
+fixes/Bug-1795993-Fix-webrtc-FTBFS-from-missing-sse2-flags.patch
+fixes/Bug-1810584-Suppress-false-positive-error-for-gcc-r-.patch
+porting/Add-xptcall-support-for-SH4-processors.patch
+porting/NSS-Fix-FTBFS-on-Hurd-because-of-MAXPATHLEN.patch
+porting/Use-NEON_FLAGS-instead-of-VPX_ASFLAGS-for-libaom-neo.patch
+porting/Work-around-GCC-ICE-on-mips-i386-and-s390x.patch
+porting/Work-around-another-GCC-ICE-on-arm.patch
+porting/Use-compiler-macros-to-detect-big-endian.patch
+prefs/Set-DPI-to-system-settings.patch
+prefs/Don-t-auto-disable-extensions-in-system-directories.patch
+debian-hacks/Avoid-wrong-sessionstore-data-to-keep-windows-out-of.patch
+debian-hacks/Add-another-preferences-directory-for-applications-p.patch
+debian-hacks/Add-a-2-minutes-timeout-on-xpcshell-tests.patch
+debian-hacks/Add-debian-extra-stuff-to-upstream-build-system-dire.patch
+debian-hacks/Don-t-build-image-gtests.patch
+debian-hacks/Use-the-Mozilla-Location-Service-key-when-the-Google.patch
+debian-hacks/Avoid-using-vmrs-vmsr-on-armel.patch
+debian-hacks/Use-build-id-as-langpack-version-for-reproducibility.patch
+debian-hacks/Fix-math_private.h-for-i386-FTBFS.patch
+debian-hacks/Work-around-bz-1775202-to-fix-FTBFS-on-ppc64el.patch
+debian-hacks/Allow-to-override-rust-LTO-flag.patch
+debian-hacks/Remove-workaround-for-old-libstdc-problem-which-now-.patch
+debian-hacks/Add-missing-webrtc-directory-for-ppc64el-bz-1775202.patch
+debian-hacks/Relax-nodejs-minimum-version.patch
+debian-hacks/Relax-minimum-supporter-rust-version-to-1.63.patch