Browse Source

Fix writing of low qword of floatx80 real type into 10-byte array on big endian systems

Pierre Muller 1 year ago
parent
commit
8ae28b4846
1 changed files with 1 additions and 1 deletions
  1. 1 1
      compiler/entfile.pas

+ 1 - 1
compiler/entfile.pas

@@ -1945,7 +1945,7 @@ begin
       softfloat_exception_mask:=local_softfloat_exception_mask;
 {$ifdef FPC_BIG_ENDIAN}
       pword(@floatx80_ba[0])^:=floatx80_e.high;
-      pqword(@floatx80_ba[8])^:=floatx80_e.low;
+      unaligned(pqword(@floatx80_ba[2])^):=floatx80_e.low;
 {$else}
       pword(@floatx80_ba[8])^:=floatx80_e.high;
       pqword(@floatx80_ba[0])^:=floatx80_e.low;