4a6a67ca93289b232a620bdf8bf30ff8b7b0b428 |
|
27-Jan-2016 |
Serban Constantinescu <serban.constantinescu@linaro.org> |
Remove unused DMB code paths in the ARM64 Optimizing Compiler Currently all ARM64 CPUs will be using the acquire-release code paths. This patch removes the instruction set feature PreferAcquireRelease() as well as all the unused DMB code paths. Change-Id: I61c320d6d685f96c9e260f25eac3593907793830 Signed-off-by: Serban Constantinescu <serban.constantinescu@linaro.org>
|
3887c468d731420e929e6ad3acf190d5431e94fc |
|
12-Aug-2015 |
Roland Levillain <rpl@google.com> |
Remove unnecessary `explicit` qualifiers on constructors. Change-Id: Id12e392ad50f66a6e2251a68662b7959315dc567
|
760d8efd535764e54500bf65a944ed3f2a54c123 |
|
28-Mar-2015 |
Serban Constantinescu <serban.constantinescu@arm.com> |
Opt Compiler: ARM64 goodness This patch: * Switches on PreferAcquireRelease() (used to decide if load/store volatile should use acquire release-semantics or explicit memory barriers). Note that for ARMv8 CPUs we should always prefer this (as proved by synthetic benchmarks on A53, A57 and Denver). * Enables the use of constants for HBoundsCheck Change-Id: I42524451772c05a1c74af73e97a59a95f49ba6d4 Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
|
20f85597828194c12be10d3a927999def066555e |
|
19-Mar-2015 |
Vladimir Marko <vmarko@google.com> |
Fixed layout for dex caches in boot image. Define a fixed layout for dex cache arrays (type, method, string and field arrays) for dex caches in the boot image. This gives those arrays fixed offsets from the boot image code and allows PC-relative addressing of their elements. Use the PC-relative load on arm64 for relevant instructions, i.e. invoke-static, invoke-direct, const-string, const-class, check-cast and instance-of. This reduces the arm64 boot.oat on Nexus 9 by 1.1MiB. This CL provides the infrastructure and shows on the arm64 the gains that we can achieve by having fixed dex cache arrays' layout. To fully use this for the boot images, we need to implement the PC-relative addressing for other architectures. To achieve similar gains for apps, we need to move the dex cache arrays to a .bss section of the oat file. These changes will be implemented in subsequent CLs. (Also remove some compiler_driver.h dependencies to reduce incremental build times.) Change-Id: Ib1859fa4452d01d983fd92ae22b611f45a85d69b
|
579885a26d761f5ba9550f2a1cd7f0f598c2e1e3 |
|
22-Feb-2015 |
Serban Constantinescu <serban.constantinescu@arm.com> |
Opt Compiler: ARM64: Enable explicit memory barriers over acquire/release Implement remaining explicit memory barrier code paths and temporarily enable the use of explicit memory barriers for testing. This CL also enables the use of instruction set features in the ARM64 backend. kUseAcquireRelease has been replaced with PreferAcquireRelease(), which for now is statically set to false (prefer explicit memory barriers). Please note that we still prefer acquire-release for the ARM64 Optimizing Compiler, but we would like to exercise the explicit memory barrier code path too. Change-Id: I84e047ecd43b6fbefc5b82cf532e3f5c59076458 Signed-off-by: Serban Constantinescu <serban.constantinescu@arm.com>
|
d9df67041c54d6416cb53ca8822fe6aa552927e9 |
|
18-Nov-2014 |
Ian Rogers <irogers@google.com> |
Add denver64 as a known ARM64 variant. Other bits of instruction_set_features_test clean up. Bug: 18385422 Change-Id: Ic48cfa0564b41ea140805a700de7c1e51addf49d
|
d582fa4ea62083a7598dded5b82dc2198b3daac7 |
|
06-Nov-2014 |
Ian Rogers <irogers@google.com> |
Instruction set features for ARM64, MIPS and X86. Also, refactor how feature strings are handled so they are additive or subtractive. Make MIPS have features for FPU 32-bit and MIPS v2. Use in the quick compiler rather than #ifdefs that wouldn't have worked in cross-compilation. Add SIMD features for x86/x86-64 proposed in: https://android-review.googlesource.com/#/c/112370/ Bug: 18056890 Change-Id: Ic88ff84a714926bd277beb74a430c5c7d5ed7666
|