summaryrefslogtreecommitdiffstats
path: root/compiler/dex/quick/local_optimizations.cc
diff options
context:
space:
mode:
authorbuzbee <buzbee@google.com>2013-09-05 17:13:19 -0700
committerbuzbee <buzbee@google.com>2013-09-06 15:55:51 -0700
commit56c717860df2d71d66fb77aa77f29dd346e559d3 (patch)
tree672cc501b98791939cab65b7b47329e90b73c005 /compiler/dex/quick/local_optimizations.cc
parentc7cd72c5ad65589b68e6aea185200fc2dbb0e850 (diff)
downloadandroid_art-56c717860df2d71d66fb77aa77f29dd346e559d3.tar.gz
android_art-56c717860df2d71d66fb77aa77f29dd346e559d3.tar.bz2
android_art-56c717860df2d71d66fb77aa77f29dd346e559d3.zip
Compile-time tuning
Specialized the dataflow iterators and did a few other minor tweaks. Showing ~5% compile-time improvement in a single-threaded environment; less in multi-threaded (presumably because we're blocked by something else). Change-Id: I2e2ed58d881414b9fc97e04cd0623e188259afd2
Diffstat (limited to 'compiler/dex/quick/local_optimizations.cc')
-rw-r--r--compiler/dex/quick/local_optimizations.cc5
1 files changed, 2 insertions, 3 deletions
diff --git a/compiler/dex/quick/local_optimizations.cc b/compiler/dex/quick/local_optimizations.cc
index 630e990733..41adb946a2 100644
--- a/compiler/dex/quick/local_optimizations.cc
+++ b/compiler/dex/quick/local_optimizations.cc
@@ -99,12 +99,11 @@ void Mir2Lir::ApplyLoadStoreElimination(LIR* head_lir, LIR* tail_lir) {
int native_reg_id;
if (cu_->instruction_set == kX86) {
// If x86, location differs depending on whether memory/reg operation.
- native_reg_id = (GetTargetInstFlags(this_lir->opcode) & IS_STORE) ? this_lir->operands[2]
- : this_lir->operands[0];
+ native_reg_id = (target_flags & IS_STORE) ? this_lir->operands[2] : this_lir->operands[0];
} else {
native_reg_id = this_lir->operands[0];
}
- bool is_this_lir_load = GetTargetInstFlags(this_lir->opcode) & IS_LOAD;
+ bool is_this_lir_load = target_flags & IS_LOAD;
LIR* check_lir;
/* Use the mem mask to determine the rough memory location */
uint64_t this_mem_mask = (this_lir->use_mask | this_lir->def_mask) & ENCODE_MEM;