ART: Fix RegisterNative order

First check for both direct and virtual methods in the current class,
then move to the parent.

Optimize registration by checking first whether the current method
under test is native. This slows down registering implementations
in parent classes. Add a CheckJNI warning for this.

Add a run-test to check the behavior. Fix host comparison testing.

Bug: 19569721

(cherry picked from commit 3f1dc56914177993b1b018bf21ce7d39d7feecda)

Change-Id: I61e77117d96310632aad123d7f1279d0f834dc99
10 files changed