summaryrefslogtreecommitdiffstats
path: root/compiler/optimizing/code_generator.h
diff options
context:
space:
mode:
authorRoland Levillain <rpl@google.com>2014-11-27 18:31:21 +0000
committerRoland Levillain <rpl@google.com>2014-11-27 18:36:14 +0000
commit6d0e483dd2e0b63e952de060738c10e2abd12ff7 (patch)
treeb396377926d2645f0df982f0b03c41149632a3de /compiler/optimizing/code_generator.h
parent7c97e855ceb9b45a1cc738fb144bd3312c4e09a8 (diff)
downloadart-6d0e483dd2e0b63e952de060738c10e2abd12ff7.tar.gz
art-6d0e483dd2e0b63e952de060738c10e2abd12ff7.tar.bz2
art-6d0e483dd2e0b63e952de060738c10e2abd12ff7.zip
Add support for long-to-float in the optimizing compiler.
- Add support for the long-to-float Dex instruction in the optimizing compiler. - Have art::x86_64::X86_64Assembler::cvtsi2ss work with 64-bit operands. - Generate x86, x86-64 and ARM (but not ARM64) code for long to float HTypeConversion nodes. - Add related tests to test/422-type-conversion. Change-Id: Ic983cbeb1ae2051add40bc519a8f00a6196166c9
Diffstat (limited to 'compiler/optimizing/code_generator.h')
-rw-r--r--compiler/optimizing/code_generator.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/optimizing/code_generator.h b/compiler/optimizing/code_generator.h
index f906eb8c05..321a31f596 100644
--- a/compiler/optimizing/code_generator.h
+++ b/compiler/optimizing/code_generator.h
@@ -30,6 +30,11 @@ namespace art {
static size_t constexpr kVRegSize = 4;
static size_t constexpr kUninitializedFrameSize = 0;
+// Binary encoding of 2^32 for type double.
+static int64_t constexpr k2Pow32EncodingForDouble = INT64_C(0x41F0000000000000);
+// Binary encoding of 2^31 for type double.
+static int64_t constexpr k2Pow31EncodingForDouble = INT64_C(0x41E0000000000000);
+
class Assembler;
class CodeGenerator;
class DexCompilationUnit;