remove option
authorBrian Demsky <briandemsky@plrg-dock.ics.uci.edu>
Fri, 6 Dec 2019 22:33:40 +0000 (14:33 -0800)
committerBrian Demsky <briandemsky@plrg-dock.ics.uci.edu>
Fri, 6 Dec 2019 22:33:40 +0000 (14:33 -0800)
main.cc
params.h
threads.cc

diff --git a/main.cc b/main.cc
index 5bee8ce6aac0c45e62c34d36c82113f8cdf6892e..ea97d32a071bd3033533f90ddfd3691be362c779 100644 (file)
--- a/main.cc
+++ b/main.cc
@@ -23,7 +23,6 @@ void param_defaults(struct model_params *params)
        params->uninitvalue = 0;
        params->maxexecutions = 10;
        params->nofork = false;
-       params->threadsnocleanup = false;
 }
 
 static void print_usage(struct model_params *params)
@@ -37,7 +36,7 @@ static void print_usage(struct model_params *params)
                "Distributed under the GPLv2\n"
                "Written by Brian Norris and Brian Demsky\n"
                "\n"
-               "Usage: [MODEL-CHECKER OPTIONS] -- [PROGRAM ARGS]\n"
+               "Usage: C11TESTER=[MODEL-CHECKER OPTIONS]\n"
                "\n"
                "MODEL-CHECKER OPTIONS can be any of the model-checker options listed below. Arguments\n"
                "provided after the `--' (the PROGRAM ARGS) are passed to the user program.\n"
@@ -56,11 +55,7 @@ static void print_usage(struct model_params *params)
                "-x, --maxexec=NUM           Maximum number of executions.\n"
                "                            Default: %u\n"
                "                            -o help for a list of options\n"
-               "-n                          No fork\n"
-#ifdef TLS
-               "-d                          Don't allow threads to cleanup\n"
-#endif
-               " --                         Program arguments follow.\n\n",
+               "-n                          No fork\n\n"
                params->verbose,
                params->uninitvalue,
                params->maxexecutions);
@@ -88,7 +83,7 @@ bool install_plugin(char * name) {
 }
 
 void parse_options(struct model_params *params) {
-       const char *shortopts = "hdnt:o:u:x:v::";
+       const char *shortopts = "hnt:o:u:x:v::";
        const struct option longopts[] = {
                {"help", no_argument, NULL, 'h'},
                {"verbose", optional_argument, NULL, 'v'},
@@ -124,9 +119,6 @@ void parse_options(struct model_params *params) {
                case 'h':
                        print_usage(params);
                        break;
-               case 'd':
-                       params->threadsnocleanup = true;
-                       break;
                case 'n':
                        params->nofork = true;
                        break;
index 9a2cf3b96f99f5c864d4be1903b4eecb72c2fc71..7f749cae6fc082d1551fdfb86f0c5728cf176fbc 100644 (file)
--- a/params.h
+++ b/params.h
@@ -9,7 +9,6 @@ struct model_params {
        unsigned int uninitvalue;
        int maxexecutions;
        bool nofork;
-       bool threadsnocleanup;
 
        /** @brief Verbosity (0 = quiet; 1 = noisy; 2 = noisier) */
        int verbose;
index 5720ff77b45767432cc455a46ff94e8bc8b0d259..8ee3bf975e732d7c943e512005c2dfd9eb218118 100644 (file)
@@ -350,7 +350,7 @@ void Thread::complete()
        if (stack)
                stack_free(stack);
 #ifdef TLS
-       if (this != model->getInitThread() && !model->getParams()->threadsnocleanup) {
+       if (this != model->getInitThread()) {
                ASSERT(thread_current()==NULL);
                real_pthread_mutex_unlock(&mutex2);
                real_pthread_join(thread, NULL);