summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--artd/Android.bp2
-rw-r--r--build/Android.bp61
-rw-r--r--build/art.go20
-rw-r--r--build/codegen.go239
-rw-r--r--cmdline/Android.bp2
-rw-r--r--compiler/Android.bp250
-rw-r--r--dex2oat/Android.bp48
-rw-r--r--dexdump/Android.bp2
-rw-r--r--dexlayout/Android.bp2
-rw-r--r--dexlist/Android.bp2
-rw-r--r--dexoptanalyzer/Android.bp2
-rw-r--r--disassembler/Android.bp69
-rw-r--r--libartbase/Android.bp6
-rw-r--r--libartpalette/Android.bp2
-rw-r--r--libartservice/service/Android.bp2
-rw-r--r--libarttools/Android.bp2
-rw-r--r--libdexfile/Android.bp6
-rw-r--r--libelffile/Android.bp2
-rw-r--r--libprofile/Android.bp2
-rw-r--r--oatdump/Android.bp2
-rw-r--r--odrefresh/Android.bp2
-rw-r--r--profman/Android.bp2
-rw-r--r--runtime/Android.bp6
-rw-r--r--sigchainlib/Android.bp2
-rw-r--r--test/Android.bp34
-rw-r--r--tools/art_verifier/Android.bp2
26 files changed, 320 insertions, 451 deletions
diff --git a/artd/Android.bp b/artd/Android.bp
index af0430261d..8f82216e10 100644
--- a/artd/Android.bp
+++ b/artd/Android.bp
@@ -68,6 +68,8 @@ art_cc_defaults {
],
}
+// TODO(b/247785938) Change the above art_cc_defaults to a regular cc_defaults (currently kept due to a merge conflict)
+
// Version of ART gtest `art_artd_tests` bundled with the ART APEX on target.
//
// This test requires the full libbinder_ndk implementation on host, which is
diff --git a/build/Android.bp b/build/Android.bp
index 4569b5523f..a17bc42145 100644
--- a/build/Android.bp
+++ b/build/Android.bp
@@ -21,7 +21,6 @@ bootstrap_go_package {
],
srcs: [
"art.go",
- "codegen.go",
"makevars.go",
],
pluginFor: ["soong_build"],
@@ -174,13 +173,37 @@ art_module_art_global_defaults {
},
target: {
- android: {
+ // To use oprofile_android --callgraph, add these flags to the appropriate
+ // android_<arch> and recompile with
+ // mmma -j art
+ // "-fno-omit-frame-pointer",
+ // "-marm",
+ // "-mapcs",
+ android_arm: {
+ cflags: [
+ "-DART_ENABLE_CODEGEN_arm",
+ ],
+ },
+ android_arm64: {
+ cflags: [
+ "-DART_ENABLE_CODEGEN_arm",
+ "-DART_ENABLE_CODEGEN_arm64",
+ ],
+ },
+ android_riscv64: {
+ cflags: [
+ "-DART_ENABLE_CODEGEN_riscv64",
+ ],
+ },
+ android_x86: {
+ cflags: [
+ "-DART_ENABLE_CODEGEN_x86",
+ ],
+ },
+ android_x86_64: {
cflags: [
- // To use oprofile_android --callgraph, uncomment this and recompile with
- // mmma -j art
- // "-fno-omit-frame-pointer",
- // "-marm",
- // "-mapcs",
+ "-DART_ENABLE_CODEGEN_x86",
+ "-DART_ENABLE_CODEGEN_x86_64",
],
},
linux: {
@@ -216,6 +239,12 @@ art_module_art_global_defaults {
// Bug: 15446488. We don't omit the frame pointer to work around
// clang/libunwind bugs that cause SEGVs in run-test-004-ThreadStress.
"-fno-omit-frame-pointer",
+
+ "-DART_ENABLE_CODEGEN_arm",
+ "-DART_ENABLE_CODEGEN_arm64",
+ "-DART_ENABLE_CODEGEN_riscv64",
+ "-DART_ENABLE_CODEGEN_x86",
+ "-DART_ENABLE_CODEGEN_x86_64",
],
},
// The build assumes that all our x86/x86_64 hosts (such as buildbots and developer
@@ -239,24 +268,6 @@ art_module_art_global_defaults {
},
},
- codegen: {
- arm: {
- cflags: ["-DART_ENABLE_CODEGEN_arm"],
- },
- arm64: {
- cflags: ["-DART_ENABLE_CODEGEN_arm64"],
- },
- riscv64: {
- cflags: ["-DART_ENABLE_CODEGEN_riscv64"],
- },
- x86: {
- cflags: ["-DART_ENABLE_CODEGEN_x86"],
- },
- x86_64: {
- cflags: ["-DART_ENABLE_CODEGEN_x86_64"],
- },
- },
-
tidy_checks: art_clang_tidy_errors + art_clang_tidy_disabled,
tidy_checks_as_errors: art_clang_tidy_errors,
diff --git a/build/art.go b/build/art.go
index 0e5c055d26..b82e974bd8 100644
--- a/build/art.go
+++ b/build/art.go
@@ -377,7 +377,7 @@ func artHostTestApexBundleFactory() android.Module {
}
func artGlobalDefaultsFactory() android.Module {
- module := artDefaultsFactory()
+ module := cc.DefaultsFactory()
android.AddLoadHook(module, addImplicitFlags)
android.AddLoadHook(module, globalDefaults)
@@ -385,18 +385,11 @@ func artGlobalDefaultsFactory() android.Module {
}
func artDefaultsFactory() android.Module {
- c := &codegenProperties{}
- module := cc.DefaultsFactory(c)
- android.AddLoadHook(module, func(ctx android.LoadHookContext) { codegen(ctx, c, staticAndSharedLibrary) })
-
- return module
+ return cc.DefaultsFactory()
}
func artLibrary() android.Module {
module := cc.LibraryFactory()
-
- installCodegenCustomizer(module, staticAndSharedLibrary)
-
android.AddLoadHook(module, addImplicitFlags)
android.AddInstallHook(module, addTestcasesFile)
return module
@@ -404,9 +397,6 @@ func artLibrary() android.Module {
func artStaticLibrary() android.Module {
module := cc.LibraryStaticFactory()
-
- installCodegenCustomizer(module, staticLibrary)
-
android.AddLoadHook(module, addImplicitFlags)
return module
}
@@ -424,9 +414,6 @@ func artBinary() android.Module {
func artTest() android.Module {
// Disable bp2build.
module := cc.NewTest(android.HostAndDeviceSupported, false /* bazelable */).Init()
-
- installCodegenCustomizer(module, binary)
-
android.AddLoadHook(module, addImplicitFlags)
android.AddLoadHook(module, customLinker)
android.AddLoadHook(module, prefer32Bit)
@@ -436,9 +423,6 @@ func artTest() android.Module {
func artTestLibrary() android.Module {
module := cc.TestLibraryFactory()
-
- installCodegenCustomizer(module, staticAndSharedLibrary)
-
android.AddLoadHook(module, addImplicitFlags)
android.AddLoadHook(module, prefer32Bit)
android.AddInstallHook(module, testInstall)
diff --git a/build/codegen.go b/build/codegen.go
deleted file mode 100644
index 3cc51a8e1f..0000000000
--- a/build/codegen.go
+++ /dev/null
@@ -1,239 +0,0 @@
-// Copyright (C) 2016 The Android Open Source Project
-//
-// Licensed under the Apache License, Version 2.0 (the "License");
-// you may not use this file except in compliance with the License.
-// You may obtain a copy of the License at
-//
-// http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS,
-// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// See the License for the specific language governing permissions and
-// limitations under the License.
-
-package art
-
-// This file implements the "codegen" property to apply different properties based on the currently
-// selected codegen arches, which defaults to all arches on the host and the primary and secondary
-// arches on the device.
-
-import (
- "sort"
- "strings"
-
- "android/soong/android"
-)
-
-type moduleType struct {
- library bool
- static bool
- shared bool
-}
-
-var (
- staticLibrary = moduleType{true, true, false}
- sharedLibrary = moduleType{true, false, true}
- staticAndSharedLibrary = moduleType{true, true, true}
- binary = moduleType{false, false, false}
-)
-
-func codegen(ctx android.LoadHookContext, c *codegenProperties, t moduleType) {
- var hostArches, deviceArches []string
-
- e := ctx.Config().Getenv("ART_HOST_CODEGEN_ARCHS")
- if e == "" {
- hostArches = supportedArches
- } else {
- hostArches = strings.Split(e, " ")
- }
-
- e = ctx.Config().Getenv("ART_TARGET_CODEGEN_ARCHS")
- if e == "" {
- deviceArches = defaultDeviceCodegenArches(ctx)
- } else {
- deviceArches = strings.Split(e, " ")
- }
-
- getCodegenArchProperties := func(archName string) *codegenArchProperties {
- var arch *codegenArchProperties
- switch archName {
- case "arm":
- arch = &c.Codegen.Arm
- case "arm64":
- arch = &c.Codegen.Arm64
- case "riscv64":
- arch = &c.Codegen.Riscv64
- case "x86":
- arch = &c.Codegen.X86
- case "x86_64":
- arch = &c.Codegen.X86_64
- default:
- ctx.ModuleErrorf("Unknown codegen architecture %q", archName)
- }
- return arch
- }
-
- appendCodegenSourceArchProperties := func(p *CodegenSourceArchProperties, archName string) {
- arch := getCodegenArchProperties(archName)
- p.Srcs = append(p.Srcs, arch.CodegenSourceArchProperties.Srcs...)
- }
-
- addCodegenSourceArchProperties := func(host bool, p *CodegenSourceArchProperties) {
- type sourceProps struct {
- Target struct {
- Android *CodegenSourceArchProperties
- Host *CodegenSourceArchProperties
- }
- }
-
- sp := &sourceProps{}
- if host {
- sp.Target.Host = p
- } else {
- sp.Target.Android = p
- }
- ctx.AppendProperties(sp)
- }
-
- addCodegenArchProperties := func(host bool, archName string) {
- type commonProps struct {
- Target struct {
- Android *CodegenCommonArchProperties
- Host *CodegenCommonArchProperties
- }
- }
-
- type libraryProps struct {
- Target struct {
- Android *CodegenLibraryArchProperties
- Host *CodegenLibraryArchProperties
- }
- }
-
- type sharedLibraryProps struct {
- Target struct {
- Android *CodegenLibraryArchSharedProperties
- Host *CodegenLibraryArchSharedProperties
- }
- }
-
- type staticLibraryProps struct {
- Target struct {
- Android *CodegenLibraryArchStaticProperties
- Host *CodegenLibraryArchStaticProperties
- }
- }
-
- arch := getCodegenArchProperties(archName)
-
- cp := &commonProps{}
- lp := &libraryProps{}
- sharedLP := &sharedLibraryProps{}
- staticLP := &staticLibraryProps{}
- if host {
- cp.Target.Host = &arch.CodegenCommonArchProperties
- lp.Target.Host = &arch.CodegenLibraryArchProperties
- sharedLP.Target.Host = &arch.CodegenLibraryArchSharedProperties
- staticLP.Target.Host = &arch.CodegenLibraryArchStaticProperties
- } else {
- cp.Target.Android = &arch.CodegenCommonArchProperties
- lp.Target.Android = &arch.CodegenLibraryArchProperties
- sharedLP.Target.Android = &arch.CodegenLibraryArchSharedProperties
- staticLP.Target.Android = &arch.CodegenLibraryArchStaticProperties
- }
-
- ctx.AppendProperties(cp)
- if t.library {
- ctx.AppendProperties(lp)
- if t.static {
- ctx.AppendProperties(staticLP)
- }
- if t.shared {
- ctx.AppendProperties(sharedLP)
- }
- }
- }
-
- addCodegenProperties := func(host bool, arches []string) {
- sourceProps := &CodegenSourceArchProperties{}
- for _, arch := range arches {
- appendCodegenSourceArchProperties(sourceProps, arch)
- addCodegenArchProperties(host, arch)
- }
- sourceProps.Srcs = android.FirstUniqueStrings(sourceProps.Srcs)
- addCodegenSourceArchProperties(host, sourceProps)
- }
-
- addCodegenProperties(false /* host */, deviceArches)
- addCodegenProperties(true /* host */, hostArches)
-}
-
-// These properties are allowed to contain the same source file name in different architectures.
-// They we will be deduplicated automatically.
-type CodegenSourceArchProperties struct {
- Srcs []string
-}
-
-type CodegenCommonArchProperties struct {
- Cflags []string
- Cppflags []string
-}
-
-type CodegenLibraryArchProperties struct {
- Static_libs []string
- Export_static_lib_headers []string
-}
-
-type CodegenLibraryArchStaticProperties struct {
- Static struct {
- Whole_static_libs []string
- }
-}
-type CodegenLibraryArchSharedProperties struct {
- Shared struct {
- Shared_libs []string
- Export_shared_lib_headers []string
- }
-}
-
-type codegenArchProperties struct {
- CodegenSourceArchProperties
- CodegenCommonArchProperties
- CodegenLibraryArchProperties
- CodegenLibraryArchStaticProperties
- CodegenLibraryArchSharedProperties
-}
-
-type codegenProperties struct {
- Codegen struct {
- Arm, Arm64, Riscv64, X86, X86_64 codegenArchProperties
- }
-}
-
-func defaultDeviceCodegenArches(ctx android.LoadHookContext) []string {
- arches := make(map[string]bool)
- for _, a := range ctx.DeviceConfig().Arches() {
- s := a.ArchType.String()
- arches[s] = true
- if s == "arm64" {
- arches["arm"] = true
- } else if s == "riscv64" {
- arches["riscv64"] = true
- } else if s == "x86_64" {
- arches["x86"] = true
- }
- }
- ret := make([]string, 0, len(arches))
- for a := range arches {
- ret = append(ret, a)
- }
- sort.Strings(ret)
- return ret
-}
-
-func installCodegenCustomizer(module android.Module, t moduleType) {
- c := &codegenProperties{}
- android.AddLoadHook(module, func(ctx android.LoadHookContext) { codegen(ctx, c, t) })
- module.AddProperties(c)
-}
diff --git a/cmdline/Android.bp b/cmdline/Android.bp
index 91c8ccd8d1..46ab8a61fc 100644
--- a/cmdline/Android.bp
+++ b/cmdline/Android.bp
@@ -36,7 +36,7 @@ cc_library_headers {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_cmdline_tests_defaults",
tidy_timeout_srcs: ["cmdline_parser_test.cc"],
srcs: ["cmdline_parser_test.cc"],
diff --git a/compiler/Android.bp b/compiler/Android.bp
index ea45897a92..e1300ac612 100644
--- a/compiler/Android.bp
+++ b/compiler/Android.bp
@@ -28,7 +28,66 @@ package {
default_applicable_licenses: ["art_license"],
}
-art_cc_defaults {
+libart_compiler_codegen_arm = [
+ "jni/quick/arm/calling_convention_arm.cc",
+ "optimizing/code_generator_arm_vixl.cc",
+ "optimizing/code_generator_vector_arm_vixl.cc",
+ "optimizing/critical_native_abi_fixup_arm.cc",
+ "optimizing/instruction_simplifier_arm.cc",
+ "optimizing/instruction_simplifier_shared.cc",
+ "optimizing/intrinsics_arm_vixl.cc",
+ "optimizing/nodes_shared.cc",
+ "optimizing/scheduler_arm.cc",
+ "utils/arm/assembler_arm_vixl.cc",
+ "utils/arm/constants_arm.cc",
+ "utils/arm/jni_macro_assembler_arm_vixl.cc",
+ "utils/arm/managed_register_arm.cc",
+]
+
+libart_compiler_codegen_arm64 = [
+ "jni/quick/arm64/calling_convention_arm64.cc",
+ "optimizing/code_generator_arm64.cc",
+ "optimizing/code_generator_vector_arm64_neon.cc",
+ "optimizing/code_generator_vector_arm64_sve.cc",
+ "optimizing/scheduler_arm64.cc",
+ "optimizing/instruction_simplifier_arm64.cc",
+ "optimizing/intrinsics_arm64.cc",
+ "utils/arm64/assembler_arm64.cc",
+ "utils/arm64/jni_macro_assembler_arm64.cc",
+ "utils/arm64/managed_register_arm64.cc",
+]
+
+libart_compiler_codegen_riscv64 = [
+ "utils/riscv64/assembler_riscv64.cc",
+ "utils/riscv64/managed_register_riscv64.cc",
+]
+
+libart_compiler_codegen_x86 = [
+ "jni/quick/x86/calling_convention_x86.cc",
+ "optimizing/code_generator_x86.cc",
+ "optimizing/code_generator_vector_x86.cc",
+ "optimizing/intrinsics_x86.cc",
+ "optimizing/instruction_simplifier_x86_shared.cc",
+ "optimizing/instruction_simplifier_x86.cc",
+ "optimizing/pc_relative_fixups_x86.cc",
+ "optimizing/x86_memory_gen.cc",
+ "utils/x86/assembler_x86.cc",
+ "utils/x86/jni_macro_assembler_x86.cc",
+ "utils/x86/managed_register_x86.cc",
+]
+
+libart_compiler_codegen_x86_64 = [
+ "jni/quick/x86_64/calling_convention_x86_64.cc",
+ "optimizing/intrinsics_x86_64.cc",
+ "optimizing/instruction_simplifier_x86_64.cc",
+ "optimizing/code_generator_x86_64.cc",
+ "optimizing/code_generator_vector_x86_64.cc",
+ "utils/x86_64/assembler_x86_64.cc",
+ "utils/x86_64/jni_macro_assembler_x86_64.cc",
+ "utils/x86_64/managed_register_x86_64.cc",
+]
+
+cc_defaults {
name: "libart-compiler-defaults",
defaults: ["art_defaults"],
host_supported: true,
@@ -98,70 +157,28 @@ art_cc_defaults {
"compiler.cc",
],
- codegen: {
- arm: {
- srcs: [
- "jni/quick/arm/calling_convention_arm.cc",
- "optimizing/code_generator_arm_vixl.cc",
- "optimizing/code_generator_vector_arm_vixl.cc",
- "optimizing/critical_native_abi_fixup_arm.cc",
- "optimizing/instruction_simplifier_arm.cc",
- "optimizing/instruction_simplifier_shared.cc",
- "optimizing/intrinsics_arm_vixl.cc",
- "optimizing/nodes_shared.cc",
- "optimizing/scheduler_arm.cc",
- "utils/arm/assembler_arm_vixl.cc",
- "utils/arm/constants_arm.cc",
- "utils/arm/jni_macro_assembler_arm_vixl.cc",
- "utils/arm/managed_register_arm.cc",
- ],
+ target: {
+ host: {
+ srcs: libart_compiler_codegen_arm +
+ libart_compiler_codegen_arm64 +
+ libart_compiler_codegen_riscv64 +
+ libart_compiler_codegen_x86 +
+ libart_compiler_codegen_x86_64,
},
- arm64: {
- srcs: [
- "jni/quick/arm64/calling_convention_arm64.cc",
- "optimizing/code_generator_arm64.cc",
- "optimizing/code_generator_vector_arm64_neon.cc",
- "optimizing/code_generator_vector_arm64_sve.cc",
- "optimizing/scheduler_arm64.cc",
- "optimizing/instruction_simplifier_arm64.cc",
- "optimizing/intrinsics_arm64.cc",
- "utils/arm64/assembler_arm64.cc",
- "utils/arm64/jni_macro_assembler_arm64.cc",
- "utils/arm64/managed_register_arm64.cc",
- ],
+ android_arm: {
+ srcs: libart_compiler_codegen_arm,
},
- riscv64: {
- srcs: [
- "utils/riscv64/assembler_riscv64.cc",
- "utils/riscv64/managed_register_riscv64.cc",
- ],
+ android_arm64: {
+ srcs: libart_compiler_codegen_arm + libart_compiler_codegen_arm64,
},
- x86: {
- srcs: [
- "jni/quick/x86/calling_convention_x86.cc",
- "optimizing/code_generator_x86.cc",
- "optimizing/code_generator_vector_x86.cc",
- "optimizing/intrinsics_x86.cc",
- "optimizing/instruction_simplifier_x86_shared.cc",
- "optimizing/instruction_simplifier_x86.cc",
- "optimizing/pc_relative_fixups_x86.cc",
- "optimizing/x86_memory_gen.cc",
- "utils/x86/assembler_x86.cc",
- "utils/x86/jni_macro_assembler_x86.cc",
- "utils/x86/managed_register_x86.cc",
- ],
+ android_riscv64: {
+ srcs: libart_compiler_codegen_riscv64,
},
- x86_64: {
- srcs: [
- "jni/quick/x86_64/calling_convention_x86_64.cc",
- "optimizing/intrinsics_x86_64.cc",
- "optimizing/instruction_simplifier_x86_64.cc",
- "optimizing/code_generator_x86_64.cc",
- "optimizing/code_generator_vector_x86_64.cc",
- "utils/x86_64/assembler_x86_64.cc",
- "utils/x86_64/jni_macro_assembler_x86_64.cc",
- "utils/x86_64/managed_register_x86_64.cc",
- ],
+ android_x86: {
+ srcs: libart_compiler_codegen_x86,
+ },
+ android_x86_64: {
+ srcs: libart_compiler_codegen_x86 + libart_compiler_codegen_x86_64,
},
},
static: {
@@ -212,14 +229,25 @@ art_cc_library {
"dex2oat-pgo-defaults",
"art_hugepage_defaults",
],
- codegen: {
- arm: {
+ target: {
+ host: {
// VIXL assembly support for ARM targets.
static_libs: [
"libvixl",
],
},
- arm64: {
+ android: {
+ lto: {
+ thin: true,
+ },
+ },
+ android_arm: {
+ // VIXL assembly support for ARM targets.
+ static_libs: [
+ "libvixl",
+ ],
+ },
+ android_arm64: {
// VIXL assembly support for ARM64 targets.
static_libs: [
"libvixl",
@@ -240,13 +268,6 @@ art_cc_library {
"libart-disassembler",
],
- target: {
- android: {
- lto: {
- thin: true,
- },
- },
- },
apex_available: [
"com.android.art",
"com.android.art.debug",
@@ -273,8 +294,18 @@ art_cc_library {
"art_debug_defaults",
"libart-compiler-defaults",
],
- codegen: {
- arm: {
+ target: {
+ host: {
+ // VIXL assembly support for ARM targets.
+ static_libs: [
+ "libvixld",
+ ],
+ // Export vixl headers as they are included in this library's headers used by tests.
+ export_static_lib_headers: [
+ "libvixld",
+ ],
+ },
+ android_arm: {
// VIXL assembly support for ARM targets.
static_libs: [
"libvixld",
@@ -284,7 +315,7 @@ art_cc_library {
"libvixld",
],
},
- arm64: {
+ android_arm64: {
// VIXL assembly support for ARM64 targets.
static_libs: [
"libvixld",
@@ -332,7 +363,7 @@ cc_defaults {
}
// Properties common to `libart-compiler-gtest` and `libartd-compiler-gtest`.
-art_cc_defaults {
+cc_defaults {
name: "libart-compiler-gtest-common",
srcs: [
"common_compiler_test.cc",
@@ -370,7 +401,7 @@ art_cc_library {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_compiler_tests_defaults",
data: [
":art-gtest-jars-ExceptionHandle",
@@ -437,23 +468,40 @@ art_cc_defaults {
"optimizing/scheduler_test.cc",
],
- codegen: {
- arm: {
+ target: {
+ host: {
+ srcs: [
+ "utils/arm/managed_register_arm_test.cc",
+ "utils/arm64/managed_register_arm64_test.cc",
+ "utils/riscv64/managed_register_riscv64_test.cc",
+ "utils/x86/managed_register_x86_test.cc",
+ // This test is testing architecture-independent functionality,
+ // but happens to use x86 codegen as part of the test.
+ "optimizing/register_allocator_test.cc",
+ // Is this test a bit-rotten copy of the x86 test? b/77951326
+ // "utils/x86_64/managed_register_x86_64_test.cc",
+ ],
+ shared_libs: [
+ "libartd-simulator",
+ ],
+ },
+ android_arm: {
srcs: [
"utils/arm/managed_register_arm_test.cc",
],
},
- arm64: {
+ android_arm64: {
srcs: [
+ "utils/arm/managed_register_arm_test.cc",
"utils/arm64/managed_register_arm64_test.cc",
],
},
- riscv64: {
+ android_riscv64: {
srcs: [
"utils/riscv64/managed_register_riscv64_test.cc",
],
},
- x86: {
+ android_x86: {
srcs: [
"utils/x86/managed_register_x86_test.cc",
@@ -462,8 +510,14 @@ art_cc_defaults {
"optimizing/register_allocator_test.cc",
],
},
- x86_64: {
+ android_x86_64: {
srcs: [
+ "utils/x86/managed_register_x86_test.cc",
+
+ // This test is testing architecture-independent functionality,
+ // but happens to use x86 codegen as part of the test.
+ "optimizing/register_allocator_test.cc",
+
// Is this test a bit-rotten copy of the x86 test? b/77951326
// "utils/x86_64/managed_register_x86_64_test.cc",
],
@@ -479,14 +533,6 @@ art_cc_defaults {
"libnativeloader",
"libunwindstack",
],
-
- target: {
- host: {
- shared_libs: [
- "libartd-simulator",
- ],
- },
- },
}
// Version of ART gtest `art_compiler_tests` bundled with the ART APEX on target.
@@ -546,24 +592,38 @@ art_cc_test {
"utils/x86/assembler_x86_test.cc",
"utils/x86_64/assembler_x86_64_test.cc",
],
- codegen: {
- arm: {
+ target: {
+ host: {
+ srcs: [
+ "utils/assembler_thumb_test.cc",
+ "utils/riscv64/assembler_riscv64_test.cc",
+ "utils/x86/assembler_x86_test.cc",
+ "utils/x86_64/assembler_x86_64_test.cc",
+ ],
+ },
+ android_arm: {
+ srcs: [
+ "utils/assembler_thumb_test.cc",
+ ],
+ },
+ android_arm64: {
srcs: [
"utils/assembler_thumb_test.cc",
],
},
- riscv64 : {
+ android_riscv64: {
srcs: [
"utils/riscv64/assembler_riscv64_test.cc",
],
},
- x86: {
+ android_x86: {
srcs: [
"utils/x86/assembler_x86_test.cc",
],
},
- x86_64: {
+ android_x86_64: {
srcs: [
+ "utils/x86/assembler_x86_test.cc",
"utils/x86_64/assembler_x86_64_test.cc",
],
},
diff --git a/dex2oat/Android.bp b/dex2oat/Android.bp
index 7341774889..9589b5d86b 100644
--- a/dex2oat/Android.bp
+++ b/dex2oat/Android.bp
@@ -23,7 +23,7 @@ package {
default_applicable_licenses: ["art_license"],
}
-art_cc_defaults {
+cc_defaults {
name: "libart-dex2oat-defaults",
defaults: ["art_defaults"],
host_supported: true,
@@ -43,26 +43,40 @@ art_cc_defaults {
"utils/swap_space.cc",
],
- codegen: {
- arm: {
+ target: {
+ host: {
+ srcs: [
+ "linker/arm/relative_patcher_arm_base.cc",
+ "linker/arm/relative_patcher_thumb2.cc",
+ "linker/arm64/relative_patcher_arm64.cc",
+ "linker/x86/relative_patcher_x86.cc",
+ "linker/x86/relative_patcher_x86_base.cc",
+ "linker/x86_64/relative_patcher_x86_64.cc",
+ ],
+ },
+ android_arm: {
srcs: [
"linker/arm/relative_patcher_arm_base.cc",
"linker/arm/relative_patcher_thumb2.cc",
],
},
- arm64: {
+ android_arm64: {
srcs: [
+ "linker/arm/relative_patcher_arm_base.cc",
+ "linker/arm/relative_patcher_thumb2.cc",
"linker/arm64/relative_patcher_arm64.cc",
],
},
- x86: {
+ android_x86: {
srcs: [
"linker/x86/relative_patcher_x86.cc",
"linker/x86/relative_patcher_x86_base.cc",
],
},
- x86_64: {
+ android_x86_64: {
srcs: [
+ "linker/x86/relative_patcher_x86.cc",
+ "linker/x86/relative_patcher_x86_base.cc",
"linker/x86_64/relative_patcher_x86_64.cc",
],
},
@@ -474,7 +488,7 @@ art_cc_library_static {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_dex2oat_tests_defaults",
data: [
":art-gtest-jars-AbstractMethod",
@@ -527,30 +541,36 @@ art_cc_defaults {
"verifier_deps_test.cc",
"utils/swap_space_test.cc",
],
+
target: {
host: {
+ srcs: [
+ "linker/arm/relative_patcher_thumb2_test.cc",
+ "linker/arm64/relative_patcher_arm64_test.cc",
+ "linker/x86/relative_patcher_x86_test.cc",
+ "linker/x86_64/relative_patcher_x86_64_test.cc",
+ ],
required: ["dex2oatd"],
},
- },
-
- codegen: {
- arm: {
+ android_arm: {
srcs: [
"linker/arm/relative_patcher_thumb2_test.cc",
],
},
- arm64: {
+ android_arm64: {
srcs: [
+ "linker/arm/relative_patcher_thumb2_test.cc",
"linker/arm64/relative_patcher_arm64_test.cc",
],
},
- x86: {
+ android_x86: {
srcs: [
"linker/x86/relative_patcher_x86_test.cc",
],
},
- x86_64: {
+ android_x86_64: {
srcs: [
+ "linker/x86/relative_patcher_x86_test.cc",
"linker/x86_64/relative_patcher_x86_64_test.cc",
],
},
diff --git a/dexdump/Android.bp b/dexdump/Android.bp
index da43fbe4f1..c5c9eca2b7 100644
--- a/dexdump/Android.bp
+++ b/dexdump/Android.bp
@@ -73,7 +73,7 @@ art_cc_binary {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_dexdump_tests_defaults",
srcs: ["dexdump_test.cc"],
target: {
diff --git a/dexlayout/Android.bp b/dexlayout/Android.bp
index ec7fdf6c79..d3faf05731 100644
--- a/dexlayout/Android.bp
+++ b/dexlayout/Android.bp
@@ -21,7 +21,7 @@ package {
default_applicable_licenses: ["art_license"],
}
-art_cc_defaults {
+cc_defaults {
name: "libart-dexlayout-defaults",
defaults: ["art_defaults"],
host_supported: true,
diff --git a/dexlist/Android.bp b/dexlist/Android.bp
index 918fc68c01..1a1330f204 100644
--- a/dexlist/Android.bp
+++ b/dexlist/Android.bp
@@ -58,7 +58,7 @@ art_cc_binary {
},
}
-art_cc_defaults {
+cc_defaults {
name: "art_dexlist_tests_defaults",
srcs: ["dexlist_test.cc"],
target: {
diff --git a/dexoptanalyzer/Android.bp b/dexoptanalyzer/Android.bp
index 82f0c1a70f..4743b8f3c6 100644
--- a/dexoptanalyzer/Android.bp
+++ b/dexoptanalyzer/Android.bp
@@ -81,7 +81,7 @@ art_cc_binary {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_dexoptanalyzer_tests_defaults",
static_libs: [
"libziparchive",
diff --git a/disassembler/Android.bp b/disassembler/Android.bp
index b7f758ffdc..c16ee39799 100644
--- a/disassembler/Android.bp
+++ b/disassembler/Android.bp
@@ -23,25 +23,41 @@ package {
default_applicable_licenses: ["art_license"],
}
-art_cc_defaults {
+cc_defaults {
name: "libart-disassembler-defaults",
defaults: ["art_defaults"],
host_supported: true,
srcs: [
"disassembler.cc",
],
- codegen: {
- arm: {
- srcs: ["disassembler_arm.cc"],
+ target: {
+ host: {
+ srcs: [
+ "disassembler_arm.cc",
+ "disassembler_arm64.cc",
+ "disassembler_x86.cc",
+ ],
},
- arm64: {
- srcs: ["disassembler_arm64.cc"],
+ android_arm: {
+ srcs: [
+ "disassembler_arm.cc",
+ ],
+ },
+ android_arm64: {
+ srcs: [
+ "disassembler_arm.cc",
+ "disassembler_arm64.cc",
+ ],
},
- x86: {
- srcs: ["disassembler_x86.cc"],
+ android_x86: {
+ srcs: [
+ "disassembler_x86.cc",
+ ],
},
- x86_64: {
- srcs: ["disassembler_x86.cc"],
+ android_x86_64: {
+ srcs: [
+ "disassembler_x86.cc",
+ ],
},
},
shared_libs: [
@@ -56,14 +72,20 @@ art_cc_defaults {
art_cc_library {
name: "libart-disassembler",
defaults: ["libart-disassembler-defaults"],
- codegen: {
- arm: {
+ target: {
+ host: {
+ static_libs: [
+ // For disassembler_arm*.
+ "libvixl",
+ ],
+ },
+ android_arm: {
static_libs: [
// For disassembler_arm*.
"libvixl",
],
},
- arm64: {
+ android_arm64: {
static_libs: [
// For disassembler_arm*.
"libvixl",
@@ -90,14 +112,20 @@ art_cc_library {
"art_debug_defaults",
"libart-disassembler-defaults",
],
- codegen: {
- arm: {
+ target: {
+ host: {
+ static_libs: [
+ // For disassembler_arm*.
+ "libvixld",
+ ],
+ },
+ android_arm: {
static_libs: [
// For disassembler_arm*.
"libvixld",
],
},
- arm64: {
+ android_arm64: {
static_libs: [
// For disassembler_arm*.
"libvixld",
@@ -132,10 +160,13 @@ cc_library_headers {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_disassembler_tests_defaults",
- codegen: {
- arm64: {
+ target: {
+ host: {
+ srcs: ["disassembler_arm64_test.cc"],
+ },
+ android_arm64: {
srcs: ["disassembler_arm64_test.cc"],
},
},
diff --git a/libartbase/Android.bp b/libartbase/Android.bp
index 84b797b32a..44d6451944 100644
--- a/libartbase/Android.bp
+++ b/libartbase/Android.bp
@@ -248,7 +248,7 @@ art_cc_library {
},
}
-art_cc_defaults {
+cc_defaults {
name: "libartbase-art-gtest-defaults",
srcs: [
"base/common_art_test.cc",
@@ -300,7 +300,7 @@ art_cc_library {
],
}
-art_cc_defaults {
+cc_defaults {
name: "libartbase-testing-defaults",
defaults: [
"art_defaults",
@@ -341,7 +341,7 @@ art_cc_library {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_libartbase_tests_defaults",
tidy_timeout_srcs: [
"base/bit_utils_test.cc",
diff --git a/libartpalette/Android.bp b/libartpalette/Android.bp
index 9ac9091fae..57b5154782 100644
--- a/libartpalette/Android.bp
+++ b/libartpalette/Android.bp
@@ -108,7 +108,7 @@ art_cc_library {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_libartpalette_tests_defaults",
srcs: ["apex/palette_test.cc"],
shared_libs: [
diff --git a/libartservice/service/Android.bp b/libartservice/service/Android.bp
index 97f928eec3..dbf0b153d6 100644
--- a/libartservice/service/Android.bp
+++ b/libartservice/service/Android.bp
@@ -86,7 +86,7 @@ java_sdk_library {
jarjar_rules: "jarjar-rules.txt",
}
-art_cc_defaults {
+cc_defaults {
name: "art_libartservice_tests_defaults",
defaults: ["libartservice_defaults"],
srcs: [
diff --git a/libarttools/Android.bp b/libarttools/Android.bp
index 087d928821..ce0bb2b2b1 100644
--- a/libarttools/Android.bp
+++ b/libarttools/Android.bp
@@ -53,7 +53,7 @@ cc_library {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_libarttools_tests_defaults",
defaults: ["libarttools_defaults"],
srcs: [
diff --git a/libdexfile/Android.bp b/libdexfile/Android.bp
index 79dd10c2da..3caf61cd51 100644
--- a/libdexfile/Android.bp
+++ b/libdexfile/Android.bp
@@ -267,7 +267,7 @@ art_cc_library {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_libdexfile_tests_defaults",
tidy_timeout_srcs: [
"dex/dex_file_verifier_test.cc",
@@ -367,7 +367,7 @@ cc_library_headers {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_libdexfile_external_tests_defaults",
defaults: [
"art_module_source_build_defaults",
@@ -451,7 +451,7 @@ art_cc_library_static {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_libdexfile_support_tests_defaults",
defaults: [
"art_module_source_build_defaults",
diff --git a/libelffile/Android.bp b/libelffile/Android.bp
index 82810684c8..9b7ebf3af7 100644
--- a/libelffile/Android.bp
+++ b/libelffile/Android.bp
@@ -23,7 +23,7 @@ package {
default_applicable_licenses: ["art_license"],
}
-art_cc_defaults {
+cc_defaults {
name: "libelffile-defaults",
defaults: ["art_defaults"],
host_supported: true,
diff --git a/libprofile/Android.bp b/libprofile/Android.bp
index beae8a9863..5d52d6bc0f 100644
--- a/libprofile/Android.bp
+++ b/libprofile/Android.bp
@@ -177,7 +177,7 @@ art_cc_library {
// For now many of these tests still use CommonRuntimeTest, almost universally because of
// ScratchFile and related.
// TODO: Remove CommonRuntimeTest dependency from these tests.
-art_cc_defaults {
+cc_defaults {
name: "art_libprofile_tests_defaults",
data: [
":art-gtest-jars-ManyMethods",
diff --git a/oatdump/Android.bp b/oatdump/Android.bp
index dacd647e56..16b386d6de 100644
--- a/oatdump/Android.bp
+++ b/oatdump/Android.bp
@@ -202,7 +202,7 @@ art_cc_binary {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_oatdump_tests_defaults",
data: [
":art-gtest-jars-ProfileTestMultiDex",
diff --git a/odrefresh/Android.bp b/odrefresh/Android.bp
index 809e18d2bb..62bb1e7344 100644
--- a/odrefresh/Android.bp
+++ b/odrefresh/Android.bp
@@ -180,7 +180,7 @@ cc_library_static {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_odrefresh_tests_defaults",
defaults: ["odrefresh-defaults"],
header_libs: ["odrefresh_headers"],
diff --git a/profman/Android.bp b/profman/Android.bp
index ac80641fae..184f5516df 100644
--- a/profman/Android.bp
+++ b/profman/Android.bp
@@ -181,7 +181,7 @@ cc_library_headers {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_profman_tests_defaults",
data: [
":art-gtest-jars-ProfileTestMultiDex",
diff --git a/runtime/Android.bp b/runtime/Android.bp
index 1d42ccdd1e..a3609f0cee 100644
--- a/runtime/Android.bp
+++ b/runtime/Android.bp
@@ -633,7 +633,7 @@ gensrcs {
// they are used to cross compile for the target.
// Properties common to `libart` and `libart-broken`.
-art_cc_defaults {
+cc_defaults {
name: "libart_common_defaults",
defaults: [
"libart_defaults",
@@ -726,7 +726,7 @@ art_cc_library {
],
}
-art_cc_defaults {
+cc_defaults {
name: "libart-runtime-gtest-defaults",
target: {
host: {
@@ -780,7 +780,7 @@ art_cc_library {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_runtime_tests_defaults",
target: {
host: {
diff --git a/sigchainlib/Android.bp b/sigchainlib/Android.bp
index 68dec35d1e..bf6028e4f1 100644
--- a/sigchainlib/Android.bp
+++ b/sigchainlib/Android.bp
@@ -87,7 +87,7 @@ cc_library_static {
export_include_dirs: ["."],
}
-art_cc_defaults {
+cc_defaults {
name: "art_sigchain_tests_defaults",
srcs: ["sigchain_test.cc"],
shared_libs: ["libsigchain"],
diff --git a/test/Android.bp b/test/Android.bp
index 6bc59904d0..7df766a006 100644
--- a/test/Android.bp
+++ b/test/Android.bp
@@ -118,7 +118,7 @@ art_module_cc_defaults {
//
// Currently this only works for run tests where run-test-jar sets
// LD_LIBRARY_PATH and NATIVELOADER_DEFAULT_NAMESPACE_LIBS.
-art_cc_defaults {
+cc_defaults {
name: "art_test_internal_library_defaults",
defaults: ["art_test_defaults"],
target: {
@@ -167,7 +167,7 @@ filegroup {
srcs: ["art-gtests-target-standalone-with-boot-image-template.xml"],
}
-art_cc_defaults {
+cc_defaults {
name: "art_standalone_test_defaults",
defaults: [
"art_test_common_defaults",
@@ -198,7 +198,7 @@ art_cc_defaults {
}
// Properties common to `art_gtest_defaults` and `art_standalone_gtest_defaults`.
-art_cc_defaults {
+cc_defaults {
name: "art_gtest_common_defaults",
// These really are gtests, but the gtest library comes from `libart(d)-gtest.so`.
gtest: false,
@@ -238,7 +238,7 @@ art_cc_defaults {
},
}
-art_cc_defaults {
+cc_defaults {
name: "art_gtest_defaults",
defaults: [
"art_test_defaults",
@@ -275,7 +275,7 @@ art_cc_defaults {
],
}
-art_cc_defaults {
+cc_defaults {
name: "art_standalone_gtest_defaults",
defaults: [
// Note: We don't include "art_debug_defaults" here, as standalone ART
@@ -344,7 +344,7 @@ art_cc_defaults {
}
// Properties common to `libart-gtest-defaults` and `libartd-gtest-defaults`.
-art_cc_defaults {
+cc_defaults {
name: "libart-gtest-common-defaults",
defaults: [
"art_defaults",
@@ -391,7 +391,7 @@ art_cc_defaults {
],
}
-art_cc_defaults {
+cc_defaults {
name: "libart-gtest-defaults",
defaults: [
"libart-gtest-common-defaults",
@@ -405,7 +405,7 @@ art_cc_defaults {
],
}
-art_cc_defaults {
+cc_defaults {
name: "libartd-gtest-defaults",
defaults: [
"art_debug_defaults",
@@ -421,7 +421,7 @@ art_cc_defaults {
}
// Properties common to `libart-gtest` and `libartd-gtest`.
-art_cc_defaults {
+cc_defaults {
name: "libart-gtest-common",
defaults: [
"art_defaults",
@@ -593,7 +593,7 @@ art_cc_test_library {
],
}
-art_cc_defaults {
+cc_defaults {
name: "libnativebridgetest-defaults",
defaults: ["art_test_defaults"],
header_libs: ["libnativebridge-headers"],
@@ -656,7 +656,7 @@ art_cc_test_library {
],
}
-art_cc_defaults {
+cc_defaults {
name: "libtiagent-base-defaults",
defaults: ["art_test_internal_library_defaults"],
srcs: [
@@ -752,7 +752,7 @@ art_cc_defaults {
"2005-pause-all-redefine-multithreaded/pause-all.cc",
"2009-structural-local-ref/local-ref.cc",
"2035-structural-native-method/structural-native.cc",
- "2243-single-step-default/single_step_helper.cc"
+ "2243-single-step-default/single_step_helper.cc",
],
// Use NDK-compatible headers for ctstiagent.
header_libs: [
@@ -761,7 +761,7 @@ art_cc_defaults {
local_include_dirs: ["ti-agent"],
}
-art_cc_defaults {
+cc_defaults {
name: "libtiagent-defaults",
defaults: [
"libtiagent-base-defaults",
@@ -854,7 +854,7 @@ cc_library_static {
export_include_dirs: ["ti-agent"],
}
-art_cc_defaults {
+cc_defaults {
name: "libtistress-srcs",
defaults: ["libartagent-defaults"],
srcs: [
@@ -863,7 +863,7 @@ art_cc_defaults {
header_libs: ["libopenjdkjvmti_headers"],
}
-art_cc_defaults {
+cc_defaults {
name: "libtistress-defaults",
defaults: ["libtistress-srcs"],
shared_libs: [
@@ -893,7 +893,7 @@ art_cc_test_library {
],
}
-art_cc_defaults {
+cc_defaults {
name: "libtistress-shared-defaults",
defaults: [
"libtistress-srcs",
@@ -990,7 +990,7 @@ cc_defaults {
"2037-thread-name-inherit/thread_name_inherit.cc",
"2040-huge-native-alloc/huge_native_buf.cc",
"2235-JdkUnsafeTest/unsafe_test.cc",
- "2262-miranda-methods/jni_invoke.cc",
+ "2262-miranda-methods/jni_invoke.cc",
"common/runtime_state.cc",
"common/stack_inspect.cc",
],
diff --git a/tools/art_verifier/Android.bp b/tools/art_verifier/Android.bp
index 5d19215f8a..07382b9cb0 100644
--- a/tools/art_verifier/Android.bp
+++ b/tools/art_verifier/Android.bp
@@ -23,7 +23,7 @@ package {
default_applicable_licenses: ["art_license"],
}
-art_cc_defaults {
+cc_defaults {
name: "art_verifier-defaults",
defaults: [
"art_defaults",