Browse Source

* have the module keep track whether it was loaded from a PPU with a different endianess than the current host system

git-svn-id: trunk@44072 -
svenbarth 5 years ago
parent
commit
84dc6621cb
2 changed files with 3 additions and 0 deletions
  1. 2 0
      compiler/fmodule.pas
  2. 1 0
      compiler/fppu.pas

+ 2 - 0
compiler/fmodule.pas

@@ -133,6 +133,7 @@ interface
         moduleflags   : tmoduleflags; { ppu flags that do not need to be known by just reading the ppu header }
         islibrary     : boolean;  { if it is a library (win32 dll) }
         IsPackage     : boolean;
+        change_endian : boolean;  { if the unit is loaded on a system with a different endianess than it was compiled on }
         moduleid      : longint;
         unitmap       : punitmap; { mapping of all used units }
         unitmapsize   : longint;  { number of units in the map }
@@ -634,6 +635,7 @@ implementation
         is_unit:=_is_unit;
         islibrary:=false;
         ispackage:=false;
+        change_endian:=false;
         is_dbginfo_written:=false;
         mode_switch_allowed:= true;
         moduleoptions:=[];

+ 1 - 0
compiler/fppu.pas

@@ -359,6 +359,7 @@ var
         crc:=ppufile.header.checksum;
         interface_crc:=ppufile.header.interface_checksum;
         indirect_crc:=ppufile.header.indirect_checksum;
+        change_endian:=ppufile.change_endian;
       { Show Debug info }
         if ppufiletime<>-1 then
           Message1(unit_u_ppu_time,filetimestring(ppufiletime))