From a014776f4474579d4dfc72e3374ba45c6f6e5f35 Mon Sep 17 00:00:00 2001 From: Chao-ying Fu Date: Fri, 6 Jun 2014 18:38:49 -0700 Subject: x86_64: Add long bytecode supports (2/2) This patch adds implementation of math and complex long bytcodes, and basic long arithmetic. Change-Id: I811397d7e0ee8ad0d12b23d32ba58314d479d714 Signed-off-by: Chao-ying Fu Signed-off-by: Serguei Katkov Signed-off-by: Dmitry Petrochenko Signed-off-by: Mark Mendell --- compiler/dex/quick/gen_common.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'compiler/dex/quick/gen_common.cc') diff --git a/compiler/dex/quick/gen_common.cc b/compiler/dex/quick/gen_common.cc index 62c81d05bb..69ca7154e4 100644 --- a/compiler/dex/quick/gen_common.cc +++ b/compiler/dex/quick/gen_common.cc @@ -1959,7 +1959,7 @@ static void GenArithOpLongImpl(Mir2Lir* mir_to_lir, CompilationUnit* cu, Instruc switch (opcode) { case Instruction::NOT_LONG: - if (cu->instruction_set == kArm64) { + if (cu->instruction_set == kArm64 || cu->instruction_set == kX86_64) { mir_to_lir->GenNotLong(rl_dest, rl_src2); return; } @@ -2009,7 +2009,7 @@ static void GenArithOpLongImpl(Mir2Lir* mir_to_lir, CompilationUnit* cu, Instruc break; case Instruction::DIV_LONG: case Instruction::DIV_LONG_2ADDR: - if (cu->instruction_set == kArm64) { + if (cu->instruction_set == kArm64 || cu->instruction_set == kX86_64) { mir_to_lir->GenDivRemLong(opcode, rl_dest, rl_src1, rl_src2, /*is_div*/ true); return; } @@ -2020,7 +2020,7 @@ static void GenArithOpLongImpl(Mir2Lir* mir_to_lir, CompilationUnit* cu, Instruc break; case Instruction::REM_LONG: case Instruction::REM_LONG_2ADDR: - if (cu->instruction_set == kArm64) { + if (cu->instruction_set == kArm64 || cu->instruction_set == kX86_64) { mir_to_lir->GenDivRemLong(opcode, rl_dest, rl_src1, rl_src2, /*is_div*/ false); return; } -- cgit v1.2.3-59-g8ed1b