Make failures caused by unimplemented entry points much clearer.

Before:

  F 32344 32344 runtime_linux.cc:183] *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
  F 32344 32344 runtime_linux.cc:183] Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR) fault addr (nil)
  F 32344 32344 libartd.so:-1] 	#00 ??+0x3adc15 [0x5592ac15]
  F 32344 32344 libartd.so:-1] 	#01 ??+0x3ae5b9 [0x5592b5b9]
  F 32344 32344 ??:-1] 	#02 [0x55573410]
  F 32344 32344 libartd.so:-1] 	#03 ??+0x24cb86 [0x557c9b86]
  F 32344 32344 libartd.so:-1] 	#04 ??+0x24d0c3 [0x557ca0c3]
  F 32344 32344 libartd.so:-1] 	#05 art::JNI::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, char*)+0x48 [0x557d76e8]
  F 32344 32344 libartd.so:-1] 	#06 art::CheckJNI::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, char*)+0xce [0x556e5cee]
  F 32344 32344 oatexecd:-1] 	#07 _JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+0x29 [0x8085739]
  F 32344 32344 oatexecd:-1] 	#08 ?? [0x8073c35]
  F 32344 32344 oatexecd:-1] 	#09 ?? [0x8073fd7]
  F 32344 32344 libc.so.6:-1] 	#10 __libc_start_main()+0xe6 [0x55afcbd6]
  F 32344 32344 oatexecd:-1] 	#11 ?? [0x8071fc1]

After:

  F  5527  5527 thread.cc:81] void art::UnimplementedEntryPoint() unimplemented
  F  5527  5527 runtime.cc:160] Runtime aborting...
  F  5527  5527 runtime.cc:160] "main" prio=5 tid=1 Runnable
  F  5527  5527 runtime.cc:160]   | group="main" sCount=0 dsCount=0 obj=0x6121e928 self=0x8c0c618
  F  5527  5527 runtime.cc:160]   | sysTid=5527 nice=0 sched=0/0 cgrp=default handle=1439185696
  F  5527  5527 runtime.cc:160]   | schedstat=( 66360090 54151 15 ) utm=6 stm=0 core=20 HZ=100
  F  5527  5527 runtime.cc:160]   at java.lang.Math.ceil(Native method)
  F  5527  5527 runtime.cc:160]   at java.lang.RealToString.longDigitGenerator(RealToString.java:269)
  F  5527  5527 runtime.cc:160]   at java.lang.RealToString.convertDouble(RealToString.java:111)
  F  5527  5527 runtime.cc:160]   at java.lang.RealToString.doubleToString(RealToString.java:59)
  F  5527  5527 runtime.cc:160]   at java.lang.Double.toString(Double.java:317)
  F  5527  5527 runtime.cc:160]   at java.lang.String.valueOf(String.java:1676)
  F  5527  5527 runtime.cc:160]   at java.io.PrintStream.println(PrintStream.java:479)
  F  5527  5527 runtime.cc:160]   at ReflectionTest.testFieldReflection(ReflectionTest.java:40)
  F  5527  5527 runtime.cc:160]   at ReflectionTest.main(ReflectionTest.java:269)
  F  5527  5527 runtime.cc:160]
  F  5527  5527 libartd.so:-1] 	#00 ??+0x3adcb5 [0x5592acb5]
  F  5527  5527 libartd.so:-1] 	#01 art::Runtime::Abort(char const*, int)+0x99 [0x558a1439]
  F  5527  5527 libartd.so:-1] 	#02 art::LogMessage::~LogMessage()+0x3d0 [0x557dc060]
  F  5527  5527 libartd.so:-1] 	#03 ??+0x33f644 [0x558bc644]
  F  5527  5527 ??:-1] 	#04 [0x60735b9a]
  F  5527  5527 libartd.so:-1] 	#05 ??+0x24cb86 [0x557c9b86]
  F  5527  5527 libartd.so:-1] 	#06 ??+0x24d0c3 [0x557ca0c3]
  F  5527  5527 libartd.so:-1] 	#07 art::JNI::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, char*)+0x48 [0x557d76e8]
  F  5527  5527 libartd.so:-1] 	#08 art::CheckJNI::CallStaticVoidMethodV(_JNIEnv*, _jclass*, _jmethodID*, char*)+0xce [0x556e5cee]
  F  5527  5527 oatexecd:-1] 	#09 _JNIEnv::CallStaticVoidMethod(_jclass*, _jmethodID*, ...)+0x29 [0x8085739]
  F  5527  5527 oatexecd:-1] 	#10 ?? [0x8073c35]
  F  5527  5527 oatexecd:-1] 	#11 ?? [0x8073fd7]
  F  5527  5527 libc.so.6:-1] 	#12 __libc_start_main()+0xe6 [0x55afcbd6]
  F  5527  5527 oatexecd:-1] 	#13 ?? [0x8071fc1]

Change-Id: Id55f10f910ace94de3c985fabfd9a0fe15c3c8bf
2 files changed
tree: a82b6c09bdc3819fc2da571a631401b5973888f2
  1. .gitignore
  2. Android.mk
  3. build/
  4. jdwpspy/
  5. src/
  6. test/
  7. tools/