summaryrefslogtreecommitdiff
path: root/packages/rtl-generics
diff options
context:
space:
mode:
authorpierre <pierre@3ad0048d-3df7-0310-abae-a5850022a9f2>2018-05-03 16:02:39 +0000
committerpierre <pierre@3ad0048d-3df7-0310-abae-a5850022a9f2>2018-05-03 16:02:39 +0000
commit8f9d2c0ae034aba7e63c1135ce330b41e956ca1c (patch)
tree99516960ebd97619676f9a74b3e82a62e80c514c /packages/rtl-generics
parente9d01941e699155289d87bc9fec5d36239586f45 (diff)
downloadfpc-8f9d2c0ae034aba7e63c1135ce330b41e956ca1c.tar.gz
Disable assembler code for i386 OS targets using old GNU assemblers
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@38899 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'packages/rtl-generics')
-rw-r--r--packages/rtl-generics/src/generics.hashes.pas12
1 files changed, 11 insertions, 1 deletions
diff --git a/packages/rtl-generics/src/generics.hashes.pas b/packages/rtl-generics/src/generics.hashes.pas
index 6dba729c95..fd656b85de 100644
--- a/packages/rtl-generics/src/generics.hashes.pas
+++ b/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}