Turn on some basic tsan annotations.

The most useful bit here is that tsan now knows the names of our threads.

Change-Id: I8eef8f31e954ffc373555b392d6d9678d76ead34
diff --git a/build/Android.common.mk b/build/Android.common.mk
index 26d4d22..a4cdc34 100644
--- a/build/Android.common.mk
+++ b/build/Android.common.mk
@@ -59,6 +59,7 @@
 endif
 
 art_debug_cflags := \
+	-DDYNAMIC_ANNOTATIONS_ENABLED=1 \
 	-UNDEBUG
 
 ART_HOST_CFLAGS := $(art_cflags) -DANDROID_SMP=1
diff --git a/build/Android.executable.mk b/build/Android.executable.mk
index 2d9bd23..cc71aac 100644
--- a/build/Android.executable.mk
+++ b/build/Android.executable.mk
@@ -75,6 +75,11 @@
     LOCAL_SHARED_LIBRARIES += libart
   else # debug
     LOCAL_SHARED_LIBRARIES += libartd
+    ifeq ($$(art_target_or_host),target)
+      LOCAL_SHARED_LIBRARIES += libdynamic_annotations
+    else
+      LOCAL_SHARED_LIBRARIES += libdynamic_annotations-host
+    endif
   endif
 
   ifeq ($$(art_target_or_host),target)
@@ -111,4 +116,3 @@
   $(eval $(call build-art-executable,oatdump,$(OATDUMP_SRC_FILES),host,debug))
   $(eval $(call build-art-executable,oatexec,$(OATEXEC_SRC_FILES),host,debug))
 endif
-
diff --git a/build/Android.gtest.mk b/build/Android.gtest.mk
index 92fd96a..a2dc923 100644
--- a/build/Android.gtest.mk
+++ b/build/Android.gtest.mk
@@ -44,6 +44,11 @@
   LOCAL_SRC_FILES := $$(art_gtest_filename)
   LOCAL_C_INCLUDES += $(ART_C_INCLUDES)
   LOCAL_SHARED_LIBRARIES := libartd
+  ifeq ($$(art_target_or_host),target)
+    LOCAL_SHARED_LIBRARIES += libdynamic_annotations
+  else
+    LOCAL_SHARED_LIBRARIES += libdynamic_annotations-host
+  endif
 
   # Mac OS linker doesn't understand --export-dynamic.
   ifneq ($(HOST_OS)-$$(art_target_or_host),darwin-host)
diff --git a/build/Android.libart.mk b/build/Android.libart.mk
index bdd5514..872c6d3 100644
--- a/build/Android.libart.mk
+++ b/build/Android.libart.mk
@@ -70,10 +70,10 @@
   LOCAL_C_INCLUDES += $(ART_C_INCLUDES)
   LOCAL_SHARED_LIBRARIES := liblog libnativehelper
   ifeq ($$(art_target_or_host),target)
-    LOCAL_SHARED_LIBRARIES += libcutils libstlport libz libdl
+    LOCAL_SHARED_LIBRARIES += libcutils libstlport libz libdl libdynamic_annotations
   else # host
     LOCAL_STATIC_LIBRARIES += libcutils
-    LOCAL_SHARED_LIBRARIES += libz-host
+    LOCAL_SHARED_LIBRARIES += libz-host libdynamic_annotations-host
     LOCAL_LDLIBS := -ldl -lpthread
     ifeq ($(HOST_OS),linux)
       LOCAL_LDLIBS += -lrt
diff --git a/build/Android.libarttest.mk b/build/Android.libarttest.mk
index 7726df0..bb2600c 100644
--- a/build/Android.libarttest.mk
+++ b/build/Android.libarttest.mk
@@ -37,12 +37,13 @@
   LOCAL_C_INCLUDES += $(ART_C_INCLUDES)
   ifeq ($$(art_target_or_host),target)
     LOCAL_CFLAGS := $(ART_TARGET_CFLAGS) $(ART_TARGET_DEBUG_CFLAGS)
-    LOCAL_SHARED_LIBRARIES += libdl libstlport
+    LOCAL_SHARED_LIBRARIES += libdl libstlport libdynamic_annotations
     LOCAL_STATIC_LIBRARIES := libgtest
     LOCAL_MODULE_PATH := $(ART_TEST_OUT)
     include $(BUILD_SHARED_LIBRARY)
   else # host
     LOCAL_CFLAGS := $(ART_HOST_CFLAGS) $(ART_HOST_DEBUG_CFLAGS)
+    LOCAL_SHARED_LIBRARIES += libdynamic_annotations-host
     LOCAL_LDLIBS := -ldl -lpthread
     ifeq ($(HOST_OS),linux)
       LOCAL_LDLIBS += -lrt