OSDN Git Service

CHA for abstract methods.
authorMingyao Yang <mingyao@google.com>
Thu, 5 Jan 2017 21:46:36 +0000 (13:46 -0800)
committerMingyao Yang <mingyao@google.com>
Thu, 19 Jan 2017 18:49:08 +0000 (10:49 -0800)
commitae6c189b9d63ca4c2ae0e952187819c5e442e3c9
treebeb13f852a0e1b3a7867dfd9d64e962d3cb403fb
parenta8b4390a3b817a455b0abdf575922fea6182170d
CHA for abstract methods.

Add the ability to devirtualize abstract method invocation if
an abstract method has only one implementation. Only support in JIT
mode currently.

Test: new testcase and ART_TEST_JIT=true m -j20 test-art-host-run-test
Change-Id: I43da03a9fa9a73840f5eaf207c6611e0913a7f66
compiler/image_writer.cc
compiler/optimizing/inliner.cc
runtime/art_method.cc
runtime/art_method.h
runtime/cha.cc
runtime/cha.h
test/616-cha-abstract/expected.txt [new file with mode: 0644]
test/616-cha-abstract/info.txt [new file with mode: 0644]
test/616-cha-abstract/run [new file with mode: 0644]
test/616-cha-abstract/src/Main.java [new file with mode: 0644]