sim: cpu: fix SMP msg prefix helper
authorMike Frysinger <vapier@gentoo.org>
Sun, 25 Dec 2022 04:43:18 +0000 (23:43 -0500)
committerMike Frysinger <vapier@gentoo.org>
Sun, 25 Dec 2022 07:09:17 +0000 (02:09 -0500)
This code fails to compile when SMP is enabled due to some obvious
errors.  Fix those and change the logic to avoid CPP to prevent any
future rot from creeping back in.

sim/common/sim-utils.c

index 259b14cce295a6bf4dcc53a32e6a5b3ea750f0ab..d4a624c3b6ffd7e6411567de3fdb0a5545ab7fb3 100644 (file)
@@ -123,14 +123,17 @@ sim_cpu_lookup (SIM_DESC sd, const char *cpu_name)
 const char *
 sim_cpu_msg_prefix (sim_cpu *cpu)
 {
-#if MAX_NR_PROCESSORS == 1
-  return "";
-#else
   static char *prefix;
 
+  if (MAX_NR_PROCESSORS == 1)
+    return "";
+
   if (prefix == NULL)
     {
+      SIM_DESC sd = CPU_STATE (cpu);
       int maxlen = 0;
+      int i;
+
       for (i = 0; i < MAX_NR_PROCESSORS; ++i)
        {
          int len = strlen (CPU_NAME (STATE_CPU (sd, i)));
@@ -140,8 +143,8 @@ sim_cpu_msg_prefix (sim_cpu *cpu)
       prefix = (char *) xmalloc (maxlen + 5);
     }
   sprintf (prefix, "%s: ", CPU_NAME (cpu));
+
   return prefix;
-#endif
 }
 
 /* Cover fn to sim_io_eprintf.  */