Support IPv4 multicast in P4 fabric pipeline

- Multicast can use the same table as unicast. Merge into one.
- Allow masked destination MAC in classifier table

Note:
- Pipeliner now translates all exact MAC match to masked match with FF:FF:FF:FF:FF:FF mask.
- Interpreter now only uses masked src/dst MAC

Change-Id: Ibd27ebfb2d72ba929031f07a29927eb6f1844f11
(cherry picked from commit 0865779b66a59a623856b1353615e462af5575c5)
diff --git a/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/p4info.txt b/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/p4info.txt
index 53a3653..f82a75e 100644
--- a/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/p4info.txt
+++ b/pipelines/fabric/src/main/resources/p4c-out/fabric-int/bmv2/default/p4info.txt
@@ -101,7 +101,7 @@
     id: 2
     name: "hdr.ethernet.dst_addr"
     bitwidth: 48
-    match_type: EXACT
+    match_type: TERNARY
   }
   match_fields {
     id: 3
@@ -171,9 +171,9 @@
 }
 tables {
   preamble {
-    id: 33586372
-    name: "FabricIngress.forwarding.unicast_v4"
-    alias: "unicast_v4"
+    id: 33562650
+    name: "FabricIngress.forwarding.routing_v4"
+    alias: "routing_v4"
   }
   match_fields {
     id: 1
@@ -182,13 +182,13 @@
     match_type: LPM
   }
   action_refs {
-    id: 16828976
+    id: 16777434
   }
   action_refs {
     id: 16800567
     annotations: "@defaultonly()"
   }
-  direct_resource_ids: 318768492
+  direct_resource_ids: 318811107
   size: 1024
   idle_timeout_behavior: NO_TIMEOUT
 }
@@ -747,9 +747,9 @@
 }
 actions {
   preamble {
-    id: 16828976
-    name: "FabricIngress.forwarding.set_next_id_unicast_v4"
-    alias: "set_next_id_unicast_v4"
+    id: 16777434
+    name: "FabricIngress.forwarding.set_next_id_routing_v4"
+    alias: "set_next_id_routing_v4"
   }
   params {
     id: 1
@@ -1487,14 +1487,14 @@
 }
 direct_counters {
   preamble {
-    id: 318768492
-    name: "FabricIngress.forwarding.unicast_v4_counter"
-    alias: "unicast_v4_counter"
+    id: 318811107
+    name: "FabricIngress.forwarding.routing_v4_counter"
+    alias: "routing_v4_counter"
   }
   spec {
     unit: BOTH
   }
-  direct_table_id: 33586372
+  direct_table_id: 33562650
 }
 direct_counters {
   preamble {