Implement EnsureCapacity, PushLocalFrame, and PopLocalFrame.

These are as good as the old implementations, except that unbalanced usages
won't be cleaned up completely (you'll slowly grow the vector in your JNIEnv).

This patch also renames IndirectReferenceTable::Contains to the less misleading
ContainsDirectPointer, and fixes JNI::GetObjectRefType to not claim that
invalid local references are locals indefinitely.

We also now include detail messages in OOMEs where possible. (Test 061 still
passes.) We still log regardless, since OOME should be a rare thing.

Change-Id: I77b2f44ea066e92c517e5c96700ec533727b9c78
7 files changed
tree: 469f865b0cca1c8388aad9b656258a7eef645c8c
  2. build/
  3. oat_process/
  4. oat_runtime/
  5. src/
  6. test/
  7. tools/