don't make -ddump-if-trace imply -no-recomp
[ghc-hetmet.git] / rts / RtsFlags.c
index 4c1f739..f8c8403 100644 (file)
@@ -336,6 +336,7 @@ usage_text[] = {
 "The following run time system options are available:",
 "",
 "  -?       Prints this message and exits; the program is not executed",
+"  --info   Print information about the RTS used by this program",
 "",
 "  -K<size> Sets the maximum stack size (default 8M)  Egs: -K32k   -K512k",
 "  -k<size> Sets the initial thread stack size (default 1k)  Egs: -k4k   -k2m",
@@ -684,18 +685,7 @@ error = rtsTrue;
                   }
                   else if (strequal("info",
                                &rts_argv[arg][2])) {
-                      char *s;
-                      printf("RTS info:\n");
-                      printf("RTS from GHC " ProjectVersion "\n");
-                      printf("RTS way " RtsWay "\n");
-                      printf("Host platform " HostPlatform "\n");
-                      printf("Build platform " BuildPlatform "\n");
-                      printf("Target platform " TargetPlatform "\n");
-                      s = strcmp(GhcUnregisterised, "YES") == 0 ? "un" : "";
-                      printf("Compiler is %sregisterised\n", s);
-                      s = strcmp(GhcEnableTablesNextToCode, "YES") == 0
-                        ? "" : "not ";
-                      printf("Tables are %snext to code\n", s);
+                      printRtsInfo();
                       exit(0);
                   }
                   else {
@@ -1127,6 +1117,12 @@ error = rtsTrue;
                      errorBelch("bad value for -N");
                      error = rtsTrue;
                    }
+#if defined(PROFILING)
+                    if (RtsFlags.ParFlags.nNodes > 1) {
+                        errorBelch("bad option %s: only -N1 is supported with profiling", rts_argv[arg]);
+                     error = rtsTrue;
+                    }
+#endif
                }
                ) break;