diff options
-rw-r--r-- | backendC/CleanCompilerSources/cocl.c | 3 | ||||
-rw-r--r-- | backendC/CleanCompilerSources/instructions.c | 6 | ||||
-rw-r--r-- | backendC/CleanCompilerSources/settings.c | 1 | ||||
-rw-r--r-- | backendC/CleanCompilerSources/settings.h | 1 |
4 files changed, 9 insertions, 2 deletions
diff --git a/backendC/CleanCompilerSources/cocl.c b/backendC/CleanCompilerSources/cocl.c index c179262..f881fbc 100644 --- a/backendC/CleanCompilerSources/cocl.c +++ b/backendC/CleanCompilerSources/cocl.c @@ -131,6 +131,7 @@ Bool CallCompiler (int argc, char **argv) DoDescriptors=False; ExportLocalLabels=False; AddStrictnessToExportedFunctionTypes=False; + Dynamics=False; StrictDoAnnots = False; StrictDepth = 10;/* 8; */ @@ -193,6 +194,8 @@ Bool CallCompiler (int argc, char **argv) DoFusion=True; else if (strcmp (argv_i,"-seft") == 0) AddStrictnessToExportedFunctionTypes=True; + else if (strcmp (argv_i,"-dynamics") == 0) + Dynamics=True; else if (strncmp (argv_i, "-sa", 3) == 0){ if (!SetStrictOption (argv[i]+3)){ CmdError ("unknown flag %s", argv[i]); diff --git a/backendC/CleanCompilerSources/instructions.c b/backendC/CleanCompilerSources/instructions.c index 3749dc8..62d0a6a 100644 --- a/backendC/CleanCompilerSources/instructions.c +++ b/backendC/CleanCompilerSources/instructions.c @@ -54,9 +54,10 @@ static void error_in_function (char *m) #define N_System 8 #define N_DoFusion 9 #define N_Do64BitArch 10 +#define N_Dynamics 11 #define MINIMUM_N_OPTIONS 9 -#define N_OPTIONS 11 +#define N_OPTIONS 12 static void ConvertOptionsToString (char *optstring) { @@ -78,9 +79,10 @@ static void ConvertOptionsToString (char *optstring) optstring[N_DoWarning] = DoWarning ? '1' : '0'; optstring[N_System] = '0'; - if (DoFusion || ObjectSizes[RealObj]!=2){ + if (DoFusion || ObjectSizes[RealObj]!=2 || Dynamics){ optstring[N_DoFusion] = DoFusion ? '1' : '0'; optstring[N_Do64BitArch] = ObjectSizes[RealObj]!=2 ? '1' : '0'; + optstring[N_Dynamics] = Dynamics ? '1' : '0'; optstring[N_OPTIONS]='\0'; } else optstring[MINIMUM_N_OPTIONS]='\0'; diff --git a/backendC/CleanCompilerSources/settings.c b/backendC/CleanCompilerSources/settings.c index edebddb..166b53e 100644 --- a/backendC/CleanCompilerSources/settings.c +++ b/backendC/CleanCompilerSources/settings.c @@ -24,6 +24,7 @@ Bool ListOptimizations = False; Bool DoDescriptors = False; Bool ExportLocalLabels = False; Bool AddStrictnessToExportedFunctionTypes = False; +Bool Dynamics = False; Bool DoProfiling=False; /* no longer used by memory profiler */ Bool DoTimeProfiling=False; diff --git a/backendC/CleanCompilerSources/settings.h b/backendC/CleanCompilerSources/settings.h index 6fdd495..678106e 100644 --- a/backendC/CleanCompilerSources/settings.h +++ b/backendC/CleanCompilerSources/settings.h @@ -22,6 +22,7 @@ extern Bool ListOptimizations; extern Bool ExportLocalLabels; extern Bool AddStrictnessToExportedFunctionTypes; +extern Bool Dynamics; extern Bool DoProfiling; extern Bool DoTimeProfiling; |