OSDN Git Service

Fix dex2dex logic
authorMathieu Chartier <mathieuc@google.com>
Tue, 10 Mar 2015 20:45:40 +0000 (13:45 -0700)
committerMathieu Chartier <mathieuc@google.com>
Tue, 10 Mar 2015 21:11:00 +0000 (14:11 -0700)
commit9c8d96163670c0c615daa17a55b3b91b937c12ba
tree2a5fb769bc6c53d76213c5d378022c667c0cec6c
parent39d9fe2eb3552a002c53ed41701c6faffe3cd75a
Fix dex2dex logic

There was a bug in the dex2dex logic where would only dex2dex if
IsCandidateForCompilation was true or method verifier had check casts.

The bug was caused by not adding verification results, which caused
verification_results_->GetVerifiedMethod to not have verified methods
in most cases for interpreter-only and verify-none compilation.

Caffeinemark interpret-only before:
Sieve score = 1184
Loop score = 630
Logic score = 3519
String score = 1532
Float score = 882
Method score = 686
Overall score = 1159

After:
Sieve score = 2820
Loop score = 1942
Logic score = 4694
String score = 1679
Float score = 2288
Method score = 1294
Overall score = 2244

Bug: 17950037

Change-Id: I535ab8784b434b0a8e3f66e3ab4936d10a1b04bf
compiler/dex/verification_results.cc