diff options
author | Razvan A Lupusoru <razvan.a.lupusoru@intel.com> | 2013-12-20 17:27:23 -0800 |
---|---|---|
committer | Razvan A Lupusoru <razvan.a.lupusoru@intel.com> | 2014-01-08 11:28:46 -0800 |
commit | bd288c2c1206bc99fafebfb9120a83f13cf9723b (patch) | |
tree | a9f154c4338b888de313517e95ae6a7ee22e7f1f /compiler/dex/compiler_enums.h | |
parent | 51f46ad5edd888b58d706569342c1a0f51e6ae15 (diff) | |
download | android_art-bd288c2c1206bc99fafebfb9120a83f13cf9723b.tar.gz android_art-bd288c2c1206bc99fafebfb9120a83f13cf9723b.tar.bz2 android_art-bd288c2c1206bc99fafebfb9120a83f13cf9723b.zip |
Add conditional move support to x86 and allow GenMinMax to use it
X86 supports conditional moves which is useful for reducing branchiness.
This patch adds support to the x86 backend to generate conditional reg
to reg operations. Both encoder and decoder support was added for cmov.
The x86 version of GenMinMax used for generating inlined version Math.min/max
has been updated to make use of the conditional move support.
Change-Id: I92c5428e40aa8ff88bd3071619957ac3130efae7
Signed-off-by: Razvan A Lupusoru <razvan.a.lupusoru@intel.com>
Diffstat (limited to 'compiler/dex/compiler_enums.h')
-rw-r--r-- | compiler/dex/compiler_enums.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/compiler/dex/compiler_enums.h b/compiler/dex/compiler_enums.h index 5cc906fba9..4650f25a90 100644 --- a/compiler/dex/compiler_enums.h +++ b/compiler/dex/compiler_enums.h @@ -161,6 +161,7 @@ std::ostream& operator<<(std::ostream& os, const OpSize& kind); enum OpKind { kOpMov, + kOpCmov, kOpMvn, kOpCmp, kOpLsl, |