Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 74384758 authored by Mitch Phillips's avatar Mitch Phillips
Browse files

Remove experimental pass manager for fuzzer builds.

Sanitizer coverage is currently broken with the experimental pass
manager. See b/133876586 for more information. The patch is currently
being worked on upstream (https://reviews.llvm.org/D62888), but is not
ready yet. Hence, we disable it here (similar to the LTO bug).

Bug: 133876586
Test: Build anything with SANITIZE_TARGET='fuzzer', verify that it has
'sancov' symbols.

Change-Id: I4302a8cf05300015aaff137f40b61d5685dc3fea
parent 1b033f5c
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -467,6 +467,10 @@ func (sanitize *sanitize) flags(ctx ModuleContext, flags Flags) Flags {
		// TODO(b/131771163): LTO and Fuzzer support is mutually incompatible.
		_, flags.LdFlags = removeFromList("-flto", flags.LdFlags)
		flags.LdFlags = append(flags.LdFlags, "-fno-lto")

		// TODO(b/133876586): Experimental PM breaks sanitizer coverage.
		_, flags.CFlags = removeFromList("-fexperimental-new-pass-manager", flags.CFlags)
		flags.CFlags = append(flags.CFlags, "-fno-experimental-new-pass-manager")
	}

	if Bool(sanitize.Properties.Sanitize.Cfi) {