diff options
Diffstat (limited to 'compiler/optimizing/instruction_builder.cc')
-rw-r--r-- | compiler/optimizing/instruction_builder.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/compiler/optimizing/instruction_builder.cc b/compiler/optimizing/instruction_builder.cc index c8c4ca76fd..b44137d138 100644 --- a/compiler/optimizing/instruction_builder.cc +++ b/compiler/optimizing/instruction_builder.cc @@ -1723,7 +1723,10 @@ uint16_t HInstructionBuilder::LookupQuickenedInfo(uint32_t dex_pc) { if (dex_pc_in_map == dex_pc) { return value_in_map; } else { - skipped_interpreter_metadata_.Put(dex_pc_in_map, value_in_map); + // Overwrite and not Put, as quickened CHECK-CAST has two entries with + // the same dex_pc. This is OK, because the compiler does not care about those + // entries. + skipped_interpreter_metadata_.Overwrite(dex_pc_in_map, value_in_map); } } } |