X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FRtsFlags.c;h=9b3334157b4b6d1d957f8b725a51b7959b988560;hb=18896fa2b06844407fd1e0d3f85cd3db97a96ff4;hp=b0dd42b38ced2042fc843b108cb3e0965c9b658a;hpb=f30d527344db528618f64a25250a3be557d9f287;p=ghc-hetmet.git diff --git a/rts/RtsFlags.c b/rts/RtsFlags.c index b0dd42b..9b33341 100644 --- a/rts/RtsFlags.c +++ b/rts/RtsFlags.c @@ -156,7 +156,6 @@ void initRtsFlagsDefaults(void) #ifdef THREADED_RTS RtsFlags.ParFlags.nNodes = 1; RtsFlags.ParFlags.migrate = rtsTrue; - RtsFlags.ParFlags.wakeupMigrate = rtsFalse; RtsFlags.ParFlags.parGcEnabled = 1; RtsFlags.ParFlags.parGcGen = 0; RtsFlags.ParFlags.parGcLoadBalancingEnabled = rtsTrue; @@ -323,7 +322,6 @@ usage_text[] = { " (default: 1, -qb alone turns off load-balancing)", " -qa Use the OS to set thread affinity (experimental)", " -qm Don't automatically migrate threads between CPUs", -" -qw Migrate a thread to the current CPU when it is woken up", #endif " --install-signal-handlers=", " Install signal handlers (default: yes)", @@ -454,16 +452,9 @@ setupRtsFlags(int *argc, char *argv[], int *rts_argc, char *rts_argv[]) mode = PGM; } else if (mode == RTS && *rts_argc < MAX_RTS_ARGS-1) { - if ((rtsOptsEnabled == rtsOptsAll) || - strequal(argv[arg], "--info")) { rts_argv[(*rts_argc)++] = argv[arg]; } - else { - errorBelch("Most RTS options are disabled. Link with -rtsopts to enable them."); - stg_exit(EXIT_FAILURE); - } - } - else if (mode == PGM) { + else if (mode == PGM) { argv[(*argc)++] = argv[arg]; } else { @@ -485,7 +476,25 @@ setupRtsFlags(int *argc, char *argv[], int *rts_argc, char *rts_argv[]) error = rtsTrue; } else { - switch(rts_argv[arg][1]) { + + switch(rts_argv[arg][1]) { + case '-': + if (strequal("info", &rts_argv[arg][2])) { + printRtsInfo(); + stg_exit(0); + } + break; + default: + break; + } + + if (rtsOptsEnabled != rtsOptsAll) + { + errorBelch("Most RTS options are disabled. Link with -rtsopts to enable them."); + stg_exit(EXIT_FAILURE); + } + + switch(rts_argv[arg][1]) { /* process: general args, then PROFILING-only ones, then CONCURRENT-only, TICKY-only (same order as defined in @@ -1056,10 +1065,10 @@ error = rtsTrue; case 'm': RtsFlags.ParFlags.migrate = rtsFalse; break; - case 'w': - RtsFlags.ParFlags.wakeupMigrate = rtsTrue; - break; - default: + case 'w': + // -qw was removed; accepted for backwards compat + break; + default: errorBelch("unknown RTS option: %s",rts_argv[arg]); error = rtsTrue; break;