]> git.wh0rd.org - ICEs.git/blobdiff - bfin-4845/trace.i.8
more
[ICEs.git] / bfin-4845 / trace.i.8
diff --git a/bfin-4845/trace.i.8 b/bfin-4845/trace.i.8
new file mode 100644 (file)
index 0000000..a673033
--- /dev/null
@@ -0,0 +1,35 @@
+int test_bit(int nr, const void *addr)
+{
+       int *a;
+       int mask;
+       int nr_5;
+       int nr_1f;
+       a = (int *)addr;
+       nr_5 = nr >> 5;
+       a += nr_5;
+       nr_1f = nr & 0x1f;
+       mask = 1 << nr_1f;
+       if (mask & *a)
+               return 1;
+       else
+               return 0;
+}
+
+struct {
+       struct { int disabled; } *data[1];
+} global_trace;
+
+struct {
+       unsigned long bits[1];
+} tracing_cpumask;
+
+foo()
+{
+       int cpu;
+       for (cpu = 0; cpu < 1; cpu++) {
+               if (test_bit(cpu, tracing_cpumask.bits))
+                       inc(&global_trace.data[cpu]->disabled);
+               if (!test_bit(cpu, tracing_cpumask.bits))
+                       dec(&global_trace.data[cpu]->disabled);
+       }
+}