Refactor ClassLinker::LinkInterfaceMethods().

Add a helper class and split LinkInterfaceMethods() into
several functions to improve readability. Even with this
change, it is still almost 250 lines long.

Fix the method array reallocation to use the appropriate
linear allocator for the class's defining loader. Given that
this is a native reallocation, failure to reallocate would
result in an abort, so CHECK() that we get a non-null array
instead of expecting a null and asserting a pending OOME.

Test: m test-art-host
Change-Id: I8ff8257e4271ae8c975ea4b33fd8af36e1a1f77e
2 files changed