Граф коммитов

8042 Коммитов

Автор SHA1 Сообщение Дата
Brindusan Cristian 044c3936c7 Backed out 6 changesets (bug 1536736, bug 1536336, bug 1536719, bug 1536825, bug 1537537, bug 1536724) for build bustages at TestCanRunScript. CLOSED TREE
Backed out changeset f754116e738e (bug 1537537)
Backed out changeset f9df48cfea43 (bug 1536736)
Backed out changeset 7a9888e700cf (bug 1536825)
Backed out changeset e2551303c5cf (bug 1536724)
Backed out changeset f497ce3b7419 (bug 1536719)
Backed out changeset fd59264c47c1 (bug 1536336)
2019-03-21 07:33:33 +02:00
Boris Zbarsky e3785e6699 Bug 1537537. Improve the MOZ_CAN_RUN_SCRIPT analysis reporting around invalid args. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D24258

--HG--
extra : moz-landing-system : lando
2019-03-20 20:04:13 +00:00
Boris Zbarsky 22b27ec802 Bug 1536736. Allow constexpr things in the MOZ_CAN_RUN_SCRIPT analysis. r=andi
Since these are compile-time constants, they can't exactly go away on us due to
running script, right?

Differential Revision: https://phabricator.services.mozilla.com/D24195

--HG--
extra : moz-landing-system : lando
2019-03-20 20:04:11 +00:00
Boris Zbarsky 9679412967 Bug 1536825. Fix the interaction of ignoreTrivials and typechecks in MOZ_CAN_RUN_SCRIPT analysis. r=andi
We need to typecheck the trivials too, not just the final thing after trivials
are stripped, because casts are trivials.

Differential Revision: https://phabricator.services.mozilla.com/D24186

--HG--
extra : moz-landing-system : lando
2019-03-20 15:25:55 +00:00
Boris Zbarsky 0d0978f826 Bug 1536724. Consider a smartptr temporary to be live for MOZ_CAN_RUN_SCRIPT analysis purposes. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D24120

--HG--
extra : moz-landing-system : lando
2019-03-20 14:40:34 +00:00
Boris Zbarsky 14f6385d4b Bug 1536719. Fix handling of member method calls in the MOZ_CAN_RUN_SCRIPT analysis. r=andi
The old code for member method calls did the following:

 1) Find the member method calls.
 2) Look at their "this" expression.
 3) If the "this" is an operator call, check for any of the arguments of the
    operator call being invalid.
 4) Otherwise (if not an operator call) check for the "this" value being
    invalid.

This wasn't right, because the "is invalid" check checks the type and only
considers refcounted things.  So if the code looked something like
"foo[i]->call_method()", we would look at the types of "foo" and "i" and
determine that none of those are refcounted types so there is nothing invalid
here (since "foo" is some sort of array type and "i" is an integer).  The new
setup just checks whether the "this" value is invalid, which does the type
check on the "this" value itself; in the "foo[i]->call_method()" case on
"foo[i]".  We then adjust the exclusions in InvalidArg to consider operator->
on known-live things valid, to allow the thing that we were really trying to
accomplish with the "check for an operator call" bits:
"stackRefPtr->some_method()".

The test coverage being added for the made-up TArray type is meant to catch
things like the geolocation issue that was being hidden by the buggy behavior.
I'm not using nsTArray itself because some header included by nsTArray.h
tries to define operator new/delete bits inline and that triggers warnings that
then cause a clang-plugin test failure, because they're unexpected.

Differential Revision: https://phabricator.services.mozilla.com/D24117

--HG--
extra : moz-landing-system : lando
2019-03-20 18:08:16 +00:00
Boris Zbarsky fd9223d7ac Bug 1536336. Change MOZ_CAN_RUN_SCRIPT analysis to allow const members of "this" in addition to stack refptrs. r=andi
"this" is guaranteed to stay alive as long as other MOZ_CAN_RUN_SCRIPT
conditions hold, and its const members can't change value and drop
their refs.

Differential Revision: https://phabricator.services.mozilla.com/D23997

--HG--
extra : moz-landing-system : lando
2019-03-20 04:19:24 +00:00
Mike Hommey 7e282558ea Bug 1524429 - Move build/autoconf/arch.m4 to python configure. r=nalexander
The file is essentially limited to ARM flag tweaks, so we make the
corresponding python configure code ARM-only. In large parts, the
python code sets things up similarly, although in a few places we try to
be smarter about than the current autoconf-based code.

The resulting config.status have been verified to only have
insignificant differences on both arm and aarch64 android builds.

Depends on D24000

Differential Revision: https://phabricator.services.mozilla.com/D24001

--HG--
extra : moz-landing-system : lando
2019-03-20 16:17:57 +00:00
Boris Zbarsky 5c13f9c06d Bug 1535124 part 1. Add a MOZ_KnownLive() around callback-typed arguments in bindings. r=qdot
This allows calling a C++ MOZ_CAN_RUN_SCRIPT method that takes a callback argument.

The changes to TestCanRunScript.cpp are there to catch an incorrect change I was
going to make to the analysis to make this work, until I figured out that
RootedCallback should be MOZ_IS_SMARTPTR_TO_REFCOUNTED.

Differential Revision: https://phabricator.services.mozilla.com/D23519

--HG--
extra : moz-landing-system : lando
2019-03-19 12:59:53 +00:00
David Major ebab8a4fb6 Bug 1490743 - Work around missing type information in Windows debug symbols r=chmanchester
See https://bugs.llvm.org/show_bug.cgi?id=38944. clang thought it could safely leave out type information for some of our classes, but that information would have been helpful for debugging. The flag in this patch turns off the debug-info limiting.

Differential Revision: https://phabricator.services.mozilla.com/D24073

--HG--
extra : moz-landing-system : lando
2019-03-20 15:04:41 +00:00
Mike Shal 5f5bbc2171 Bug 632954 - Add -Wno-error=backend-plugin to support Android PGO; r=glandium
Without this flag, Android PGO profile-use builds may fail with
"Function control flow change detected" errors.

Differential Revision: https://phabricator.services.mozilla.com/D22816

--HG--
extra : source : 3dfc0e4f8e7c8cd48b911033222fb3c3edb9762b
2019-03-18 23:52:22 +00:00
Noemi Erli b61340c4b0 Backed out 12 changesets (bug 632954) for causing Android Bpgo(run) pending jobs CLOSED TREE
Backed out changeset 429c96e4de32 (bug 632954)
Backed out changeset de8beacc5eb4 (bug 632954)
Backed out changeset c151ebf303ca (bug 632954)
Backed out changeset b96dd954a456 (bug 632954)
Backed out changeset 26031d362333 (bug 632954)
Backed out changeset 097f141a499d (bug 632954)
Backed out changeset 6f5fc0d644dd (bug 632954)
Backed out changeset 53d3443e55d9 (bug 632954)
Backed out changeset 503bcac73583 (bug 632954)
Backed out changeset 142ae187478d (bug 632954)
Backed out changeset 0615c775a0cf (bug 632954)
Backed out changeset 3dfc0e4f8e7c (bug 632954)
2019-03-20 11:58:18 +02:00
Andreea Pavel f7b09c8773 Backed out 2 changesets (bug 1524429) for build bustages at lint.py on a CLOSED TREE
Backed out changeset 7947b90f1580 (bug 1524429)
Backed out changeset 1a5a5aef01d5 (bug 1524429)
2019-03-20 02:16:41 +02:00
Mike Shal 5607f84fdf Bug 632954 - Add -Wno-error=backend-plugin to support Android PGO; r=glandium
Without this flag, Android PGO profile-use builds may fail with
"Function control flow change detected" errors.

Differential Revision: https://phabricator.services.mozilla.com/D22816

--HG--
extra : moz-landing-system : lando
2019-03-18 23:52:22 +00:00
Mike Hommey 80f7e86b2e Bug 1524429 - Move build/autoconf/arch.m4 to python configure. r=nalexander
The file is essentially limited to ARM flag tweaks, so we make the
corresponding python configure code ARM-only. In large parts, the
python code sets things up similarly, although in a few places we try to
be smarter about than the current autoconf-based code.

The resulting config.status have been verified to only have
insignificant differences on both arm and aarch64 android builds.

Depends on D24000

Differential Revision: https://phabricator.services.mozilla.com/D24001

--HG--
extra : moz-landing-system : lando
2019-03-19 22:32:58 +00:00
Chris Manchester 02576069b4 Bug 1536259 - Add missing ANDROID define for clang runtime builds. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D23957

--HG--
extra : moz-landing-system : lando
2019-03-19 17:47:21 +00:00
Wes Kocher 9eefc4e997 no bug - fix spelling of 'mozila' tree-wide r=me 2019-03-18 15:55:18 -07:00
Boris Zbarsky e348ad0b6c Improve the documentation around the MOZ_CAN_RUN_SCRIPT analysis. No bug. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D23762

--HG--
extra : moz-landing-system : lando
2019-03-16 12:52:33 +00:00
Chris Manchester dd6a3ef16f Bug 1535771 - Append android compiler-rt flags in build-clang.py to avoid conflicts. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D23745

--HG--
extra : moz-landing-system : lando
2019-03-15 23:19:15 +00:00
Boris Zbarsky 135d0b832e Bug 1535651. Whitelist std::__pair_base as memmovable for static analysis purposes. r=emilio
In at least some libstdc++ versions, std::pair (which we want to be
memmovable) inherits from __pair_base.  We have a similar setup
already for __atomic_base.

Differential Revision: https://phabricator.services.mozilla.com/D23698

--HG--
extra : moz-landing-system : lando
2019-03-15 16:17:52 +00:00
Gian-Carlo Pascutto e0391761b8 Bug 1533133 - Fix missing linker and JS engine options for SSP. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D22730

--HG--
extra : moz-landing-system : lando
2019-03-15 08:46:27 +00:00
Nathan Froyd c5ab838f7c Bug 1451104 - part 3 - inform stage2/3 clang about gcc binutils; r=glandium
We do this to encourage clang to find an new-enough linker instead of
the system one.

Differential Revision: https://phabricator.services.mozilla.com/D22881

--HG--
extra : moz-landing-system : lando
2019-03-15 01:29:04 +00:00
Nathan Froyd ce83c42681 Bug 1451104 - part 2 - force clang to always pick up its local GCC headers and libraries; r=glandium
We want our clang bootstrap to use the GCC headers we're building with,
not whatever sysroot it happens to find on the server we're building on.

The -gcc-toolchain argument we specify when building clang will also be
picked up by llvm-config, so we need to strip it out when building the
plugin. Otherwise, we will get peculiar failures about not being able to
find C++ header files.

Differential Revision: https://phabricator.services.mozilla.com/D22880

--HG--
extra : moz-landing-system : lando
2019-03-15 01:28:55 +00:00
Nathan Froyd 9ebe50fc6e Bug 1451104 - part 1 - be explicit about our GCC/binutils target and build machine; r=glandium
Explicit is better than implicit, and helps ensure that GCC is always
using the binutils we built it with, rather than the system binutils.

Differential Revision: https://phabricator.services.mozilla.com/D22879

--HG--
extra : moz-landing-system : lando
2019-03-15 01:28:10 +00:00
Nathan Froyd 1d99a85b72 Bug 1535350 - remove win32-clang-tidy job; r=dmajor
Updating clang indicates that 32-bit compilation is substantially longer
than 64-bit compilation, perhaps due to swapping.  The compilation
process is hitting the timeout limit shortly before the compilation
process completes (~3681/3695 tasks according to ninja).

We could tweak our clang build process to accommodate this job.  But we
don't support building on 32-bit Windows anymore, and we don't produce a
32-bit Windows clang either.  So we shouldn't support a 32-bit Windows
clang-tidy job either.  Let's get rid of it.

Differential Revision: https://phabricator.services.mozilla.com/D23517

--HG--
extra : moz-landing-system : lando
2019-03-14 20:28:48 +00:00
Carolina Jimenez Gomez 0f33068ca0 Bug 1483626 - Checks if subjectAltNames has elements that are not empty string, and if it has them, they will be remove, preventing incomplete r=johannh
messages to show to the user. r=johannh

Differential Revision: https://phabricator.services.mozilla.com/D21796

--HG--
extra : moz-landing-system : lando
2019-03-14 15:45:55 +00:00
Gurzau Raul c3883e46f7 Backed out 6 changesets (bug 1451104) for toolchains bustage on a CLOSED TREE.
Backed out changeset 2f6199beeb71 (bug 1451104)
Backed out changeset 7c116f85ede6 (bug 1451104)
Backed out changeset 5179c8066914 (bug 1451104)
Backed out changeset 675f73d41eb4 (bug 1451104)
Backed out changeset c64bfaad8a2f (bug 1451104)
Backed out changeset 991777e081ff (bug 1451104)
2019-03-14 05:02:44 +02:00
Nathan Froyd 3ba781f992 Bug 1451104 - part 3 - inform stage2/3 clang about gcc binutils; r=glandium
We do this to encourage clang to find an new-enough linker instead of
the system one.

Differential Revision: https://phabricator.services.mozilla.com/D22881

--HG--
extra : moz-landing-system : lando
2019-03-14 00:43:01 +00:00
Nathan Froyd 3ec62f66df Bug 1451104 - part 2 - force clang to always pick up its local GCC headers and libraries; r=glandium
We want our clang bootstrap to use the GCC headers we're building with,
not whatever sysroot it happens to find on the server we're building on.

The -gcc-toolchain argument we specify when building clang will also be
picked up by llvm-config, so we need to strip it out when building the
plugin. Otherwise, we will get peculiar failures about not being able to
find C++ header files.

Depends on D22879

Differential Revision: https://phabricator.services.mozilla.com/D22880

--HG--
extra : moz-landing-system : lando
2019-03-12 00:21:20 +00:00
Nathan Froyd 502083172c Bug 1451104 - part 1 - be explicit about our GCC/binutils target and build machine; r=glandium
Explicit is better than implicit, and helps ensure that GCC is always
using the binutils we built it with, rather than the system binutils.

Differential Revision: https://phabricator.services.mozilla.com/D22879

--HG--
extra : moz-landing-system : lando
2019-03-12 00:19:25 +00:00
Nathan Froyd 6d4137ff36 Bug 1534159 - remove exceptions for Android and Darwin from libstdcxx checks; r=glandium
The only place we'd need the compat libraries would be for host
binaries, and those shouldn't be a problem given that our system images
are new enough.

Differential Revision: https://phabricator.services.mozilla.com/D22873

--HG--
extra : moz-landing-system : lando
2019-03-13 22:24:20 +00:00
Nathan Froyd 5696142472 Bug 1535142 - add binutils toolchains to more builds; r=dmajor
A newer clang may require newer binutils than the system provides, so we
should ensure that we provide just such a binutils.

Differential Revision: https://phabricator.services.mozilla.com/D23393

--HG--
extra : moz-landing-system : lando
2019-03-13 21:37:27 +00:00
Boris Zbarsky f3173cde3f Bug 1534421. Fix the CAN_RUN_SCRIPT analysis to treat a deref of an arg as live if it would treat the arg as live. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D23071

--HG--
extra : moz-landing-system : lando
2019-03-13 12:13:08 +00:00
Boris Zbarsky b969a0f9f0 Bug 1534518. Change CanRunScriptChecker caller function note to point to the declaration, not the definition. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D23082

--HG--
extra : moz-landing-system : lando
2019-03-13 12:11:34 +00:00
Boris Zbarsky 4b76c0a954 Bug 1506439 part 1. Fix CanRunScript analysis handling of arguments that default to null. r=andi
Differential Revision: https://phabricator.services.mozilla.com/D23064

--HG--
extra : moz-landing-system : lando
2019-03-13 02:33:57 +00:00
Boris Zbarsky 5bf2e408e6 Bug 1534608. MOZ_CAN_RUN_SCRIPT should disallow non-stack refptr arguments. r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D23217

--HG--
extra : moz-landing-system : lando
2019-03-13 00:30:11 +00:00
Mike Hommey 26938ca3a9 Bug 1534524 - Apply the changes from bug 1470502 to build-binutils.sh. r=dmajor
Differential Revision: https://phabricator.services.mozilla.com/D23092

--HG--
extra : moz-landing-system : lando
2019-03-12 14:18:47 +00:00
Mike Hommey b0f3ca8044 Bug 1490573 - Use fetches for nsis and wine toolchain tasks. r=froydnj
These toolchain tasks are the last ones using the historical
download-tools script from build/unix/build-gcc, which invokes gpg to
validate the downloaded tarballs. The consequence is that gpg-agent is
spawned and stays running, preventing a cleanup script from doing its
job, making the tasks fail.

Fetches are the new way to download sources, and can also do gpg
validation without those caveats.

The download-tools.sh script can then be removed as it's not used
anymore.

Differential Revision: https://phabricator.services.mozilla.com/D22682

--HG--
extra : moz-landing-system : lando
2019-03-11 01:38:46 +00:00
Thomas Daede b63aba5124 Bug 1521186 - Download nasm toolchain on Windows and Linux. r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D22798

--HG--
extra : moz-landing-system : lando
2019-03-11 18:00:13 +00:00
Boris Zbarsky cb94672630 Bug 1533617 part 5. Disallow virtual MOZ_CAN_RUN_SCRIPT methods overriding a non-MOZ_CAN_RUN_SCRIPT superclass method. r=andi
This way if a caller calls a method that has a MOZ_CAN_RUN_SCRIPT override, it
can detect that it's possibly calling a MOZ_CAN_RUN_SCRIPT thing without having
to know about the override.

Differential Revision: https://phabricator.services.mozilla.com/D22839

--HG--
extra : moz-landing-system : lando
2019-03-11 14:20:27 +00:00
Nathan Froyd 2f1020dc41 Bug 1533149 - add checking messages for libstdcxx_version; r=glandium
It's occasionally useful to know what versions are being discovered for
these variables.  It's also convenient for logs from automation to
contain all the relevant information, rather than setting up a loaner
and running all the commands yourself.

Differential Revision: https://phabricator.services.mozilla.com/D22385

--HG--
extra : moz-landing-system : lando
2019-03-10 00:11:09 +00:00
Andreea Pavel c54a744cff Backed out changeset 5bc7479ef4a1 (bug 1532502) for very frequent win asan failures with exit code 1
--HG--
extra : rebase_source : 636c7036385ef42ec755c78d86eb34799d2e0bcb
extra : amend_source : ec830eafb0ef96dad8229f078ce27166ab9ef876
2019-03-09 22:34:50 +02:00
David Major cf077dc43d Bug 1532502 - Update ASan thread unpoisoning patch to latest upstream version r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D22325

--HG--
extra : moz-landing-system : lando
2019-03-07 16:04:17 +00:00
Chris Manchester 7b91864041 Bug 1528374 - Convert binary argument to absolute path in profileserver.py r=firefox-build-system-reviewers,mshal
Differential Revision: https://phabricator.services.mozilla.com/D20407

--HG--
extra : moz-landing-system : lando
2019-02-20 14:36:35 +00:00
Emilio Cobos Álvarez 9b1323a3ae Bug 1533142 - Update min cbindgen version. r=jrmuizel,kats
Differential Revision: https://phabricator.services.mozilla.com/D22381

--HG--
extra : moz-landing-system : lando
2019-03-06 22:31:57 +00:00
Mike Hommey 9961a0af3d Bug 1530908 - Don't use different mozconfigs for artifact builds. r=chmanchester
Artifact mozconfigs are not necessarily up-to-date wrt changes to the
nightly mozconfigs, and all in all, shouldn't be much different from
them.

It's just better to use the nightly mozconfigs (or beta on beta, etc.)
and make the mozconfigs themselves handle the few things that need to be
different when the USE_ARTIFACT environment is set (which is now
consistently set by taskcluster)

This does have the side effect of turning builds that actually don't
support artifact builds red when using --artifact on try, instead of
having them silently not be artifact builds as currently happens.

Depends on D21314

Differential Revision: https://phabricator.services.mozilla.com/D21315

--HG--
extra : moz-landing-system : lando
2019-03-06 22:48:05 +00:00
Mike Hommey 50e4660cb8 Bug 1530908 - Move --enable-artifact-build-symbols to mozconfig.artifact. r=chmanchester
Depends on D21313

Differential Revision: https://phabricator.services.mozilla.com/D21314

--HG--
extra : moz-landing-system : lando
2019-03-05 06:58:05 +00:00
Mike Hommey 03b94324a6 Bug 1530908 - Always set USE_ARTIFACT from taskcluster for artifact builds. r=chmanchester
The artifact builds that are automatically derived using the artifact
template set the USE_ARTIFACT environment variable from taskcluster.
After the previous change, --artifact builds from try syntax do that
too.
That leaves us with only the artifact-build build not doing it, so for
consistency, do it there. That makes it not necessary to set
USE_ARTIFACT from mozconfig.artifact.automation anymore.

Depends on D22056

Differential Revision: https://phabricator.services.mozilla.com/D21313

--HG--
extra : moz-landing-system : lando
2019-03-06 22:48:30 +00:00
Mike Hommey d876d02d9a Bug 1530908 - Use an environment variable to enable LTO on automation. r=chmanchester
This allows to disable it more easily for artifact builds.

Differential Revision: https://phabricator.services.mozilla.com/D21311

--HG--
extra : moz-landing-system : lando
2019-03-06 22:47:08 +00:00
Andi-Bogdan Postelnicu 891cf78a33 Bug 1529650 - For SprintfLiteral checker also disallow it in third party paths. r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D21240

--HG--
extra : moz-landing-system : lando
2019-02-27 15:15:24 +00:00