Make compiler/optimizing/ symbols hidden.

Make symbols in compiler/optimizing hidden by a namespace
attribute. The unit intrinsic_objects.{h,cc} is excluded as
it is needed by dex2oat.

As the symbols are no longer exported, gtests are now linked
with the static version of the libartd-compiler library.

libart-compiler.so size:
  - before:
    arm: 2396152
    arm64: 3345280
  - after:
    arm: 2016176 (-371KiB, -15.9%)
    arm64: 2874480 (-460KiB, -14.1%)

Test: m test-art-host-gtest
Test: testrunner.py --host --optimizing --jit
Bug: 142365358
Change-Id: I1fb04a33351f53f00b389a1642e81a68e40912a8
diff --git a/compiler/Android.bp b/compiler/Android.bp
index dfd71f1..8c85173 100644
--- a/compiler/Android.bp
+++ b/compiler/Android.bp
@@ -457,13 +457,16 @@
 
     shared_libs: [
         "libprofiled",
-        "libartd-compiler",
         "libartd-simulator-container",
+        "libartpalette",
         "libvixld",
 
         "libbacktrace",
         "libnativeloader",
     ],
+    static_libs: [
+        "libartd-compiler",
+    ],
 
     target: {
         host: {
@@ -511,7 +514,9 @@
         },
     },
     shared_libs: [
-        "libartd-compiler",
         "libvixld",
     ],
+    static_libs: [
+        "libartd-compiler",
+    ],
 }