diff options
author | Serban Constantinescu <serban.constantinescu@arm.com> | 2014-07-15 17:44:21 +0100 |
---|---|---|
committer | Serban Constantinescu <serban.constantinescu@arm.com> | 2014-07-28 19:17:30 +0100 |
commit | 63999683329612292d534e6be09dbde9480f1250 (patch) | |
tree | 4412a387d3fc4313f98138764ce9197f58f9825c /compiler/dex/compiler_enums.h | |
parent | 3f49507c333b7c8d36620870522a7a1055987ef8 (diff) | |
download | art-63999683329612292d534e6be09dbde9480f1250.tar.gz art-63999683329612292d534e6be09dbde9480f1250.tar.bz2 art-63999683329612292d534e6be09dbde9480f1250.zip |
Revert "Revert "Enable Load Store Elimination for ARM and ARM64""
This patch refactors the implementation of the LoadStoreElimination
optimisation pass. Please note that this pass was disabled and not
functional for any of the backends.
The current implementation tracks aliases and handles DalvikRegs as well
as Heap memory regions. It has been tested and it is known to optimise
out the following:
* Load - Load
* Store - Load
* Store - Store
* Load Literals
Change-Id: I3aadb12a787164146a95bc314e85fa73ad91e12b
Diffstat (limited to 'compiler/dex/compiler_enums.h')
-rw-r--r-- | compiler/dex/compiler_enums.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/dex/compiler_enums.h b/compiler/dex/compiler_enums.h index 346fbb896..dcc67c398 100644 --- a/compiler/dex/compiler_enums.h +++ b/compiler/dex/compiler_enums.h @@ -467,8 +467,13 @@ enum OpFeatureFlags { kIsQuinOp, kIsSextupleOp, kIsIT, + kIsMoveOp, kMemLoad, kMemStore, + kMemVolatile, + kMemScaledx0, + kMemScaledx2, + kMemScaledx4, kPCRelFixup, // x86 FIXME: add NEEDS_FIXUP to instruction attributes. kRegDef0, kRegDef1, |