Implement try/catch/throw in optimizing.

- We currently don't run optimizations in the presence of a try/catch.
- We therefore implement Quick's mapping table.
- Also fix a missing null check on array-length.

Change-Id: I6917dfcb868e75c1cf6eff32b7cbb60b6cfbd68f
diff --git a/test/Android.run-test.mk b/test/Android.run-test.mk
index 7d56271..269f2fb 100644
--- a/test/Android.run-test.mk
+++ b/test/Android.run-test.mk
@@ -312,26 +312,39 @@
   003-omnibus-opcodes \
   004-InterfaceTest \
   004-JniTest \
+  004-ReferenceMap \
+  004-SignalTest \
   004-StackWalk \
   004-UnsafeTest \
+  005-annotations \
   006-args \
   007-count10 \
+  008-exceptions \
   011-array-copy \
   013-math2 \
   016-intern \
   017-float \
   018-stack-overflow \
+  019-wrong-array-type \
   020-string \
+  021-string2 \
   022-interface \
   023-many-interfaces \
+  024-illegal-access \
   026-access \
   028-array-write \
+  029-assert \
   030-bad-finalizer \
   031-class-attributes \
   032-concrete-sub \
+  033-class-init-deadlock \
+  035-enum \
   036-finalizer \
   037-inherit \
   038-inner-null \
+  039-join-main \
+  040-miranda \
+  042-new-instance \
   043-privates \
   044-proxy \
   045-reflect-array \
@@ -342,9 +355,13 @@
   051-thread \
   052-verifier-fun \
   054-uncaught \
+  055-enum-performance \
   056-const-string-jumbo \
   061-out-of-memory \
   063-process-manager \
+  064-field-access \
+  065-mismatched-implements \
+  066-mismatched-super \
   067-preemptive-unpark \
   068-classloader \
   069-field-type \
@@ -352,16 +369,20 @@
   071-dexfile \
   072-precise-gc \
   074-gc-thrash \
+  075-verification-error \
   076-boolean-put \
   077-method-override \
+  078-polymorphic-virtual \
   079-phantom \
   080-oom-throw \
+  081-hot-exceptions \
   082-inline-execute \
   083-compiler-regressions \
   084-class-init \
   085-old-style-inner-class \
   086-null-super \
   087-gc-after-link \
+  088-monitor-verification \
   090-loop-formation \
   092-locale \
   093-serialization \
@@ -370,6 +391,7 @@
   097-duplicate-method \
   098-ddmc \
   100-reflect2 \
+  101-fibonacci \
   102-concurrent-gc \
   103-string-append \
   105-invoke \
@@ -377,20 +399,28 @@
   107-int-math2 \
   109-suspend-check \
   110-field-access \
+  111-unresolvable-exception \
   112-double-math \
   113-multidex \
   117-nopatchoat \
+  118-noimage-dex2oat \
+  119-noimage-patchoat \
   121-modifiers \
+  121-simple-suspend-check \
   122-npe \
   123-compiler-regressions-mt \
   124-missing-classes \
   125-gc-and-classloading \
   126-miranda-multidex \
+  201-built-in-exception-detail-messages \
+  202-thread-oome \
   300-package-override \
   301-abstract-protected \
   303-verification-stress \
   401-optimizing-compiler \
+  402-optimizing-control-flow \
   403-optimizing-long \
+  404-optimizing-allocator \
   405-optimizing-long-allocator \
   406-fields \
   407-arrays \
@@ -407,6 +437,7 @@
   418-const-string \
   419-long-parameter \
   420-const-class \
+  421-exceptions \
   422-type-conversion \
   700-LoadArgRegs \
   701-easy-div-rem \