Browse Source

* set maxCrecordalign to 16 for all x86_64 platforms that follow the
official ABI (records containing a C long double require 16 byte
alignment)

git-svn-id: trunk@15367 -

Jonas Maebe 15 years ago
parent
commit
48d7c69aab
3 changed files with 6 additions and 6 deletions
  1. 4 4
      compiler/systems/i_bsd.pas
  2. 1 1
      compiler/systems/i_linux.pas
  3. 1 1
      compiler/systems/i_sunos.pas

+ 4 - 4
compiler/systems/i_bsd.pas

@@ -178,7 +178,7 @@ unit i_bsd;
                 localalignmax   : 16;
                 recordalignmin  : 0;
                 recordalignmax  : 16;
-                maxCrecordalign : 8
+                maxCrecordalign : 16
               );
             first_parm_offset : 16;
             stacksize    : 256*1024;
@@ -672,10 +672,10 @@ unit i_bsd;
                 varalignmin     : 0;
                 varalignmax     : 16;
                 localalignmin   : 4;
-                localalignmax   : 8;
+                localalignmax   : 16;
                 recordalignmin  : 0;
-                recordalignmax  : 8;
-                maxCrecordalign : 8
+                recordalignmax  : 16;
+                maxCrecordalign : 16
               );
             first_parm_offset : 16;
             stacksize   : 262144;

+ 1 - 1
compiler/systems/i_linux.pas

@@ -462,7 +462,7 @@ unit i_linux;
                 localalignmax   : 16;
                 recordalignmin  : 0;
                 recordalignmax  : 16;
-                maxCrecordalign : 8
+                maxCrecordalign : 16
               );
             first_parm_offset : 16;
             stacksize    : 8*1024*1024;

+ 1 - 1
compiler/systems/i_sunos.pas

@@ -151,7 +151,7 @@ unit i_sunos;
                 localalignmax   : 16;
                 recordalignmin  : 0;
                 recordalignmax  : 16;
-                maxCrecordalign : 8
+                maxCrecordalign : 16
               );
             first_parm_offset : 16;
             stacksize    : 8*1024*1024;