Browse Source

* set localalignmin to 4 on x86_64-win64, there is no reason to leave it at 8 (same as linux)
* adapt tasm23b

git-svn-id: trunk@38554 -

florian 7 years ago
parent
commit
aa4af19027
2 changed files with 12 additions and 12 deletions
  1. 1 1
      compiler/systems/i_win.pas
  2. 11 11
      tests/test/tasm23b.pp

+ 1 - 1
compiler/systems/i_win.pas

@@ -152,7 +152,7 @@ unit i_win;
                 constalignmax   : 16;
                 varalignmin     : 0;
                 varalignmax     : 16;
-                localalignmin   : 8;
+                localalignmin   : 4;
                 localalignmax   : 16;
                 recordalignmin  : 0;
                 recordalignmax  : 8;

+ 11 - 11
tests/test/tasm23b.pp

@@ -29,22 +29,22 @@ var
   locl: longword;
 asm
   mov eax, locl                             { mov еax, [rbp-08] }
-  mov eax, fs:locl                          { mov еax, fs:[rbp-08] }
-  mov eax, [fs:locl]                        { mov еax, fs:[rbp-08] }
-  mov eax, [fs:[locl]]                      { mov еax, fs:[rbp-08] }
-  mov eax, fs:locl[5]                       { mov еax, fs:[rbp-03] }
-  mov eax, fs:5[locl]                       { mov еax, fs:[rbp-03] }
+  mov eax, fs:locl                          { mov еax, fs:[rbp-04] }
+  mov eax, [fs:locl]                        { mov еax, fs:[rbp-04] }
+  mov eax, [fs:[locl]]                      { mov еax, fs:[rbp-04] }
+  mov eax, fs:locl[5]                       { mov еax, fs:[rbp+01] }
+  mov eax, fs:5[locl]                       { mov еax, fs:[rbp+01] }
 end;
 procedure t2_verify; assembler;
 var
   locl: longword;
 asm
-  mov eax, [rbp-08]     { mov еax, locl        }
-  mov eax, fs:[rbp-08]  { mov еax, fs:locl     }
-  mov eax, fs:[rbp-08]  { mov еax, [fs:locl]   }
-  mov eax, fs:[rbp-08]  { mov еax, [fs:[locl]] }
-  mov eax, fs:[rbp-03]  { mov еax, fs:locl[5]  }
-  mov eax, fs:[rbp-03]  { mov еax, fs:5[locl]  }
+  mov eax, [rbp-04]     { mov еax, locl        }
+  mov eax, fs:[rbp-04]  { mov еax, fs:locl     }
+  mov eax, fs:[rbp-04]  { mov еax, [fs:locl]   }
+  mov eax, fs:[rbp-04]  { mov еax, [fs:[locl]] }
+  mov eax, fs:[rbp+01]  { mov еax, fs:locl[5]  }
+  mov eax, fs:[rbp+01]  { mov еax, fs:5[locl]  }
 end;
 
 { This version works in all i8086 memory models }