OSDN Git Service

Move compiled methods to use AtomicMethodRefMap
authorMathieu Chartier <mathieuc@google.com>
Wed, 23 Nov 2016 21:45:58 +0000 (13:45 -0800)
committerMathieu Chartier <mathieuc@google.com>
Wed, 30 Nov 2016 21:09:14 +0000 (13:09 -0800)
commitacab8d485bd9c007b991f482ed01264d527b63d6
treefb18b6151ac3556f2baf8ac326edebb92c0991b8
parent392fb010a71b99fdb6a67929cb97171e97523b13
Move compiled methods to use AtomicMethodRefMap

Use AtomicMethodRefMap to avoid locking and map costs.

Native RAM usage for interpret-only compile FB:
71270192B -> 64117168B

Perf:
CompilerDriver::GetCompiledMethod: 0.88% -> 0.04%
Mutex::ExclusiveLock: 1.55% -> 1.05%

Bug: 32641252

Test: test-art-host-run-test

Change-Id: I146e7bf2f3328b4fa84f2cc19d591f4da82dccfc
compiler/driver/compiler_driver.cc
compiler/driver/compiler_driver.h
compiler/utils/atomic_method_ref_map.h
compiler/utils/atomic_method_ref_map_test.cc