Fix ClassHelper::GetDirectInterface for proxy class

Returns only the direct interfaces implemented by the proxy class. We collect
them from the "interfaces" field in the synthesized proxy class instead of
looking into the iftable.

Also updates proxy_test to reflect this change.

Bug: 13689930
Change-Id: I926e2ed30f9e65972d700a378671cec82dedaa7c
Quick compiler: add comment to Arm encoding

A question from an AOSP contributer demonstrated the need for
explanation of a seemingly odd encoding for vldrd/vldrs.  In short,
we add a "def" bit for lr on those instructions to cover the cases
in which we have to materialize a new base pointer at assembly
time using lr as a temp register.

Change-Id: I22c5740218a90e0ff387c6aac2bd20cc98eece85
Merge "Quick compiler: add comment to Arm encoding"
Build changes to build multilib tests

Test files will be emitted into directories for both first and second
target architectures. Going with the naming scheme for binaries,
single-architecture and 32b cases have the standard name, and
64b goes into a directory with "64" suffix.

In multi-architecture setups, the default concrete test targets are
extended with a "32" and "64" suffix, e.g., test-art-target-oat-JniTest64.
The suffix-less form is linked to the primary architecture target (usually 64).
That means running combined targets, e.g., test-art-target-oat, will only
test the primary architecture right now.

Fixed target run tests calling the right dalvikvm. Fixed library search
path for tests derived from CommonRuntimeTest.

Missing in this work-in-progress is correct handling of dex2oat for the
secondary architecture. To make it work on 64b, comment out line 101
in build/Android.executable.mk

Change-Id: I3d260994e6efe8b73b56c71994053cc9392943a9
Merge "Build changes to build multilib tests"
Fix Thread offsets for ARM64 assembly

Change-Id: I8d0516091b5a865f415e1446425203785e607f8a
Fix running with DlMalloc instead of RosAlloc.

Bug: 13748830
Bug: 13744490

Change-Id: Ieec97cf58ebf9864a40ee85aae582cdcf3f27c0c
Fix ThreadStress, unify ANR lock descriptions.

Bug: 13323656
Change-Id: I902825a847af9aa570ed79701409298e3532bebf
Merge "Fix running with DlMalloc instead of RosAlloc."
Merge "Fix Thread offsets for ARM64 assembly"
Merge "Fix ThreadStress, unify ANR lock descriptions."
Add GenBarrier() calls to terminate all IT blocks.

This is needed to prevent things like load hoisting from putting
instructions inside the IT block.

Bug: 13749123
Change-Id: I98a010453b163ac20a90f626144f798fc06e65a9
Merge "Add GenBarrier() calls to terminate all IT blocks."
Use TEST_ART_RUN_TESTS consistently

Change-Id: I0242702886d53a39f2604e209a0763ff82278e1c
Merge "Use TEST_ART_RUN_TESTS consistently"
Cleanup transaction support

Updates Thread::CreateInternalStackTrace to support both transactional and
non-transactional modes using template.

Generalizes non-transactional mode for invariant fields (which are set only
once).

Removes ArrayLog::VisitRoots as we never create Array logs of ObjectArray. As
ObjectArray elements are set using Object::SetFieldObject, they are already
recorded in the object logs: the object is the array itself and the offset
corresponds to the element index in this array. And also checks we never log
ObjectArray in array logs.

Fixes location of thrown exception when calling native method during class
initialization.

Change-Id: Idbc368d3b8292b85ff40bc8a7c559e085477bf89
Merge "Cleanup transaction support"
Merge "Fix ClassHelper::GetDirectInterface for proxy class"
auto-merger: merge in from aosp/master