diff options
Diffstat (limited to 'compiler')
| -rw-r--r-- | compiler/dex/quick/mir_to_lir.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/dex/quick/mir_to_lir.cc b/compiler/dex/quick/mir_to_lir.cc index 34e5e25efe..bd4936b290 100644 --- a/compiler/dex/quick/mir_to_lir.cc +++ b/compiler/dex/quick/mir_to_lir.cc @@ -586,6 +586,9 @@ void Mir2Lir::CompileDalvikInstruction(MIR* mir, BasicBlock* bb, LIR* label_list case Instruction::MOVE_FROM16: case Instruction::MOVE_OBJECT_FROM16: StoreValue(rl_dest, rl_src[0]); + if (rl_src[0].is_const && (mir_graph_->ConstantValue(rl_src[0]) == 0)) { + Workaround7250540(rl_dest, RegStorage::InvalidReg()); + } break; case Instruction::MOVE_WIDE: |