Make BottomUpMutators parallel

Append .Parallel() to all of the RegisterBottomUpMutator calls to tell
Blueprint it can run them in parallel.

Test: identical build.ninja, passes race detector
Change-Id: I969a0689522d4cba7c8ff51e2aa00fe2fd338a89
This commit is contained in:
Colin Cross
2016-08-07 21:17:54 -07:00
parent 1317701114
commit e8a67a7c58
7 changed files with 38 additions and 19 deletions

View File

@@ -25,10 +25,10 @@ import (
)
func init() {
RegisterBottomUpMutator("defaults_deps", defaultsDepsMutator)
RegisterBottomUpMutator("defaults_deps", defaultsDepsMutator).Parallel()
RegisterTopDownMutator("defaults", defaultsMutator)
RegisterBottomUpMutator("arch", ArchMutator)
RegisterBottomUpMutator("arch", ArchMutator).Parallel()
}
var (

View File

@@ -44,8 +44,8 @@ type androidBottomUpMutatorContext struct {
androidBaseContextImpl
}
func RegisterBottomUpMutator(name string, mutator AndroidBottomUpMutator) {
soong.RegisterBottomUpMutator(name, func(ctx blueprint.BottomUpMutatorContext) {
func RegisterBottomUpMutator(name string, mutator AndroidBottomUpMutator) soong.BottomUpMutatorHandle {
return soong.RegisterBottomUpMutator(name, func(ctx blueprint.BottomUpMutatorContext) {
if a, ok := ctx.Module().(Module); ok {
actx := &androidBottomUpMutatorContext{
BottomUpMutatorContext: ctx,

View File

@@ -24,7 +24,7 @@ import (
)
func init() {
RegisterBottomUpMutator("variable", variableMutator)
RegisterBottomUpMutator("variable", variableMutator).Parallel()
}
type variableProperties struct {