aboutsummaryrefslogtreecommitdiff
path: root/Android.bp
diff options
context:
space:
mode:
authorRoland Levillain <rpl@google.com>2018-10-31 19:51:43 +0000
committerRoland Levillain <rpl@google.com>2018-11-06 15:53:34 +0000
commit9c53ca68acc7bbf3b1f5c37622eb461ce2dd91fe (patch)
tree449e3bba2104428576649e61d42c226c28952485 /Android.bp
parent304c6da539597333a763376096531be7fe1fbcf4 (diff)
downloadvixl-9c53ca68acc7bbf3b1f5c37622eb461ce2dd91fe.tar.gz
Instead of building libvixl(d)-arm and libvixl(d)-arm64, build a single libvixl(d) containing the code generating/processing AArch32 (ARM) and/or AArch64 (ARM64) code, depending on the build target. Test: 32-bit-only device boot test Test: 32/64-bit device boot test Bug: 64359573 Change-Id: I3e519a95e99bc69fa839f814bf59d83e6ccf82ef
Diffstat (limited to 'Android.bp')
-rw-r--r--Android.bp67
1 files changed, 26 insertions, 41 deletions
diff --git a/Android.bp b/Android.bp
index 0f20ef66..bc4e560d 100644
--- a/Android.bp
+++ b/Android.bp
@@ -73,12 +73,6 @@ cc_defaults {
// const correctly when handling string constants.
"-Wwrite-strings",
- // As we can load both libvixl-arm.so and libvixl-arm64.so in the
- // same process, and some functions are emitted in both libraries,
- // flags for selecting implementation details for these functions
- // must be shared to emit identical code. Otherwise we can get
- // undefined behavior, especially with link-time optimization.
- // b/64359573
"-DVIXL_CODE_BUFFER_MALLOC",
],
local_include_dirs: ["src"],
@@ -88,23 +82,31 @@ cc_defaults {
},
}
-cc_defaults {
+art_cc_defaults {
name: "vixl-arm",
defaults: ["vixl-common"],
- cppflags: [
- "-DVIXL_INCLUDE_TARGET_T32",
- ],
- srcs: ["src/aarch32/*.cc"],
+ codegen: {
+ arm: {
+ srcs: ["src/aarch32/*.cc"],
+ cppflags: [
+ "-DVIXL_INCLUDE_TARGET_T32",
+ ],
+ },
+ },
}
-cc_defaults {
+art_cc_defaults {
name: "vixl-arm64",
defaults: ["vixl-common"],
- cppflags: [
- "-DVIXL_INCLUDE_SIMULATOR_AARCH64",
- "-DVIXL_INCLUDE_TARGET_A64",
- ],
- srcs: ["src/aarch64/*.cc"],
+ codegen: {
+ arm64: {
+ srcs: ["src/aarch64/*.cc"],
+ cppflags: [
+ "-DVIXL_INCLUDE_SIMULATOR_AARCH64",
+ "-DVIXL_INCLUDE_TARGET_A64",
+ ],
+ }
+ },
}
cc_defaults {
@@ -127,10 +129,11 @@ cc_defaults {
],
}
-cc_library {
- name: "libvixl-arm64",
+art_cc_library {
+ name: "libvixl",
defaults: [
"vixl-release",
+ "vixl-arm",
"vixl-arm64",
"dex2oat-pgo-defaults",
],
@@ -144,31 +147,13 @@ cc_library {
},
}
-cc_library {
- name: "libvixld-arm64",
- defaults: ["vixl-debug", "vixl-arm64"],
-}
-
-cc_library {
- name: "libvixl-arm",
+art_cc_library {
+ name: "libvixld",
defaults: [
- "vixl-release",
+ "vixl-debug",
"vixl-arm",
- "dex2oat-pgo-defaults",
+ "vixl-arm64",
],
-
- target: {
- android: {
- lto: {
- thin: true,
- },
- },
- },
-}
-
-cc_library {
- name: "libvixld-arm",
- defaults: ["vixl-debug", "vixl-arm"],
}
//######## VIXL HOST TESTS #########