Distinguish # apex and # systemapi symbols

Previously, the symbol tag `# apex` was treated the same as `#
systemapi`. With this CL, they have different meanings.

`# systemapi`: APIs that are defined in the platform (the non-updatable
part), and are exposed to unbundled system components like APEX

`# apex`: APIs that are defined in the APEX and are exposed to the
platform or other APEXes

Bug: 239274367
Test: m
Change-Id: I0484ea349656dbbd337e5fe3a5970f0ad275b807
diff --git a/cc/symbolfile/test_symbolfile.py b/cc/symbolfile/test_symbolfile.py
index 0060a74..e17a8d0 100644
--- a/cc/symbolfile/test_symbolfile.py
+++ b/cc/symbolfile/test_symbolfile.py
@@ -246,24 +246,30 @@
         v = self.version
         v_apex = copy(v)
         v_apex.tags = Tags.from_strs(['apex'])
+        v_systemapi = copy(v)
+        v_systemapi.tags = Tags.from_strs(['systemapi'])
 
         self.assertOmit(f, v_apex)
 
         f.apex = True
         self.assertInclude(f, v)
         self.assertInclude(f, v_apex)
+        self.assertOmit(f, v_systemapi)
 
     def test_omit_systemapi(self) -> None:
         f = self.filter
         v = self.version
+        v_apex = copy(v)
+        v_apex.tags = Tags.from_strs(['apex'])
         v_systemapi = copy(v)
         v_systemapi.tags = Tags.from_strs(['systemapi'])
 
         self.assertOmit(f, v_systemapi)
 
-        f.apex = True
+        f.systemapi = True
         self.assertInclude(f, v)
         self.assertInclude(f, v_systemapi)
+        self.assertOmit(f, v_apex)
 
     def test_omit_arch(self) -> None:
         f_arm = self.filter
@@ -321,22 +327,38 @@
 
         s_none = Symbol('foo', Tags())
         s_apex = Symbol('foo', Tags.from_strs(['apex']))
+        s_systemapi = Symbol('foo', Tags.from_strs(['systemapi']))
 
         self.assertOmit(f_none, s_apex)
         self.assertInclude(f_apex, s_none)
         self.assertInclude(f_apex, s_apex)
+        self.assertOmit(f_apex, s_systemapi)
 
     def test_omit_systemapi(self) -> None:
         f_none = self.filter
         f_systemapi = copy(f_none)
-        f_systemapi.apex = True
+        f_systemapi.systemapi = True
 
         s_none = Symbol('foo', Tags())
+        s_apex = Symbol('foo', Tags.from_strs(['apex']))
         s_systemapi = Symbol('foo', Tags.from_strs(['systemapi']))
 
         self.assertOmit(f_none, s_systemapi)
         self.assertInclude(f_systemapi, s_none)
         self.assertInclude(f_systemapi, s_systemapi)
+        self.assertOmit(f_systemapi, s_apex)
+
+    def test_omit_apex_and_systemapi(self) -> None:
+        f = self.filter
+        f.systemapi = True
+        f.apex = True
+
+        s_none = Symbol('foo', Tags())
+        s_apex = Symbol('foo', Tags.from_strs(['apex']))
+        s_systemapi = Symbol('foo', Tags.from_strs(['systemapi']))
+        self.assertInclude(f, s_none)
+        self.assertInclude(f, s_apex)
+        self.assertInclude(f, s_systemapi)
 
     def test_omit_arch(self) -> None:
         f_arm = self.filter