Implement the direct ByteBuffer JNI functions, GetObjectRefType, and the string region functions.

Also run tests in a consistent (alphabetical) order.

Change-Id: I1bb4f3389e749ec031254d23da349be0397c260d
diff --git a/Android.mk b/Android.mk
index bb688e6..27b4a72 100644
--- a/Android.mk
+++ b/Android.mk
@@ -39,7 +39,7 @@
 test-art: test-art-host test-art-target
 
 define run-host-tests-with
-  $(foreach file,$(ART_HOST_TEST_EXECUTABLES),$(1) $(file) &&) true
+  $(foreach file,$(sort $(ART_HOST_TEST_EXECUTABLES)),$(1) $(file) &&) true
 endef
 
 # "mm test-art-host" to build and run all host tests
@@ -64,7 +64,7 @@
 	adb sync
 	adb shell touch /sdcard/test-art-target
 	adb shell rm /sdcard/test-art-target
-	adb shell sh -c "$(foreach file,$(ART_TARGET_TEST_EXECUTABLES), /system/bin/$(notdir $(file)) &&) touch /sdcard/test-art-target"
+	adb shell sh -c "$(foreach file,$(sort $(ART_TARGET_TEST_EXECUTABLES)), /system/bin/$(notdir $(file)) &&) touch /sdcard/test-art-target"
 	adb pull /sdcard/test-art-target /tmp/
 	rm /tmp/test-art-target