Revert "Support coverage instrumentation for Linux host"

This reverts commit 358056c058e43bfb2bbae8978fbfe4a8e4c84fb5.

Reason for revert: Breaks build_test target in some branches.

Change-Id: I604561033038d4ff15b74caf7b81ff5c8dd9632f
diff --git a/cc/cc.go b/cc/cc.go
index 1e313c0..9722cf0 100644
--- a/cc/cc.go
+++ b/cc/cc.go
@@ -40,7 +40,6 @@
 		ctx.BottomUp("ndk_api", ndkApiMutator).Parallel()
 		ctx.BottomUp("test_per_src", testPerSrcMutator).Parallel()
 		ctx.BottomUp("begin", beginMutator).Parallel()
-		ctx.BottomUp("coverage", coverageLinkingMutator).Parallel()
 	})
 
 	android.PostDepsMutators(func(ctx android.RegisterMutatorsContext) {
@@ -55,6 +54,7 @@
 
 		ctx.TopDown("sanitize_runtime_deps", sanitizerRuntimeDepsMutator())
 
+		ctx.BottomUp("coverage", coverageLinkingMutator).Parallel()
 		ctx.TopDown("vndk_deps", sabiDepsMutator)
 
 		ctx.TopDown("lto_deps", ltoDepsMutator)
@@ -809,15 +809,12 @@
 	if c.compiler != nil {
 		deps = c.compiler.compilerDeps(ctx, deps)
 	}
-	// clang_rt.profile runtime libraries necessary for PGO and coverage
-	// depend on symbols from libgcc.  Add the runtime library dependency
-	// before libgcc gets added in linkerDeps().
+	// Add the PGO dependency (the clang_rt.profile runtime library), which
+	// sometimes depends on symbols from libgcc, before libgcc gets added
+	// in linkerDeps().
 	if c.pgo != nil {
 		deps = c.pgo.deps(ctx, deps)
 	}
-	if c.coverage != nil {
-		deps = c.coverage.deps(ctx, deps)
-	}
 	if c.linker != nil {
 		deps = c.linker.linkerDeps(ctx, deps)
 	}
@@ -827,6 +824,9 @@
 	if c.sanitize != nil {
 		deps = c.sanitize.deps(ctx, deps)
 	}
+	if c.coverage != nil {
+		deps = c.coverage.deps(ctx, deps)
+	}
 	if c.sabi != nil {
 		deps = c.sabi.deps(ctx, deps)
 	}
diff --git a/cc/config/toolchain.go b/cc/config/toolchain.go
index 19d2828..ca863a7 100644
--- a/cc/config/toolchain.go
+++ b/cc/config/toolchain.go
@@ -85,8 +85,6 @@
 	AvailableLibraries() []string
 
 	Bionic() bool
-
-	profileRuntimeLibrary() string
 }
 
 type toolchainBase struct {
@@ -171,10 +169,6 @@
 	return true
 }
 
-func (t toolchainBase) profileRuntimeLibrary() string {
-	return ""
-}
-
 func (t toolchainBase) ToolPath() string {
 	return ""
 }
@@ -246,12 +240,6 @@
 }
 
 func ProfileRuntimeLibrary(t Toolchain) string {
-	lib := t.profileRuntimeLibrary()
-	if lib != "" {
-		// Return the directly exported profile library
-		return lib
-	}
-	// Return the Android-specific library
 	return SanitizerRuntimeLibrary(t, "profile")
 }
 
diff --git a/cc/config/x86_linux_bionic_host.go b/cc/config/x86_linux_bionic_host.go
index 290793e..a9fb1f6 100644
--- a/cc/config/x86_linux_bionic_host.go
+++ b/cc/config/x86_linux_bionic_host.go
@@ -151,10 +151,6 @@
 	return true
 }
 
-func (t *toolchainLinuxBionic) profileRuntimeLibrary() string {
-	return "libclang_rt.profile-x86_64"
-}
-
 var toolchainLinuxBionicSingleton Toolchain = &toolchainLinuxBionic{}
 
 func linuxBionicToolchainFactory(arch android.Arch) Toolchain {
diff --git a/cc/config/x86_linux_host.go b/cc/config/x86_linux_host.go
index 653f819..354500e 100644
--- a/cc/config/x86_linux_host.go
+++ b/cc/config/x86_linux_host.go
@@ -270,14 +270,6 @@
 	return "${config.LinuxX8664YasmFlags}"
 }
 
-func (t *toolchainLinuxX86) profileRuntimeLibrary() string {
-	return "libclang_rt.profile-i386"
-}
-
-func (t *toolchainLinuxX8664) profileRuntimeLibrary() string {
-	return "libclang_rt.profile-x86_64"
-}
-
 func (t *toolchainLinux) AvailableLibraries() []string {
 	return linuxAvailableLibraries
 }
diff --git a/cc/coverage.go b/cc/coverage.go
index 671353c..391b118 100644
--- a/cc/coverage.go
+++ b/cc/coverage.go
@@ -16,7 +16,6 @@
 
 import (
 	"android/soong/android"
-	"android/soong/cc/config"
 )
 
 type CoverageProperties struct {
@@ -39,10 +38,6 @@
 func (cov *coverage) begin(ctx BaseModuleContext) {}
 
 func (cov *coverage) deps(ctx BaseModuleContext, deps Deps) Deps {
-	if cov.Properties.CoverageEnabled {
-		runtimeLibrary := config.ProfileRuntimeLibrary(ctx.toolchain())
-		deps.LateStaticLibs = append(deps.LateStaticLibs, runtimeLibrary)
-	}
 	return deps
 }
 
@@ -104,8 +99,9 @@
 
 		if !mctx.DeviceConfig().NativeCoverageEnabled() {
 			// Coverage is disabled globally
-		} else if mctx.Darwin() || mctx.Windows() {
-			// Coverage not supported for Darwin and Windows
+		} else if mctx.Host() {
+			// TODO(dwillemsen): because of -nodefaultlibs, we must depend on libclang_rt.profile-*.a
+			// Just turn off for now.
 		} else if c.coverage.Properties.Native_coverage != nil {
 			enabled = *c.coverage.Properties.Native_coverage
 		} else {