Commit Graph

9317 Commits

Author SHA1 Message Date
Razvan Maries
75a5750a87 Backed out 5 changesets (bug 1662564, bug 1664922, bug 1440203) for Valgrind bustages. CLOSED TREE
Backed out changeset 9366b15ee97c (bug 1440203)
Backed out changeset bb512f5fdeda (bug 1440203)
Backed out changeset be90d6aec690 (bug 1664922)
Backed out changeset f6527a1d0f14 (bug 1662564)
Backed out changeset 3a2941fa7d4b (bug 1662564)
2020-10-07 08:38:13 +03:00
Daniel Holbert
675e1e5b28 Bug 1669409: Convert the nsIPrintSettings:kEnableSelectionRB flag into a boolean, since it's the only entry in a bitfield. r=jwatt,emilio
This was the last flag that the PrintOptions bitfield was tracking.

So, this patch is effectively converting that bitfield (and its alias
"PrintOptionsBits") into a new, simpler boolean field named
"isPrintSelectionRBEnabled".

Differential Revision: https://phabricator.services.mozilla.com/D92542
2020-10-07 00:36:51 +00:00
Jed Davis
c4968e6653 Bug 1440203 - Support memfd_create in IPC shared memory. r=glandium
This commit also allows `memfd_create` in the seccomp-bpf policy for all
process types.

`memfd_create` is an API added in Linux 3.17 (and adopted by FreeBSD
for the upcoming version 13) for creating anonymous shared memory
not connected to any filesystem.  Supporting it means that sandboxed
child processes on Linux can create shared memory directly instead of
messaging a broker, which is unavoidably slower, and it should avoid
the problems we'd been seeing with overly small `/dev/shm` in container
environments (which were causing serious problems for using Firefox for
automated testing of frontend projects).

`memfd_create` also introduces the related operation of file seals:
irrevocably preventing types of modifications to a file.  Unfortunately,
the most useful one, `F_SEAL_WRITE`, can't be relied on; see the large
comment in `SharedMemory:ReadOnlyCopy` for details.  So we still use
the applicable seals as defense in depth, but read-only copies are
implemented on Linux by using procfs (and see the comments on the
`ReadOnlyCopy` function in `shared_memory_posix.cc` for the subtleties
there).

There's also a FreeBSD implementation, using `cap_rights_limit` for
read-only copies, if the build host is new enough to have the
`memfd_create` function.

Differential Revision: https://phabricator.services.mozilla.com/D90605
2020-10-06 19:20:29 +00:00
Ricky Stewart
56a1a229f2 Bug 1668718 - Don't import mach_bootstrap for virtualenvs that don't have populate_local_paths set, or in Python 3 r=mhentges,firefox-build-system-reviewers
Before, this would be written to `sitecustomize.py` irrespective of the value of `populate_local_paths`. This doesn't make sense -- since the local paths aren't included in the `virtualenv`'s `PYTHONPATH` when Python starts up, it doesn't know how to `import mach_bootstrap`. Since on `mach` startup the import hook will be loaded anyway, and the `virtualenv`s in `~/.mozbuild` (i.e. the only `virtualenv`s for which we don't `populate_local_paths`) are just used to run `mach`, this is fine and won't regress anything.

Also, since the `import` hook is only necessary for Python 2, add a couple conditional checks to get rid of the added overhead when we're running with Python 3.

This was never noticed because importing `sitecustomize` is allowed to throw an `ImportError`, which failure is ignored silently. This may be fixed in the latest version of `virtualenv`.

Differential Revision: https://phabricator.services.mozilla.com/D92290
2020-10-05 17:05:05 +00:00
David Major
0b9c307bbe Bug 1667841 - Update revert-r362047-and-r362065.patch for clang-12 r=firefox-build-system-reviewers,rstewart
The patch no longer applies cleanly because of nearby changes in 4b8cb665a1.

Instead of forking a clang-12 version of this patch, we can get away with carrying a little less context in our patch file.

Differential Revision: https://phabricator.services.mozilla.com/D91625
2020-09-28 19:03:18 +00:00
Andi-Bogdan Postelnicu
0ec28a45b6 Bug 1666993 - new bakend for static-analysis that prevents regressing issues with files that can be built outside of the unified environment. r=botond
1. Provide a new backend dedicated for C++ static-code_analysis
2. Build a list with directories, from non-unified-compat that have been fixed and
permit compiling of C++ files outside of the unified environment. With this list
we eliminate the unified sources and instead use the original source for command
attribute from compile_commands.json.
In this way if a regression appears clang-tidy will report it since it no longer uses
the unified environment for files that are compatible to be compiled standalone.
3. Remove the coverity functionality that was reading and using non-unified build files
since in practive it proved to be sub-optimal.

Differential Revision: https://phabricator.services.mozilla.com/D91011
2020-09-30 04:29:25 +00:00
Razvan Maries
3b3e92d8ee Backed out changeset a86359ce9e75 (bug 1667892) for L10n bustages. CLOSED TREE 2020-09-30 05:16:28 +03:00
Ricky Stewart
2bb808e369 Bug 1667896 - Remove MOZ_ANDROID_DISTRIBUTION_DIRECTORY r=nalexander
This config value is evidently a Fennec thing that isn't used anywhere any more.

Differential Revision: https://phabricator.services.mozilla.com/D91647
2020-09-29 01:51:13 +00:00
Ricky Stewart
d9aa989230 Bug 1667892 - Move search for wget binary from old-configure to Python configure r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D91645
2020-09-28 22:33:33 +00:00
Geoff Brown
7d74529955 Bug 1638974 - Run 'mach mochitest' with Python 3; r=bc
Minor fix to remoteautomation.py: Increment stdoutlen before any type conversions,
to ensure that it accurately reflects the byte offset in the file.

With this last change, 'mach mochitest' appears to run correctly on Android with Python 3:
switch it over to Python 3.

Differential Revision: https://phabricator.services.mozilla.com/D91586
2020-09-28 16:30:33 +00:00
Michael Froman
5b942915e9 Bug 1664898 - move media/mtransport to media/transport. r=ng
Differential Revision: https://phabricator.services.mozilla.com/D90309
2020-09-22 21:43:49 +00:00
J.C. Jones
f2b2199636 Bug 1666567 - land NSS c28e20f61e5d UPGRADE_NSS_RELEASE, r=kjacobs
2020-09-18  Kevin Jacobs  <kjacobs@mozilla.com>

        * automation/abi-check/previous-nss-release, lib/nss/nss.h,
        lib/softoken/softkver.h, lib/util/nssutil.h:
        Set version numbers to 3.58 Beta
        [c28e20f61e5d] [tip]

        * .hgtags:
        Added tag NSS_3_57_RTM for changeset cf7e3e8abd77
        [a963849538ca] <NSS_3_57_BRANCH>

        * lib/nss/nss.h, lib/softoken/softkver.h, lib/util/nssutil.h:
        Set version numbers to 3.57 final
        [cf7e3e8abd77] [NSS_3_57_RTM] <NSS_3_57_BRANCH>

Differential Revision: https://phabricator.services.mozilla.com/D91070
2020-09-22 22:31:15 +00:00
Mitchell Hentges
1de0840710 Bug 1665445: install-moz-phab installs the Phabricator credentials r=firefox-build-system-reviewers,rstewart
Since `install-moz-phab` is meant to simplify the moz-phab setup flow,
automatically prompting for Phabricator credentials removes an otherwise
manual step.

Detecting the "console_script" location of a package in a
cross-platform, virtualenv-supporting and "--user"-supporting way is
tough, and the most consistent solution seems to be to list the package
contents of moz-phab and look for the one that seems to be the entry
point.

Differential Revision: https://phabricator.services.mozilla.com/D90642
2020-09-22 20:44:32 +00:00
Simon Giesecke
ee5a559a7d Bug 1666307 - Turn assertion failure into an early return for now. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D90959
2020-09-22 12:33:32 +00:00
Sylvestre Ledru
264cb8dba5 no bug - fx doc - Fix some rst warnings
Depends on D90832

Differential Revision: https://phabricator.services.mozilla.com/D90864
2020-09-22 06:26:42 +00:00
Mike Hommey
76570df2df Bug 1665558 - Remove -Wno-noexcept-type. r=dmajor
It was added in bug 1320656 because back then we were building as C++14
with warnings about future incompatibilities with C++17. Since then,
we've switched to C++17, which means we had to fix those
incompatibilities, and thus they don't exist anymore. A local build with
-Werror=noexcept-type finishes just fine.

This removes the only difference between top-level and js warning flags.

Differential Revision: https://phabricator.services.mozilla.com/D90521
2020-09-17 12:33:48 +00:00
Mike Hommey
b297cc22e4 Bug 1664077 - Remove _NON_GLOBAL_ACDEFINES. r=firefox-build-system-reviewers,mhentges,rstewart
I think they're remnants from the past that we don't really need anymore.
And they're making things more complicated for some pending work of mine.

Differential Revision: https://phabricator.services.mozilla.com/D89687
2020-09-15 14:25:14 +00:00
Kartikaya Gupta
c95f299299 Bug 1661117 - Follow-up to update standalone WR CI for osmesa-src bump. r=kvark
This extracts an install-meson.sh helper script to install meson in both
the wrench-deps task for Firefox CI and the taskcluster.yml in WebRender CI.

Differential Revision: https://phabricator.services.mozilla.com/D90441
2020-09-16 18:02:45 +00:00
Mitchell Hentges
648ccad85b Bug 1654074: Publish glean handle to mach commands r=firefox-build-system-reviewers,rstewart
Allows mach commands to define their own glean metrics with the `metrics_path` @CommandProvider parameter.
When `metrics_path` is defined:
* A `metrics` kwarg is provided to the decorated class. This `metrics` handle is a Glean instance, so Glean documentation should be consulted for usage information.
* When `mach doc telemetry` is run, metrics docs will be generated from all the registered metrics files.

Note: there was some consideration between making `metrics_path` a @CommandProvider or @Command parameter.
In the end, @CommandProvider seemed like a better fit because:
* Metrics seem to be more associated with the entire class than a specific command/method. This is because a class represents a "domain", and that domain may have different commands that have overlapping metrics.  Accordingly, all the metrics should be defined once as available to the entire class.
* Currently, @Command methods only take parameters that map one-to-one with CLI arguments. It could seem inconsistent to have one exception: the metrics handle

Differential Revision: https://phabricator.services.mozilla.com/D85953
2020-09-15 21:15:20 +00:00
Doug Thayer
cd96536b38 Bug 1656526 - Add resolver_64.cc to asan_blacklist_win.txt r=dmajor
resolver_64.cc should have been on the list all along, because the InternalThunk
constructor runs before ASan init. It was probably just accident (maybe inlining?)
that we got away with not including it in the past.

Differential Revision: https://phabricator.services.mozilla.com/D89669
2020-09-15 14:50:26 +00:00
june wilde
9178fec3e3 Bug 1664394 - rename linux64-civet-tidy to linux64-external-tidy;r=andi
Differential Revision: https://phabricator.services.mozilla.com/D90158
2020-09-15 15:06:10 +00:00
Gregory Mierzwinski
5a1f44cb77 Bug 1664541 - Add package-lock.json to browsertime resources. r=perftest-reviewers,kimberlythegeek
Differential Revision: https://phabricator.services.mozilla.com/D89953
2020-09-15 16:23:18 +00:00
Ricky Stewart
4822d7dd4c Bug 1663755 - Remove inherit-from-parent-environment implementation r=ahal
This was originally meant to allow `virtualenv`s to use packages from a parent Python environment without having to re-install them. This turned out to not pan out as we would have liked, so we're going another way to solve the same problem. Bug 1660351 walked back a bunch of this logic; this patch deletes the rest of it.

Differential Revision: https://phabricator.services.mozilla.com/D89492
2020-09-11 22:14:41 +00:00
Andi-Bogdan Postelnicu
17c635393e no bug - Doc: add reference for Visual Studio Code the build documentation. r=sylvestre DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D90215
2020-09-15 14:32:17 +00:00
Razvan Maries
f46af2adfc Backed out changeset ee6dbeaf8852 (bug 1664077) for build bustages on gfxFontUtils.h. CLOSED TREE 2020-09-15 04:02:01 +03:00
Mike Hommey
3fd47263f8 Bug 1664077 - Remove _NON_GLOBAL_ACDEFINES. r=firefox-build-system-reviewers,mhentges,rstewart
I think they're remnants from the past that we don't really need anymore.
And they're making things more complicated for some pending work of mine.

Differential Revision: https://phabricator.services.mozilla.com/D89687
2020-09-14 16:31:31 +00:00
David Major
84a0b6afc4 Bug 1662608 - Set -fcrash-diagnostics-dir in build-clang.py r=froydnj
This will let us get reproducers for compiler self-host assertion failures.

Differential Revision: https://phabricator.services.mozilla.com/D89079
2020-09-10 20:25:54 +00:00
Dorel Luca
634b687351 Backed out 4 changesets (bug 1656526) for Browser-chrome failures in toolkit/xre/test/browser_checkdllblockliststate.js. CLOSED TREE
Backed out changeset 24648c48a49c (bug 1656526)
Backed out changeset 472b724994eb (bug 1656526)
Backed out changeset 6fbb7e7ac121 (bug 1656526)
Backed out changeset 88ff36a4bcfb (bug 1656526)
2020-09-11 23:17:23 +03:00
Doug Thayer
ebf7f05657 Bug 1656526 - Add resolver_64.cc to asan_blacklist_win.txt r=dmajor
resolver_64.cc should have been on the list all along, because the InternalThunk
constructor runs before ASan init. It was probably just accident (maybe inlining?)
that we got away with not including it in the past.

Differential Revision: https://phabricator.services.mozilla.com/D89669
2020-09-11 14:12:25 +00:00
Mitchell Hentges
565f11ba0a Bug 1651424: Report build telemetry using Glean r=firefox-build-system-reviewers,Dexter,rstewart
In addition to the existing build telemetry, also gather the stats and
report with Glean. This new telemetry is reported in tandem with the existing
telemetry to allow testing and confidence before a full roll-out.

Additionally, Glean isn't compatible with Python 2, so the new telemetry only runs
on Python 3 mach commands.

Differential Revision: https://phabricator.services.mozilla.com/D83572
2020-09-09 23:51:57 +00:00
Mihai Alexandru Michis
8b42ade55d Merge autoland to mozilla-central. a=merge 2020-09-10 18:12:07 +03:00
Csoregi Natalia
7909e86bd0 Backed out 2 changesets (bug 1663755, bug 1663786) for causing bustages in Bug 1664106. a=backout
Backed out changeset 972df2adcffa (bug 1663786)
Backed out changeset f97f4ae8e721 (bug 1663755)
2020-09-10 15:50:24 +03:00
Mike Hommey
a133ef0e15 Bug 1663863 - Vendor autoconf 2.13. r=firefox-build-system-reviewers,rstewart
The files are copied verbatim from upstream autoconf 2.13 (but only the
files we need) and old.configure is adapted to use the vendored version.

Differential Revision: https://phabricator.services.mozilla.com/D89554
2020-09-09 23:50:38 +00:00
Ricky Stewart
be7fcb68ee Bug 1663755 - Remove inherit-from-parent-environment implementation r=ahal
This was originally meant to allow `virtualenv`s to use packages from a parent Python environment without having to re-install them. This turned out to not pan out as we would have liked, so we're going another way to solve the same problem. Bug 1660351 walked back a bunch of this logic; this patch deletes the rest of it.

Differential Revision: https://phabricator.services.mozilla.com/D89492
2020-09-09 18:15:28 +00:00
Mike Hommey
3c3839d4b3 Bug 1664083 - Remove support for external source directories. r=nalexander
It was there for comm-central, and hasn't been used since bug 1479904.

Differential Revision: https://phabricator.services.mozilla.com/D89691
2020-09-10 03:44:30 +00:00
Nicholas Nethercote
0f7f399e93 Bug 1426269 - Change the slashslash filter in preprocessor.py. r=glandium
This commit does the following.

- Renames `slashslash` as `dumbComments`. As a result, it now comes before
  `emptyLines` in alphabetical ordering, which means that if you apply both
  `dumbComments` and `emptyLines`, lines that contain only comments will be
  fully removed.

  (I contemplated changing the filter ordering to match the order specified,
  rather than using alphabetical ordering, but that was more invasive and not
  obviously better.)

- Changes `dumbComments` so it only applies if the comment is at the start of
  the line (with optional leading whitespace). This is so it can be used with
  prefs files, which contain lines like `pref("foo", "https://mozilla.org");`
  where the `//` must not be treated as a comment.

Note that `slashslash` wasn't being used anywhere.

Depends on D88240

Differential Revision: https://phabricator.services.mozilla.com/D88242
2020-09-08 23:04:51 +00:00
Nicholas Nethercote
1aa3d23435 Bug 1426269 - Remove the spaces filter from preprocessor.py. r=glandium
It's not used, probably because it's pretty strange and hard to imagine using
safely. (Stripping leading and trailing space could be useful, but collapsing
sequences of spaces? Hmm.)

Differential Revision: https://phabricator.services.mozilla.com/D88240
2020-09-08 06:54:04 +00:00
Mike Hommey
d5f182fdf4 Bug 1663771 - Allow builds with the 11.0 macOS SDK. r=firefox-build-system-reviewers,rstewart DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D89495
2020-09-08 21:08:48 +00:00
Bogdan Tara
5bbb6dee2e Backed out changeset 1d92340a0f3c (bug 1662608) for clang5.0 failures CLOSED TREE 2020-09-09 01:43:09 +03:00
Gijs Kruitbosch
8f276c24d2 Bug 1663424 - fix pgo file writing from non-webcontent child processes in PROFILE_GENERATE runs, r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D89467
2020-09-08 17:08:41 +00:00
Kristen Wright
30a9faf35b Bug 1642727 - Remove the VarCache machinery r=njn
This commit removes Varcache entirely, putting an end to our quest to get rid of VarCache.

Differential Revision: https://phabricator.services.mozilla.com/D79538
2020-09-08 17:12:01 +00:00
David Major
398ec52cef Bug 1662608 - Set -fcrash-diagnostics-dir in build-clang.py r=froydnj CLOSED TREE
This will let us get reproducers for compiler self-host assertion failures.

Differential Revision: https://phabricator.services.mozilla.com/D89079
2020-09-02 00:27:12 +00:00
Mike Hommey
aa86bba7ac Bug 1662601 - Remove fileid. r=gsvelto
The last thing that was using fileid was fix-stacks, which, as of bug
1662037, doesn't anymore.

Differential Revision: https://phabricator.services.mozilla.com/D89076
2020-09-05 05:31:28 +00:00
Tom Ritter
cba80ebf36 Bug 1633761 - Bump the mingwclang builds to clang 10 r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D88994
2020-09-02 14:12:22 +00:00
Marco Trevisan
fe22cb7f86 Bug 1661094: Always define PKGCONF_REQUIRES_PRIVATE r=froydnj
When configuring without system NSPR the configuration variable
PKGCONF_REQUIRES_PRIVATE isn't ever set, leading to a .pc file that still
contains the @PKGCONF_REQUIRES_PRIVATE@ stub.

Ensure that we always define PKGCONF_REQUIRES_PRIVATE, by setting it to an
empty string in case no system-nsrp is enabled.
In this way, the pkg-config file stub will be always replaced.

Differential Revision: https://phabricator.services.mozilla.com/D88179
2020-09-02 12:24:27 +00:00
Mike Hommey
03aa21e4bf Bug 1661739 - Adjust merge_dlldata to widl output. r=nalexander
widl output for dlldata has #defines immediately followed by #includes,
so looking for empty lines when we observer a #define doesn't work. We
instead look for #defines.

Differential Revision: https://phabricator.services.mozilla.com/D88938
2020-09-01 20:25:49 +00:00
Mike Hommey
968f3b8fd6 Bug 1661739 - Don't use -out with midl. r=nalexander
The work in bug 1620133 ended up moving the execution of some of the
midl commands to the top-level, which was alleviated by adding the -out
midl command line option to make midl place its output in the expected
directory. Unfortunately, that option is not handled by widl, which is
the alternative command used in mingw builds.

So instead of using -out, we set the cwd for the midl command, and
readjust the command line arguments to be relative to that.

Differential Revision: https://phabricator.services.mozilla.com/D88937
2020-09-01 20:25:49 +00:00
David Major
1b886dfdf3 Bug 1641674 - Don't use --gc-sections during profile generation r=froydnj
For not-well-understood reasons, ld's `--gc-sections` discards a large number of the PGO bookkeeping structures that enable us to keep track of function counters, and the effect gets worse in object files generated by clang-10.

As much as I'd like to understand this better, the investigations take way too much time. As a path of least resistance, we can disable `--gc-sections` for the instrumentation phase of PGO builds. It won't harm anything since users never see those builds, and it will improve the performance of the optimized phase greatly.

Differential Revision: https://phabricator.services.mozilla.com/D78112
2020-08-28 20:38:45 +00:00
Ricky Stewart
7813b5eb6d Bug 1661790 - Allow configuring the name of the virtualenv used for builds r=nalexander
We don't anticipate end users will actually care to do this, but it's useful especially for unit tests. For example, after bug 1659539, Python `configure` tests will run in a new, non-`init_py3` `virtualenv`, and we'll want to target that `virtualenv` for `configure` rather than having it create a new `virtualenv` for no reason.

Differential Revision: https://phabricator.services.mozilla.com/D88661
2020-08-31 17:13:47 +00:00
Kevin Jacobs
ddc8978d1f Bug 1660509 - land NSS c100e11991f6 UPGRADE_NSS_RELEASE, r=jcj
2020-08-21  Kevin Jacobs  <kjacobs@mozilla.com>

	* automation/abi-check/previous-nss-release, lib/nss/nss.h,
	lib/softoken/softkver.h, lib/util/nssutil.h:
	Set version numbers to 3.57 Beta
	[783f49ae6126]

2020-08-24  Kevin Jacobs  <kjacobs@mozilla.com>

	* gtests/ssl_gtest/ssl_auth_unittest.cc, lib/ssl/dtls13con.c,
	lib/ssl/dtlscon.c, lib/ssl/ssl3con.c, lib/ssl/sslimpl.h,
	lib/ssl/sslnonce.c:
	Bug 1653641 - Cleanup inaccurate DTLS comments, code review fixes.
	r=mt

	[0e1b5c711cb9]

2020-08-24  Robert Relyea  <rrelyea@redhat.com>

	* lib/freebl/fipsfreebl.c, lib/softoken/fipstest.c,
	lib/softoken/kbkdf.c, lib/softoken/lowpbe.c, lib/softoken/lowpbe.h,
	lib/softoken/pkcs11c.c, lib/softoken/pkcs11i.h,
	lib/softoken/sftkhmac.c, lib/softoken/sftkike.c:
	Bug 1660304 New FIPS IG requires self-tests for approved kdfs.
	r=ueno comments=kjacobs

	FIPS guidance now requires self-tests for our kdfs. It also requires
	self-tests for cmac which we didn't have in the cmac patch.

	Currently only one test per kdf is necessary. Specifially for
	SP-800-108, only one of the three flavors are needed (counter,
	feedback, or pipeline). This patch includes more complete testing
	but it has been turned off the currently extraneous tests under the
	assumption that NIST guidance may require them in the future. HKDF
	is currently not included in FIPS, but is on track to be included,
	so hkdf have been included in this patch.

	Because the test vectors are const strings, the patch pushes some
	const definitions that were missing in existing private interfaces.

	There are three flavors of self-tests: Function implemented in
	freebl are added to the freebl/fipsfreebl.c Functions implemented in
	pkcs11c.c have selftests completely implemented in
	softoken/fipstest.c Functions implemented in their own .c file have
	their selftest function implemented in that .c file and called by
	fipstests.c These are consistant with the previous choices for
	selftests.

	Some private interfaces that took in keys from pkcs #11 structures
	or outputted keys to pkcs #11 structures were modified to optionally
	take keys in by bytes and output keys as bytes so the self-tests can
	work in just bytes.

	[5dca54fe61c2]

2020-08-25  Daiki Ueno  <dueno@redhat.com>

	* lib/softoken/manifest.mn:
	Bug 1659252, disable building libnssdbm3.so if NSS_DISABLE_DBM=1,
	r=rrelyea

	Reviewers: rrelyea

	Reviewed By: rrelyea

	Bug #: 1659252

	[4d55d36ca6ef]

2020-08-24  Kevin Jacobs  <kjacobs@mozilla.com>

	* lib/pk11wrap/pk11cxt.c, lib/softoken/pkcs11c.c, lib/softoken/sdb.c,
	lib/softoken/sftkpwd.c:
	Bug 1651834 - Fix various static analyzer warnings. r=rrelyea

	[ab04fd73fd6d]

2020-08-28  Mike Hommey  <mh@glandium.org>

	* lib/freebl/blapii.h:
	Bug 1661810 - Define pre_align/post_align based on the compiler.
	r=jcj

	Things worked fine before we upgraded to clang 11 presumably because
	the stack was always 16-bytes aligned in the first place, or
	something akin to that, and the lack of pre_align/post_align doing
	anything didn't matter. The runtime misalignment of the stack may
	well be a clang > 9 bug, but keeping pre_align/post_align tied to
	the x86/x64 is a footgun anyways.

	[c100e11991f6] [tip]

Differential Revision: https://phabricator.services.mozilla.com/D88876
2020-08-31 15:56:19 +00:00