aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElliott Hughes <enh@google.com>2024-04-11 23:47:07 +0000
committerElliott Hughes <enh@google.com>2024-04-11 23:47:07 +0000
commit86cac5ff0161ee0d76644de88e59279930660a4c (patch)
tree344da213f9650805bf303e3ea81d9e6cd9ad61b3
parentd241875ca89f235b9543ed8fe26b97d9266d9ce0 (diff)
downloadxz-embedded-86cac5ff0161ee0d76644de88e59279930660a4c.tar.gz
Restrict BCJ decoding to just the ones in use in the encoder.
And, more importantly, explain why. We never wrote an encoder for arm64, so that one can safely be removed. The 32-bit ones need to stay, but that does mean that when we drop 32-bit support, they can go too. Change-Id: I6031fd6cb7656eecc3554a80e27a294608028699
-rw-r--r--Android.bp10
1 files changed, 8 insertions, 2 deletions
diff --git a/Android.bp b/Android.bp
index d751b38..2cf4881 100644
--- a/Android.bp
+++ b/Android.bp
@@ -33,11 +33,17 @@ cc_library_static {
],
local_include_dirs: ["userspace"],
- // Enable branch/call/jump filters. See http://b/27817327.
+ // We shouldn't enable branch/call/jump filters because they have no impact
+ // on Android OTA sizes (measured in http://b/329112384) --- the frequent
+ // function calls that this optimization is supposed to apply to will all go
+ // via the PLT, so the actual branch/call/jump instructions in the ELF file
+ // will be zeroed out anyway.
+ // Unfortunately, as long as we need to support decompressing _existing_
+ // OTA packages, we need to keep these in (but it's not worth adding new
+ // ones).
cflags: [
"-DXZ_DEC_X86",
"-DXZ_DEC_ARM",
- "-DXZ_DEC_ARM64",
"-DXZ_DEC_ARMTHUMB",
"-Wall",
"-Werror",