Explorar o código

Disable assembler code for i386 OS targets using old GNU assemblers

git-svn-id: trunk@38899 -
pierre %!s(int64=7) %!d(string=hai) anos
pai
achega
c618822648
Modificáronse 1 ficheiros con 11 adicións e 1 borrados
  1. 11 1
      packages/rtl-generics/src/generics.hashes.pas

+ 11 - 1
packages/rtl-generics/src/generics.hashes.pas

@@ -927,6 +927,16 @@ begin
   Result := Int32(c);
 end;
 
+{$ifdef FPC_PIC}
+  {$define DISABLE_X86_CPUINTEL}
+{$endif FPC_PIC}
+
+{$if defined(OPENBSD) or defined(EMX) or defined(OS2)}
+  { These targets have old GNU assemblers that }
+  { do not support all instructions used in assembler code below }
+  {$define DISABLE_X86_CPUINTEL}
+{$endif}
+
 {$ifdef CPU64}
   {$define PUREPASCAL}
   {$ifdef CPUX64}
@@ -935,7 +945,7 @@ end;
   {$endif CPUX64}
 {$else}
   {$ifdef CPUX86}
-    {$ifndef FPC_PIC}
+    {$ifndef DISABLE_X86_CPUINTEL}
       {$define CPUINTEL}
       {$ASMMODE INTEL}
     {$else}