summaryrefslogtreecommitdiff
path: root/compiler/driver/compiler_options_map-inl.h
AgeCommit message (Collapse)Author
2024-04-04Remove RegisterAllocator::Strategy Santiago Aboy Solanes
It has been obsolete since graph color was removed. Bug: 281793697 Test: art/test/testrunner/testrunner.py --host --64 --optimizing -b Test: m test-art-host-gtest Change-Id: I8b42b0fe39a8601da7aa1288a8581ab8b4742614
2024-01-30Allow compilation of large methods with no branches Santiago Aboy Solanes
Popular apps include such methods in their profiles. Having the extra heuristic of skipping compilation for large methods with no branches can be unintuitive for developers who created those profiles. Some apps see startup improvements with this heuristic removed. Bug: 316617683 Test: art/test/testrunner/testrunner.py --host --64 --optimizing -b Change-Id: I21a8da93e89399dac0e45c3ab43a8bbedc925a44
2023-12-04Put branch profiling under a flag. Nicolas Geoffray
Until we evaluate its usefulness and reduce its overhead. Bug: 306638020 Test: test.py Change-Id: Ibb01c70a7ea19b03802dcc1b0792d3d2ff4f4d67
2023-11-06Deprecate num-dex-methods and top-k-profile-threshold flags Santiago Aboy Solanes
They were unused and did nothing. Test: Presubmit Change-Id: Id651d5834afcdf293939b79d330b198aef0c954c
2023-09-07Don't inline AddCompilerOptionsArgumentParserOptions Ryan Prichard
This function generates a large stack frame, but that's OK, so the stack frame limit is ignored for it. However, if the function is inlined into its callers, then the pragma suppressing the stack frame limit doesn't work. Bug: b/175635923 Test: treehugger Change-Id: Ie24409ba5691f2734cfedb6506e9fb341718b86b
2022-11-23Add clang-format preupload check. Martin Stjernholm
This will check that new and changed lines conform to the style defined in .clang-format. Specific code sections can be excluded if it gets in the way (some examples included). Also fix the java style to not line break in "/// CHECK" comments, and use the AOSP style import order. Java files in art/tools/ahat and art/tools/dexfuzz use indentation width 2, so they get an override .clang-format with that style. Java files in test/ have a mix of different indentation widths, so that directory is excluded for the time being. openjdkjvmti/include/jvmti.h is an imported file that should be ignored altogether. However, it is not straightforward to configure a whole file exclude. Upload it with --no-verify if it needs to be updated. Test: clang-format -i art/dex2oat/dex2oat_options.cc \ art/benchmark/const-class/src/ConstClassBenchmark.java \ art/tools/ahat/src/main/com/android/ahat/heapdump/Parser.java \ art/tools/dexfuzz/src/dexfuzz/program/IdCreator.java Check that reformatted files look reasonable Test: Create a local commit with changes in both art/libartservice and art/test, run tools/repohooks/pre-upload.py, and verify that only the changes in art/libartservice get checked. Bug: 181877164 Change-Id: I991ff032694bf5063e8516fdf71a95d0b047ffea
2022-11-18Make remaining compiler/ symbols hidden. Vladimir Marko
And mark required symbols with EXPORT. Test: m test-art-host-gtest Test: testrunner.py --host --optimizing --jit Change-Id: I1b4e3c1ef9006924456dc36ec906bf74b62adab4
2020-09-02Use help-text generator for dex2oat Alex Light
The use of a static text blob makes keeping the dex2oat help text up to date difficult. Change to use the new cmdline help-text generator code. Test: dex2oat --help Change-Id: I1139cba2c773242e15f863d7efd2c7050c05ab4f
2020-04-01Add explicit compiler option to enable test-specific features. David Srbecky
We can no longer rely on checking the "core.art" image name, since we plan to remove it and use the shipped boot image. This option enables test-specific features, such as $noinline$. Test: ./art/test.py -r --optimizing --64 Bug: 147817558 Change-Id: Iadac6e1b0f46e83efd0551fb8462a6b268ad33d8
2019-07-17Add option for controling app image class initialization Mathieu Chartier
The new option is --initialize-app-image-classes. This attempts to initialize app image classes by running the class initializers ahead of time. Will test this through test 660, but there are currently aborts when it's enabled. Test: test-art-host Bug: 70735003 Change-Id: Icc05683b23098a15531097f67aad17144f0badaf
2019-07-03Remove small and tiny method options Mathieu Chartier
These are unused and nops. Test: test-art-host-gtest Change-Id: I6421387d53ec8692cf420be71ec47e1ef5e61f19
2018-11-29Add image compressed blocks Mathieu Chartier
Add support for splitting the image into a set of solid blocks. Added dex2oat option --max-image-block-size and correspodning image unit test. Motivation: Enable parallel image decompression in the future. Bug: 116052292 Test: test-art-host Change-Id: I37c6c6a43ef94c4a62bf38a0cf51f26ce06347ac
2018-10-16ART: Add profile-compile-check support Andreas Gampe
Add --check-profiled-methods, which verifies that all methods mentioned in a profile for a guided compilation are actually compiled instead of being punted. As outcome it may log or abort dex2oat. TODO: Extend dex2oat_test Bug: 76145463 Test: mmma art Test: m test-art-host Change-Id: I956113b55796d0666db9dbfd387105a7d27b0868
2018-10-16Add logic to eagerly resolve const-string for startup methods Mathieu Chartier
Added dex2oat option --resolve-startup-const-strings=<true|false> If true, this option causes the compiler driver to resolve all const-strings that are referenced from methods marked as "startup" in the profile. Bug: 116059983 Test: test-art-host Change-Id: I61cf9e945c125671fc4ab4b50458a911318a837f
2018-10-10ART: Completely remove the --compile-pic option. Vladimir Marko
And the PIC-related fields from image header. Test: m test-art-host-gtest Test: testrunner.py --host --optimizing Test: Pixel 2 XL boots. Test: testrunner.py --target --optimizing Bug: 77856493 Change-Id: I3787369378f12d8cd9003bebeae62830a67def33
2018-10-10Introduce a 'baseline' variant for the compiler. Nicolas Geoffray
Implemented as a stripped down version of the optimizing compiler, not running any optimization. Adjust code to still work with expectations in code generators. bug: 111397239 Test: test.py --baseline Change-Id: I4328283825f9a890616e7496ed4c1e77d6bcc5dd
2018-05-08ART: Add --dump-pass-timings compiler option. Vladimir Marko
This replaces the old --dump-passes option removed in https://android-review.googlesource.com/549200 . Using --dump-timing for timing optimization passes makes the high level timings useless, so return to using two different options for these. Test: Manually run dex2oat with --dump-timings, --dump-pass-timings and both. Change-Id: Iddc4cfee35652fb493656e7d6081a898c2894f72
2018-01-29Add compiler option for counting hotness in compiled code. Nicolas Geoffray
For eventually easier profiling of boot classpath and system server. bug: 30934496 Test: 674-hotness-compiled Change-Id: I0f63c644527b74f6ef2649f481c2a1c731bb9f21
2017-11-28Clean some dex2oat options. Nicolas Geoffray
Remove dump-passes inherited from Quick days, and move dump-timings and dump-stats to CompilerStats. Test: test.py Change-Id: Ie79be858a141e59dc0b2a87d8cb5a5248a5bc7af
2017-11-07ART: Add compiler option for code deduplication Andreas Gampe
Add --deduplicate-code and --no-deduplicate-code to ease in experiments with deduplication, e.g., profiling. Add dex2oat test. Test: m test-art-host Change-Id: Ib6c7fe082f43c5f76c8463cc563e2503c9a50480
2017-10-19ART: Add abort-on-soft-verifier-error Andreas Gampe
Add an option to abort compilation if any class fails compile-time verification. Bug: 65318848 Bug: 67358823 Test: m test-art-host-gtest-dex2oat_test Change-Id: I5d2a7cd1d2ed048ab39d6f787ecc9eb2f41d3d77
2017-10-06ART: Use CmdlineParser in dex2oat Andreas Gampe
Refactor dex2oat and the compiler to use the cmdline parser. In an effort to standardize command-line parsing and make it easier to add new properties in a principled manner. Test: m test-art-host Change-Id: Ia077a56234dbf579d7ca3430fef325b57aa06333