aboutsummaryrefslogtreecommitdiff
path: root/backendC
diff options
context:
space:
mode:
Diffstat (limited to 'backendC')
-rw-r--r--backendC/CleanCompilerSources/instructions.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/backendC/CleanCompilerSources/instructions.c b/backendC/CleanCompilerSources/instructions.c
index 3abb4e0..00d422d 100644
--- a/backendC/CleanCompilerSources/instructions.c
+++ b/backendC/CleanCompilerSources/instructions.c
@@ -3,8 +3,6 @@
Authors: Sjaak Smetsers & John van Groningen
*/
-#pragma segment instructions
-
#include "compiledefines.h"
#include "comsupport.h"
@@ -55,9 +53,10 @@ static void error_in_function (char *m)
#define N_DoWarning 7
#define N_System 8
#define N_DoFusion 9
+#define N_Do64BitArch 10
#define MINIMUM_N_OPTIONS 9
-#define N_OPTIONS 10
+#define N_OPTIONS 11
static void ConvertOptionsToString (char *optstring)
{
@@ -78,8 +77,10 @@ static void ConvertOptionsToString (char *optstring)
*/
optstring[N_DoWarning] = DoWarning ? '1' : '0';
optstring[N_System] = '0';
- if (DoFusion){
- optstring[N_DoFusion]='1';
+
+ if (DoFusion || ObjectSizes[RealObj]!=2){
+ optstring[N_DoFusion] = DoFusion ? '1' : '0';
+ optstring[N_Do64BitArch] = ObjectSizes[RealObj]!=2 ? '1' : '0';
optstring[N_OPTIONS]='\0';
} else
optstring[MINIMUM_N_OPTIONS]='\0';