| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Change-Id: Ibe0efa4e84fd020a53ded310a92e0b4363f91b12
|
|
|
|
|
|
|
|
| |
- Perform constant folding on int and long additions and subtractions in
the optimizing compiler.
- Apply constant folding to conditions and comparisons.
Change-Id: Ic88783a3c975fda777c74c531e257fa777be42eb
|
|
|
|
| |
Change-Id: Ie9db5d8e2c2c30e34145a0f7d2386b8ec58cfc4e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Checks performed on control-flow graphs:
- Ensure that the predecessors and successors of a basic block are
consistent within a control-flow graph.
- Ensure basic blocks end with a branch instruction.
- Detect phi functions listed in non-phi instruction lists and vice
versa.
- Ensure a block's instructions (and phi functions) are associated
with this very block.
Checks performed on SSA form graphs:
- Ensure an instruction dominates all its uses.
- Ensure there are no critical edges.
Change-Id: I1c12b4a61ecf608682152c897980ababa7eca847
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Added printing of OatClass offsets.
- Added printing of OatMethod offsets.
- Added bounds checks for code size size, code size, mapping table, gc map, vmap table.
- Added sanity check of 100k for code size.
- Added partial disassembly of questionable code.
- Added --no-disassemble to disable disassembly.
- Added --no-dump:vmap to disable vmap dumping.
- Reordered OatMethod info to be in file order.
Bug: 15567083
(cherry picked from commit 34fa79ece5b3a1940d412cd94dbdcc4225aae72f)
Change-Id: I2c368f3b81af53b735149a866f3e491c9ac33fb8
|
|
|
|
|
|
| |
This reverts commit 7e3652c45c30c1f2f840e6088e24e2db716eaea7.
Change-Id: Ib489440c34e41cba9e9e297054f9274f6e81a2d8
|
|
|
|
|
|
| |
This reverts commit 6fbce029fba3ed5da6c36017754ed408e6bcb632.
Change-Id: Ia915c27873b021e658a10212e559095dfc91284e
|
|
|
|
|
|
|
| |
For simplicity, they are currently placed on all (dex-level)
back edges, and at method entry.
Change-Id: I6e833e244d559dd788c69727e22fe40aff5b3435
|
|
|
|
|
|
|
|
| |
For now just stack allocate the code generator. Will think
about cleaning up the root problem later (CodeGenerator being an
arena object).
Change-Id: I161a6f61c5f27ea88851b446f3c1e12ee9c594d7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Wire up valgrind gtests. Add valgrind-test-art-host, currently
only depending on valgrind-test-art-host-gtest32.
Fix an Alloc setting to allow running valgrind.
Refactor the fault handler to manage (and correctly release) the
handlers.
Fix minor failure-case leaks exposed by tests.
Failing tests:
The optimizing compiler is leaking non-arena-ed structures
(e.g., assembler buffers), as code generators are not destroyed.
The solution has been moved to a follow-up CL.
Note: All 64b tests are failing as we cannot allocate a heap.
Change-Id: I7f854cfd098d9f68107ce492363e7dba9a82b9fa
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove extra line in Android.run-test.mk.
Update junit code in 082 and 021.
Set correct bootclasspath for --no-image.
Make host core.art depend on dex files being installed.
Make 118 pass in the correct bootclasspath.
Bug: 17290452
Change-Id: I415eddfa3632ec7eda927abe95925202de193749
|
|
|
|
|
|
|
|
| |
Also add it to the test-art target.
Bug: 17262039
Change-Id: Id31130194c46df66fc48852d6f8884f14cb08db4
|
|
|
|
|
|
|
|
|
|
| |
Add a JNI force copy test.
Split tracing from GC, relocation from prebuilding.
As the combinations of tests is sufficiently large to cause make serious work,
only build rules for tests that will be executed. Default to small number of
tests rather than full. Use ART_TEST_FULL=true to override.
Change-Id: Ic25431f29071b840d2e2295be6853511c0b52cfa
|
|
|
|
| |
Change-Id: I22d5e9b69e40585c6ee57381ee758b4b32e07f96
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Set default visibility of symbols to protected. This allows the
linker to optimize internal calls and helps avoid plt calls.
Make almost all assembly stubs hidden, as -fvisibility does not
seem to apply to them. Change the assembly tests accordingly. Also
allows to clean up previous hacks to avoid plt calls.
Bug: 16974467
(cherry picked from commit 235e77bd9f19e4faefda109be40f8744f3a66f40)
Change-Id: I9030dcf6116251f434f94a2b08e56e12085af652
|
|
|
|
|
|
|
|
| |
In 64006834b26f7138131fac87c3b0973cda70e560 we started depending on
TARGET_CORE_JARS which are phony targets and undefined when using
"mm test-art-target".
Change-Id: I671c5d6068ff999782ad5f388f3077f4c1594884
|
|
|
|
|
|
|
| |
This CL is a better fix for proxy tracing and undoes the changes in
https://android-review.googlesource.com/#/c/103025/
Change-Id: Ie82bb49f07774bd08a6720ddbe5b1f8ee9363acf
|
|
|
|
| |
Change-Id: Id943286202bf5716588a61092b819d51069a2f53
|
|
|
|
|
|
| |
Also re-enable SignalTest on optimizing-32.
Change-Id: I2ca13f6f9ea775c654ee07cc5026c985263d6380
|
|
|
|
| |
Change-Id: I0da17b12fc2164d9d8bdb8bcf61947c7788c6b8b
|
|\ |
|
| |
| |
| |
| |
| |
| |
| | |
Also updates proxy_test to generate an image for GetQuickOatCodeFor.
Bug: 16386215
Change-Id: Ie7daad3d73ea7b60187bc1e7037ade0df8277107
|
|/
|
|
|
|
|
|
| |
Tests some of the functionality supported by the card table.
Removed some logcat spam from monitor_pool.
Change-Id: I1423816a72572f78aca44552effa2b4c6aac46c8
|
|
|
|
|
|
| |
This reverts commit b1efe9746724f28773d185c7137c16ca8207ed47.
Change-Id: I5af2fae2c7b72e6ded72f00d3f7d4f306f6703ee
|
|
|
|
|
|
|
|
|
| |
This flag makes run-test remove the test-artifacts even if it fails. Also
enable this option by default when doing run-tests with make. Add
a ART_TEST_RUN_TEST_ALWAYS_CLEAN environment variable to control this
option.
Change-Id: I7867b400d570d8d679d9822d1fa65f49eb3522ae
|
|
|
|
| |
Change-Id: I318d37a2d98972c689829258e129ec8973bdc038
|
|
|
|
|
|
| |
Nativetest is now nativetest64 on 64b targets.
Change-Id: I4c4c6bba1a56525df2993708caaae3e6f7f5f2f6
|
|
|
|
|
|
| |
LOCAL_FDO_SUPPORT indicates if the module should enable FDO builds.
Change-Id: I1eab8bf418b7ceb060eea18bdd304a06597af3d3
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Encodes stack mask, register mask, dex register values, and inlining
info. The encoding is currently very straightforward: there is no
clever encoding, nor compression.
Change-Id: I5fd9ae28189a5513cd9e3c8d52c648463207643d
|
| |
| |
| |
| | |
Change-Id: I8db60eade0338e53e76a87ef38ad661550475e3c
|
| |
| |
| |
| | |
Change-Id: I573e1bcdc7a935145e88077def9c90a5573d2e90
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Bug: 16362912
The latest version of clang is generating larger frames on elf_writer_quick.cc
and dex2oat.cc than we had previously encountered. This change unblocks the
LLVM rebase temporarily.
Change-Id: I20d9f88959b91e0509e58f01c22532720225f44d
|
| |
| |
| |
| |
| |
| | |
Transforms all former oat tests into run tests.
Change-Id: I190dd39456454c36e5538a2c044d993965a67533
|
| |
| |
| |
| |
| |
| | |
Bug: 16499668
Change-Id: I7da5559c13597d7bca4e4037a1e9335f0b6d8230
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Rewrite the topological sort order to include a full loop
before the blocks that go after the loop. Add a new iterator
class LoopRepeatingTopologicalSortIterator that differs from
the RepeatingTopologicalSortIterator by repeating only loops
and repeating them early. It returns to the loop head if the
head needs recalculation when we reach the end of the loop.
In GVN, use the new loop-repeating topological sort iterator
and for a loop head merge only the preceding blocks' LVNs
if we're not currently recalculating this loop.
Also fix LocalValueNumbering::InPlaceIntersectMaps() which
was keeping only the last element of the intersection, avoid
some unnecessary processing during LVN merge and add some
missing braces to MIRGraph::InferTypeAndSize().
Bug: 16398693
Change-Id: I4e10d4acb626a5b8a28ec0de106a7b37f9cbca32
|
| |
| |
| |
| |
| |
| | |
If dex2oatd changes, we need to re-run .oat/.art file generation.
Change-Id: I43487e024745b22b1681f4ff558bac6fd07d9881
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | | |
Also added ability to turn off non-prebuild manually.
Change-Id: I0315ac43703a9c7e79812658523013799fb5d5dd
|
|/ /
| |
| |
| | |
Change-Id: Iad318f63263dc5d264d8a84eacedf5065a4e5248
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Add a pair of runtime flags -Xrelocate and -Xnorelocate that can force
the runtime to require that all files that are run are relocated, to
prevent attacks based on the known art base address.
Add support for running patchoat on oat files compiled without an image.
Change run-test to have new --prebuild and --relocate flags.
Bug: 15358152
Change-Id: I91166c62dd1ab80e5cbcb7883a2cd0d56afca32d
|
| |
| |
| |
| | |
Change-Id: I59e97448bf29778769b79b51ee4ea43f43493d96
|
| |
| |
| |
| | |
Change-Id: I8feeeef569854476d33fdc613182dbe16f7ba53c
|
|/
|
|
| |
Change-Id: I43a40954757f51d49782e70bc28f7c314d6dbe17
|
|
|
|
|
|
|
|
|
| |
Disable 3 run-tests for this configuration that fail for reasons relating to
OOME handling.
Add 012-math to the failing trace tests, it fails due to hitting a file size
limit when running in the interpreter.
Change-Id: Ia58f4c245d9d2d14caf5f2f2f3dcbfa40d4ccadb
|
|
|
|
| |
Change-Id: I7469ecaf98f680e7e642035f3536b00bdd97b486
|
|
|
|
|
|
|
|
|
|
|
|
| |
Make it so that optimizing and trace tests can be chosen to be not run.
mm -j32 test-art
will run all optimizing and trace tests.
mm -j32 test-art ART_TEST_FULL=false
will not run optimizing and trace tests.
mm -j32 test-art ART_TEST_FULL=false ART_TEST_OPTIMIZING=true
will not run trace tests but will run optimizing tests.
Change-Id: I9c04d9489f08fb837da5561d9496c97aee7c4a4a
|
|\ |
|
| |
| |
| |
| | |
Change-Id: I2b058f4433504dc3299c06f5cb0b5ab12f34aa82
|