Ying Wang
1be5fb675a
am 25f39b2f
: am 62cd88d0
: Merge "FDO: Only support locally"
...
* commit '25f39b2fbe9dee8ec6c680569c22c71fce9e595c':
FDO: Only support locally
2013-09-04 11:56:03 -07:00
Ying Wang
25f39b2fbe
am 62cd88d0
: Merge "FDO: Only support locally"
...
* commit '62cd88d0d1614bbdb643f4cf4f014283b427ec7b':
FDO: Only support locally
2013-09-04 11:53:43 -07:00
synergydev
7c4674205c
FDO: Only support locally
...
The issues:
- The size increase from utilizing FDO is quite large while
utilizing runtime profiles in build.
- By default, FDO is utilized globally if the target arch variant
profiles exist.
- Not all modules can show statistical significance in
performance comparison, yet still suffer the size increase.
The solution:
- Only enable FDO locally with LOCAL_FDO_SUPPORT
for modules which may benefit enough to justify the size
tradeoff.
Solution notes:
- I've noted statistical significance in libwebcore and libskia
thus far from utilizing FDO.
- Analysis included sunspider, drawcanvas benchmarks, as
well as gooda analysis on both arm and x86
- To support runtime profile generation in modules which have
LOCAL_FDO_SUPPORT specified,
BUILD_FDO_INSTRUMENTATION is still used. Otherwise,
if the target arch variant profiles exist, FDO is utilized for
specified modules.
Change-Id: I7e95266943ff47c7d82b02e6200fd09911d0bb57
2013-09-03 20:53:20 +00:00
Torne (Richard Coles)
baa01faf1d
am 4f30a507
: Merge "Fix handling of .o files in LOCAL_GENERATED_SOURCES." into klp-dev
...
* commit '4f30a5076bea324b8224e4af4cfcf291f787ed4c':
Fix handling of .o files in LOCAL_GENERATED_SOURCES.
2013-08-30 02:42:55 -07:00
Torne (Richard Coles)
a5afbe8ac6
Fix handling of .o files in LOCAL_GENERATED_SOURCES.
...
Rule-generated .o files (in gen_o_objects) were being given a dependency
on everything in LOCAL_GENERATED_SOURCES (except for other .o files);
unfortunately this can still create cycles in cases where there are
explicit dependencies between entries in LOCAL_GENERATED_SOURCES.
Instead, make handling of generated .o files consistent with other
generated files (which don't automatically get any dependencies on other
generated files) by excluding them from the target side of the rule.
Change-Id: I3fb5652dc3d85012c179a03b81887d16a85ab3bf
2013-08-29 15:36:34 +01:00
Ying Wang
c97e86dca8
am c62c92c3
: Create an empty zip file if no dict file found.
...
* commit 'c62c92c3d737304cbd38e99e92f29e193b15b7c8':
Create an empty zip file if no dict file found.
2013-08-28 18:43:32 -07:00
Ying Wang
c62c92c3d7
Create an empty zip file if no dict file found.
...
Instead of touch an empty file.
Change-Id: Ifa8bb04cea6fc0fc3165337f6815d5976bac677d
2013-08-28 18:38:25 -07:00
Ying Wang
54e81f546c
am 37b82aac
: Skip compiling Java if an apk has no Java code.
...
* commit '37b82aacd958ee5b820d0058a808e8f13e9b22bb':
Skip compiling Java if an apk has no Java code.
2013-08-28 17:34:24 -07:00
Ying Wang
37b82aacd9
Skip compiling Java if an apk has no Java code.
...
Change-Id: Iee204e03ad5bc8ce5c3b4b3863c19c89184826e2
2013-08-28 17:28:36 -07:00
Ying Wang
9915650b98
am 990cf5e5
: Better handle of need_compile_java.
...
* commit '990cf5e57d5f3e454dd60f1d532f4dabe92a1b32':
Better handle of need_compile_java.
2013-08-28 14:09:39 -07:00
Ying Wang
990cf5e57d
Better handle of need_compile_java.
...
Change-Id: I609a27e2b35b08962243b6516c6c525c0c938d3c
2013-08-28 14:05:20 -07:00
Ben Cheng
e3b1fc39f9
am db4113fd
: am d58df2de
: Merge "Re-tighten default compiler options."
...
* commit 'db4113fdcce77872cc4657d74ac4136b356de928':
Re-tighten default compiler options.
2013-08-28 11:32:25 -07:00
Ben Cheng
db4113fdcc
am d58df2de
: Merge "Re-tighten default compiler options."
...
* commit 'd58df2de78b798f8fc301afcfeb61f574629b8ce':
Re-tighten default compiler options.
2013-08-28 11:29:41 -07:00
Ying Wang
161aa74de6
am 576e0146
: Make it a fatal error if no source files for Java module.
...
* commit '576e0146a91f0f092cf67208c864ab9635b42222':
Make it a fatal error if no source files for Java module.
2013-08-28 11:26:37 -07:00
Ying Wang
576e0146a9
Make it a fatal error if no source files for Java module.
...
Change-Id: Ia04158c11381b6b1687b9d5c699a9ea8ae3cb317
2013-08-28 11:19:36 -07:00
Ben Cheng
85ccf735e2
Re-tighten default compiler options.
...
Remove "-Wno-unused-parameter -Wno-unused-but-set-parameter" added for
GCC 4.8 experiment.
BUG: 10495043
(cherry picked from internal master 1cea0755f4
)
Change-Id: Ifa221709b1351a9268c06872e2b667138995c3da
2013-08-28 11:17:43 -07:00
Ying Wang
bf05f6cc3e
am 495f6840
: In apps_only build dist a module only if it has a BUILT file.
...
* commit '495f68402493de82606b8c06213bae5bb1156a8b':
In apps_only build dist a module only if it has a BUILT file.
2013-08-27 15:07:53 -07:00
Ying Wang
495f684024
In apps_only build dist a module only if it has a BUILT file.
...
This allows you to specify a PHONY target in TARGET_BUILD_APPS.
Change-Id: Idd813cd0dbdb14c705fbd3187596d4c64b99d045
2013-08-27 15:04:57 -07:00
Ying Wang
ea0237dd89
am 10d2e0cd
: Remove the vendor-specific vars from the protected list.
...
* commit '10d2e0cd9119d25ba58d27004c18f4b894992a80':
Remove the vendor-specific vars from the protected list.
2013-08-26 15:05:47 -07:00
Ying Wang
a704583265
am 62c81f82
: Collect NOTICE files for apps_only build.
...
* commit '62c81f821f3675ea57485bfa6cb3320b7178759e':
Collect NOTICE files for apps_only build.
2013-08-26 15:04:13 -07:00
Ying Wang
8541895267
am b6cf5b2f
: am b88ca53a
: am ddce2eb0
: am de32713f
: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
...
* commit 'b6cf5b2f41d460405a0a22812255b2700a79fb20':
Collect and store proguard obfuscation dictionary files.
2013-08-26 15:01:13 -07:00
Ying Wang
b3ad11246d
am 27f2cfb7
: am 29695daa
: am 653a037d
: am 638ce57a
: Treat LOCAL_APK_LIBRARIES like shared Java libraries.
...
* commit '27f2cfb72e932a3ccbb592ef9b75e37542ceabc4':
Treat LOCAL_APK_LIBRARIES like shared Java libraries.
2013-08-26 15:00:57 -07:00
Ying Wang
10d2e0cd91
Remove the vendor-specific vars from the protected list.
...
Change-Id: I915a61034c9c3e2b886f609c4b8f4043e97bda61
2013-08-26 14:57:52 -07:00
Ying Wang
62c81f821f
Collect NOTICE files for apps_only build.
...
In apps_only build (after running tapas or exporting TARGET_BUILD_APPS),
run "make notice_files" to collect and combine the NOTICE files of
modules that are needed by the apps.
Bug: 10445634
Change-Id: I6555bba1104e43b48c723c82143c46d444a75e80
2013-08-24 13:55:59 -07:00
Ying Wang
b6cf5b2f41
am b88ca53a
: am ddce2eb0
: am de32713f
: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
...
* commit 'b88ca53a465ef004a60ceb9c4c641c3c997edeb5':
Collect and store proguard obfuscation dictionary files.
2013-08-23 12:19:48 -07:00
Ying Wang
b88ca53a46
am ddce2eb0
: am de32713f
: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
...
* commit 'ddce2eb007c97b8ca94bc7b3190a83006df0c187':
Collect and store proguard obfuscation dictionary files.
2013-08-23 12:18:11 -07:00
Ying Wang
ddce2eb007
am de32713f
: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
...
* commit 'de32713f47b33c6d4c0bb4c8943e1eccf81aa0c5':
Collect and store proguard obfuscation dictionary files.
2013-08-23 12:16:16 -07:00
Ying Wang
de32713f47
Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
2013-08-23 19:14:20 +00:00
Ying Wang
ae9115a525
Collect and store proguard obfuscation dictionary files.
...
Collect and store proguard obfuscation dictionary files.
Only do this for apps_only build for now.
Bug: 9407666
Change-Id: I51c78bf0f42f959dc920de230e60e0f71ed0d0ea
2013-08-23 12:13:24 -07:00
Ying Wang
27f2cfb72e
am 29695daa
: am 653a037d
: am 638ce57a
: Treat LOCAL_APK_LIBRARIES like shared Java libraries.
...
* commit '29695daa9734a8dfb516b7ff2e35b2b263e6b37b':
Treat LOCAL_APK_LIBRARIES like shared Java libraries.
2013-08-23 12:10:20 -07:00
Ying Wang
29695daa97
am 653a037d
: am 638ce57a
: Treat LOCAL_APK_LIBRARIES like shared Java libraries.
...
* commit '653a037d70d770d2fc03d4f205a9c626af5f5c76':
Treat LOCAL_APK_LIBRARIES like shared Java libraries.
2013-08-23 12:07:45 -07:00
Ying Wang
653a037d70
am 638ce57a
: Treat LOCAL_APK_LIBRARIES like shared Java libraries.
...
* commit '638ce57a5848c10d781502bf198a2b93aeb58a7a':
Treat LOCAL_APK_LIBRARIES like shared Java libraries.
2013-08-23 12:03:47 -07:00
Ying Wang
638ce57a58
Treat LOCAL_APK_LIBRARIES like shared Java libraries.
...
This fix proguard build.
Bug: 10307372
Change-Id: Id99d6e903077b4bacdea2e68cbb78e46a4a6afb8
2013-08-23 11:59:49 -07:00
Ying Wang
92ed0994d9
am c3e977ac
: am 2363485c
: am 06de9f94
: am 8709497e
: Merge "Revert "Collect and store proguard obfuscation dictionary files."" into jb-mr2-dev
...
* commit 'c3e977acf150c54a73d7a4cd7f5d47474a122a66':
Revert "Collect and store proguard obfuscation dictionary files."
2013-08-23 10:21:06 -07:00
Ying Wang
c3e977acf1
am 2363485c
: am 06de9f94
: am 8709497e
: Merge "Revert "Collect and store proguard obfuscation dictionary files."" into jb-mr2-dev
...
* commit '2363485c2fb3f08d36e8cdbb2240b9c3993b470c':
Revert "Collect and store proguard obfuscation dictionary files."
2013-08-23 10:17:47 -07:00
Ying Wang
7657012367
am 58ad7061
: am 93b95dc4
: am aa87a11d
: am afd7457a
: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
...
* commit '58ad70618d4d21f16ffe89c1e0eea7e35eae918b':
Collect and store proguard obfuscation dictionary files.
2013-08-23 10:17:36 -07:00
Ying Wang
670a7a6389
am c5b72527
: am ec3c15e5
: am 04c4d34d
: am 7311a344
: Make it easier to enable obfuscation and optimization.
...
* commit 'c5b72527d30602568dad9fd310e82b6b12fc1106':
Make it easier to enable obfuscation and optimization.
2013-08-23 10:17:35 -07:00
Ying Wang
2363485c2f
am 06de9f94
: am 8709497e
: Merge "Revert "Collect and store proguard obfuscation dictionary files."" into jb-mr2-dev
...
* commit '06de9f940c34b8ade1f1866fbc1c6b32f93277b4':
Revert "Collect and store proguard obfuscation dictionary files."
2013-08-23 10:14:48 -07:00
Ying Wang
06de9f940c
am 8709497e
: Merge "Revert "Collect and store proguard obfuscation dictionary files."" into jb-mr2-dev
...
* commit '8709497ed82800f399e99516df59afdb1bae8472':
Revert "Collect and store proguard obfuscation dictionary files."
2013-08-23 10:13:19 -07:00
Ying Wang
58ad70618d
am 93b95dc4
: am aa87a11d
: am afd7457a
: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
...
* commit '93b95dc4b9f9b4e04e8a0fac25c958d5c52266e4':
Collect and store proguard obfuscation dictionary files.
2013-08-23 10:12:26 -07:00
Ying Wang
c5b72527d3
am ec3c15e5
: am 04c4d34d
: am 7311a344
: Make it easier to enable obfuscation and optimization.
...
* commit 'ec3c15e5c7c11cf3a831898f286c7eb7c216e50f':
Make it easier to enable obfuscation and optimization.
2013-08-23 10:12:26 -07:00
Ying Wang
8709497ed8
Merge "Revert "Collect and store proguard obfuscation dictionary files."" into jb-mr2-dev
2013-08-23 17:11:29 +00:00
Ying Wang
df8b48449a
Revert "Collect and store proguard obfuscation dictionary files."
...
This reverts commit 41dbe1e535
.
Change-Id: I023594779128083b75a069fd860cd29dd7951ef5
2013-08-23 17:11:18 +00:00
Ying Wang
93b95dc4b9
am aa87a11d
: am afd7457a
: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
...
* commit 'aa87a11dffec0ea58c93ab0dd23b067975a4c681':
Collect and store proguard obfuscation dictionary files.
2013-08-23 10:09:28 -07:00
Ying Wang
ec3c15e5c7
am 04c4d34d
: am 7311a344
: Make it easier to enable obfuscation and optimization.
...
* commit '04c4d34d4fdb56c824abf39239d2c87806706b7e':
Make it easier to enable obfuscation and optimization.
2013-08-23 10:09:27 -07:00
Ying Wang
aa87a11dff
am afd7457a
: Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
...
* commit 'afd7457adf844692b5de8f8d7eefedcc10dc7da1':
Collect and store proguard obfuscation dictionary files.
2013-08-23 10:06:59 -07:00
Ying Wang
04c4d34d4f
am 7311a344
: Make it easier to enable obfuscation and optimization.
...
* commit '7311a344bed507062e781ba70331d85652c217d8':
Make it easier to enable obfuscation and optimization.
2013-08-23 10:06:58 -07:00
Ying Wang
afd7457adf
Merge "Collect and store proguard obfuscation dictionary files." into jb-mr2-dev
2013-08-23 17:05:32 +00:00
Ying Wang
41dbe1e535
Collect and store proguard obfuscation dictionary files.
...
Collect and store proguard obfuscation dictionary files.
Only do this for apps_only build for now.
Bug: 9407666
Change-Id: I0324eed6bb236abb0d3725f8d2a0b6c5c31935fe
2013-08-22 20:54:31 -07:00
Ying Wang
7311a344be
Make it easier to enable obfuscation and optimization.
...
With this change, use:
* LOCAL_PROGUARD_ENABLED := obfuscation # to enable obfuscation
* LOCAL_PROGUARD_ENABLED := optimization # to enable optimization
* LOCAL_PROGUARD_ENABLED := obfuscation optimization # to enable both
Now the meaning of the LOCAL_PROGUARD_ENABLED options:
* full:
Use the build system's default configurations:
with shrink but no obfuscation or optimization,
global proguard flags in build/core/proguard.flags
are applied.
* custom:
The same as "full" except no aapt-generated resource-related
proguard flags.
* nosystem:
Don't use any build system's default configurations; but
aapt-generated proguard flags are still applied. You are
responsible for any other flags.
* disabled:
Disable proguard.
* obfuscation:
The same as "full" but with obfuscation enabled.
* optimization:
The same as "full" but with optimization enabled.
* no value (the default):
The build system chooses the proper value: "full" if it's an
app; "disabled" if it's a library.
You can use more than 1 of them in a meaningful combination,
for example:
LOCAL_PROGUARD_ENABLED := obfuscation optimization
Bug: 10307372
Change-Id: Id248caca3048e99547f16559fae74f4afe85c354
2013-08-22 17:12:38 -07:00