Browse Source

* fixed bug #1472 (merged)

peter 24 years ago
parent
commit
ed290df007
3 changed files with 21 additions and 6 deletions
  1. 9 4
      compiler/i386/ag386att.pas
  2. 6 1
      compiler/i386/ag386int.pas
  3. 6 1
      compiler/i386/ag386nsm.pas

+ 9 - 4
compiler/i386/ag386att.pas

@@ -178,9 +178,11 @@ interface
                  s:=s+'+'+tostr(offset)
                  s:=s+'+'+tostr(offset)
                 else
                 else
                  s:=s+tostr(offset);
                  s:=s+tostr(offset);
-              end;
+              end
+            else if (index=R_NO) and (base=R_NO) and not assigned(symbol) then
+              s:=s+'0';
             if (index<>R_NO) and (base=R_NO) then
             if (index<>R_NO) and (base=R_NO) then
-             Begin
+             begin
                s:=s+'(,'+att_reg2str[index];
                s:=s+'(,'+att_reg2str[index];
                if scalefactor<>0 then
                if scalefactor<>0 then
                 s:=s+','+tostr(scalefactor)+')'
                 s:=s+','+tostr(scalefactor)+')'
@@ -192,7 +194,7 @@ interface
               s:=s+'('+att_reg2str[base]+')'
               s:=s+'('+att_reg2str[base]+')'
              else
              else
               if (index<>R_NO) and (base<>R_NO) then
               if (index<>R_NO) and (base<>R_NO) then
-               Begin
+               begin
                  s:=s+'('+att_reg2str[base]+','+att_reg2str[index];
                  s:=s+'('+att_reg2str[base]+','+att_reg2str[index];
                  if scalefactor<>0 then
                  if scalefactor<>0 then
                   s:=s+','+tostr(scalefactor)+')'
                   s:=s+','+tostr(scalefactor)+')'
@@ -957,7 +959,10 @@ finalization
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.6  2001-04-18 22:02:00  peter
+  Revision 1.7  2001-04-21 12:09:00  peter
+    * fixed bug 1472 (merged)
+
+  Revision 1.6  2001/04/18 22:02:00  peter
     * registration of targets and assemblers
     * registration of targets and assemblers
 
 
   Revision 1.5  2001/04/13 01:22:17  peter
   Revision 1.5  2001/04/13 01:22:17  peter

+ 6 - 1
compiler/i386/ag386int.pas

@@ -162,6 +162,8 @@ interface
            s:=s+tostr(offset)
            s:=s+tostr(offset)
          else if (offset>0) then
          else if (offset>0) then
            s:=s+'+'+tostr(offset);
            s:=s+'+'+tostr(offset);
+         if s[length(s)]='[' then
+           s:=s+'0';
          s:=s+']';
          s:=s+']';
         end;
         end;
        getreferencestring:=s;
        getreferencestring:=s;
@@ -793,7 +795,10 @@ finalization
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.10  2001-04-18 22:02:00  peter
+  Revision 1.11  2001-04-21 12:09:00  peter
+    * fixed bug 1472 (merged)
+
+  Revision 1.10  2001/04/18 22:02:00  peter
     * registration of targets and assemblers
     * registration of targets and assemblers
 
 
   Revision 1.9  2001/04/13 01:22:17  peter
   Revision 1.9  2001/04/13 01:22:17  peter

+ 6 - 1
compiler/i386/ag386nsm.pas

@@ -186,6 +186,8 @@ interface
            s:=s+tostr(offset)
            s:=s+tostr(offset)
          else if (offset>0) then
          else if (offset>0) then
            s:=s+'+'+tostr(offset);
            s:=s+'+'+tostr(offset);
+         if s[length(s)]='[' then
+           s:=s+'0';
          s:=s+']';
          s:=s+']';
         end;
         end;
        getreferencestring:=s;
        getreferencestring:=s;
@@ -857,7 +859,10 @@ finalization
 end.
 end.
 {
 {
   $Log$
   $Log$
-  Revision 1.8  2001-04-18 22:02:00  peter
+  Revision 1.9  2001-04-21 12:09:00  peter
+    * fixed bug 1472 (merged)
+
+  Revision 1.8  2001/04/18 22:02:00  peter
     * registration of targets and assemblers
     * registration of targets and assemblers
 
 
   Revision 1.7  2001/04/13 01:22:17  peter
   Revision 1.7  2001/04/13 01:22:17  peter