Tweak perf_counters tests to fit in TCM

Change-Id: I8c9103a7ad2db5716e3d933acd0a597939157e71
diff --git a/tests/kelvin_isa/BUILD b/tests/kelvin_isa/BUILD
index dabb7d2..def4d11 100644
--- a/tests/kelvin_isa/BUILD
+++ b/tests/kelvin_isa/BUILD
@@ -33,7 +33,10 @@
     deps = [
         ":kelvin_test",
     ],
-    tags = ["tcm-incompatible"],
+    copts = select({
+        "//:link_tcm_config": ["-DLINK_TCM"],
+        "//conditions:default": [],
+    }),
 )
 
 kelvin_test(
diff --git a/tests/kelvin_isa/perf_counters.cc b/tests/kelvin_isa/perf_counters.cc
index 5c79d92..a42a2c3 100644
--- a/tests/kelvin_isa/perf_counters.cc
+++ b/tests/kelvin_isa/perf_counters.cc
@@ -66,11 +66,15 @@
     cycle_hi = cycle >> 32;
     cycle2_hi = cycle2 >> 32;
     if (cycle2_hi == cycle_hi) {
+#if !defined(LINK_TCM)
         printf("mcycleh did not increment\r\n");
+#endif
         exit(-1);
     }
     if (cycle2_lo > cycle_lo) {
+#if !defined(LINK_TCM)
         printf("mcycle did not wrap\r\n");
+#endif
         exit(-1);
     }
 
@@ -90,11 +94,15 @@
     instret_hi = instret >> 32;
     instret2_hi = instret2 >> 32;
     if (instret2_hi == instret_hi) {
+#if !defined(LINK_TCM)
         printf("minstreth did not increment\r\n");
+#endif
         exit(-1);
     }
     if (instret2_lo > instret_lo) {
+#if !defined(LINK_TCM)
         printf("minstret did not wrap\r\n");
+#endif
         exit(-1);
     }