Use arm instruction set with clang 7.0 LTO
* surfaceflinger.so uses LTO.
clang 7.0 LTO inlined more code and some references
are too far away to use thumb instructions.
Bug: 72619014
Test: run Forrest
Change-Id: Ia09931e93a170ac58007f80da2d580bb9b9635a6
diff --git a/cmds/surfacereplayer/proto/Android.bp b/cmds/surfacereplayer/proto/Android.bp
index 71a5e23..7b402fe 100644
--- a/cmds/surfacereplayer/proto/Android.bp
+++ b/cmds/surfacereplayer/proto/Android.bp
@@ -7,6 +7,11 @@
"-Wall",
"-Werror",
],
+ arch: {
+ arm: {
+ instruction_set: "arm",
+ },
+ },
proto: {
type: "lite",
export_proto_headers: true,
diff --git a/libs/vr/libbufferhub/Android.bp b/libs/vr/libbufferhub/Android.bp
index 39814cc..e6803da 100644
--- a/libs/vr/libbufferhub/Android.bp
+++ b/libs/vr/libbufferhub/Android.bp
@@ -48,6 +48,11 @@
"-Wall",
"-Werror",
],
+ arch: {
+ arm: {
+ instruction_set: "arm",
+ },
+ },
export_include_dirs: localIncludeFiles,
shared_libs: sharedLibraries,
header_libs: headerLibraries,
diff --git a/libs/vr/libbufferhubqueue/Android.bp b/libs/vr/libbufferhubqueue/Android.bp
index eeec9ec..cf2c59b 100644
--- a/libs/vr/libbufferhubqueue/Android.bp
+++ b/libs/vr/libbufferhubqueue/Android.bp
@@ -53,6 +53,11 @@
"-Wno-unused-parameter",
"-Wno-unused-variable",
],
+ arch: {
+ arm: {
+ instruction_set: "arm",
+ },
+ },
srcs: sourceFiles,
export_include_dirs: includeFiles,
export_static_lib_headers: staticLibraries,
diff --git a/libs/vr/libdisplay/Android.bp b/libs/vr/libdisplay/Android.bp
index 192fb5d..093ad92 100644
--- a/libs/vr/libdisplay/Android.bp
+++ b/libs/vr/libdisplay/Android.bp
@@ -52,6 +52,11 @@
cc_library {
tags: ["tests"],
srcs: sourceFiles,
+ arch: {
+ arm: {
+ instruction_set: "arm",
+ },
+ },
cflags: ["-DLOG_TAG=\"libdisplay\"",
"-DTRACE=0",
"-DATRACE_TAG=ATRACE_TAG_GRAPHICS",
diff --git a/libs/vr/libpdx/Android.bp b/libs/vr/libpdx/Android.bp
index 9b84d65..d183f71 100644
--- a/libs/vr/libpdx/Android.bp
+++ b/libs/vr/libpdx/Android.bp
@@ -8,6 +8,11 @@
"-DLOG_TAG=\"libpdx\"",
"-DTRACE=0",
],
+ arch: {
+ arm: {
+ instruction_set: "arm",
+ },
+ },
export_include_dirs: ["private"],
local_include_dirs: ["private"],
srcs: [
diff --git a/libs/vr/libpdx_uds/Android.bp b/libs/vr/libpdx_uds/Android.bp
index 79cfdf6..e7cf357 100644
--- a/libs/vr/libpdx_uds/Android.bp
+++ b/libs/vr/libpdx_uds/Android.bp
@@ -19,6 +19,11 @@
"ipc_helper.cpp",
"service_endpoint.cpp",
],
+ arch: {
+ arm: {
+ instruction_set: "arm",
+ },
+ },
static_libs: [
"libcutils",
"libbase",
diff --git a/libs/vr/libperformance/Android.bp b/libs/vr/libperformance/Android.bp
index 35d3dea..2eed602 100644
--- a/libs/vr/libperformance/Android.bp
+++ b/libs/vr/libperformance/Android.bp
@@ -36,6 +36,11 @@
"-Wall",
"-Werror",
],
+ arch: {
+ arm: {
+ instruction_set: "arm",
+ },
+ },
export_include_dirs: includeFiles,
shared_libs: sharedLibraries,
name: "libperformance",
diff --git a/libs/vr/libvr_manager/Android.bp b/libs/vr/libvr_manager/Android.bp
index 8784877..6060c6e 100644
--- a/libs/vr/libvr_manager/Android.bp
+++ b/libs/vr/libvr_manager/Android.bp
@@ -31,6 +31,11 @@
include_dirs: include_dirs,
export_include_dirs: exported_include_dirs,
cflags: ["-Wall", "-Werror", "-Wunused", "-Wunreachable-code"],
+ arch: {
+ arm: {
+ instruction_set: "arm",
+ },
+ },
static_libs: static_libs,
name: "libvr_manager",
}
diff --git a/libs/vr/libvrflinger/Android.bp b/libs/vr/libvrflinger/Android.bp
index 23a9853..c762e46 100644
--- a/libs/vr/libvrflinger/Android.bp
+++ b/libs/vr/libvrflinger/Android.bp
@@ -81,6 +81,11 @@
"-Wno-error=sign-compare", // to fix later
"-Wno-unused-variable",
],
+ arch: {
+ arm: {
+ instruction_set: "arm",
+ },
+ },
shared_libs: sharedLibraries,
whole_static_libs: staticLibraries,
header_libs: headerLibraries,
diff --git a/services/surfaceflinger/Android.bp b/services/surfaceflinger/Android.bp
index ae34d34..ae589ca 100644
--- a/services/surfaceflinger/Android.bp
+++ b/services/surfaceflinger/Android.bp
@@ -133,6 +133,11 @@
srcs: [
":libsurfaceflinger_sources",
],
+ arch: {
+ arm: {
+ instruction_set: "arm",
+ },
+ },
logtags: ["EventLog/EventLogTags.logtags"],
include_dirs: [
"external/vulkan-validation-layers/libs/vkjson",
diff --git a/services/surfaceflinger/layerproto/Android.bp b/services/surfaceflinger/layerproto/Android.bp
index 8eb218c..75612c0 100644
--- a/services/surfaceflinger/layerproto/Android.bp
+++ b/services/surfaceflinger/layerproto/Android.bp
@@ -9,6 +9,12 @@
"layerstrace.proto",
],
+ arch: {
+ arm: {
+ instruction_set: "arm",
+ },
+ },
+
shared_libs: [
"libui",
"libprotobuf-cpp-lite",
@@ -33,4 +39,4 @@
"-Wno-undef",
],
-}
\ No newline at end of file
+}
diff --git a/services/utils/Android.bp b/services/utils/Android.bp
index 6132956..a5f7dc1 100644
--- a/services/utils/Android.bp
+++ b/services/utils/Android.bp
@@ -27,6 +27,12 @@
"PriorityDumper.cpp",
],
+ arch: {
+ arm: {
+ instruction_set: "arm",
+ },
+ },
+
clang: true,
export_include_dirs: ["include"],
}