diff options
author | Ningsheng Jian <ningsheng.jian@arm.com> | 2014-10-23 13:48:36 +0800 |
---|---|---|
committer | Ian Rogers <irogers@google.com> | 2014-11-05 11:37:37 -0800 |
commit | 675e09b2753c2fcd521bd8f0230a0abf06e9b0e9 (patch) | |
tree | 9a5f41cb1dd1930ae003feeccb4211d59b465e19 /compiler/dex/quick/mips/fp_mips.cc | |
parent | 211d45e059935a7874a1ec89846f03d35ffba29f (diff) | |
download | art-675e09b2753c2fcd521bd8f0230a0abf06e9b0e9.zip art-675e09b2753c2fcd521bd8f0230a0abf06e9b0e9.tar.gz art-675e09b2753c2fcd521bd8f0230a0abf06e9b0e9.tar.bz2 |
ARM: Strength reduction for floating-point division
For floating-point division by power of two constants, generate
multiplication by the reciprocal instead.
Change-Id: I39c79eeb26b60cc754ad42045362b79498c755be
Diffstat (limited to 'compiler/dex/quick/mips/fp_mips.cc')
-rw-r--r-- | compiler/dex/quick/mips/fp_mips.cc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/compiler/dex/quick/mips/fp_mips.cc b/compiler/dex/quick/mips/fp_mips.cc index 4315915..0a7aa99 100644 --- a/compiler/dex/quick/mips/fp_mips.cc +++ b/compiler/dex/quick/mips/fp_mips.cc @@ -113,6 +113,20 @@ void MipsMir2Lir::GenArithOpDouble(Instruction::Code opcode, StoreValueWide(rl_dest, rl_result); } +void MipsMir2Lir::GenMultiplyByConstantFloat(RegLocation rl_dest, RegLocation rl_src1, + int32_t constant) { + // TODO: need mips implementation. + UNUSED(rl_dest, rl_src1, constant); + LOG(FATAL) << "Unimplemented GenMultiplyByConstantFloat in mips"; +} + +void MipsMir2Lir::GenMultiplyByConstantDouble(RegLocation rl_dest, RegLocation rl_src1, + int64_t constant) { + // TODO: need mips implementation. + UNUSED(rl_dest, rl_src1, constant); + LOG(FATAL) << "Unimplemented GenMultiplyByConstantDouble in mips"; +} + void MipsMir2Lir::GenConversion(Instruction::Code opcode, RegLocation rl_dest, RegLocation rl_src) { int op = kMipsNop; |