diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/compiler_llvm/method_compiler.cc | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/compiler_llvm/method_compiler.cc b/src/compiler_llvm/method_compiler.cc index 98394cfea8..bc47a8d5ce 100644 --- a/src/compiler_llvm/method_compiler.cc +++ b/src/compiler_llvm/method_compiler.cc @@ -1810,7 +1810,13 @@ void MethodCompiler::EmitInsn_FPToInt(uint32_t dex_pc, void MethodCompiler::EmitInsn_FExt(uint32_t dex_pc, Instruction const* insn) { - // UNIMPLEMENTED(WARNING); + + Instruction::DecodedInstruction dec_insn(insn); + + llvm::Value* src_value = EmitLoadDalvikReg(dec_insn.vB_, kFloat, kAccurate); + llvm::Value* result_value = irb_.CreateFPExt(src_value, irb_.getJDoubleTy()); + EmitStoreDalvikReg(dec_insn.vA_, kDouble, kAccurate, result_value); + irb_.CreateBr(GetNextBasicBlock(dex_pc)); } |