summaryrefslogtreecommitdiff
path: root/compiler/fppu.pas
diff options
context:
space:
mode:
authorjonas <jonas@3ad0048d-3df7-0310-abae-a5850022a9f2>2019-06-08 20:17:10 +0000
committerjonas <jonas@3ad0048d-3df7-0310-abae-a5850022a9f2>2019-06-08 20:17:10 +0000
commit54a1fabe79f3051d00d66f89a1ec5374b11d78f4 (patch)
treec9e34d89176e62e0e4d1ebe00aee84061d518fff /compiler/fppu.pas
parent9cedea070ccf7ca1b68bb9b1d021fdf4920d1475 (diff)
downloadfpc-54a1fabe79f3051d00d66f89a1ec5374b11d78f4.tar.gz
* ensure the LLVM-based compiler does not try to load units compiled with a
non-LLVM-base compiler and vice versa (caused internal errors, because the LLVM compiler uses different nodes, and these are saved in the PPUs for inline routines) git-svn-id: https://svn.freepascal.org/svn/fpc/branches/debug_eh@42196 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'compiler/fppu.pas')
-rw-r--r--compiler/fppu.pas8
1 files changed, 8 insertions, 0 deletions
diff --git a/compiler/fppu.pas b/compiler/fppu.pas
index 4546d511c6..d754018cf8 100644
--- a/compiler/fppu.pas
+++ b/compiler/fppu.pas
@@ -336,6 +336,11 @@ var
exit;
end;
{$endif i8086}
+ if {$ifdef llvm}not{$endif}(mf_llvm in moduleflags) then
+ begin
+ Message(unit_u_ppu_llvm_mismatch,@queuecomment);
+ exit;
+ end;
result:=true;
end;
@@ -1013,6 +1018,9 @@ var
if current_settings.x86memorymodel in [mm_tiny,mm_small,mm_medium] then
include(moduleflags,mf_i8086_ss_equals_ds);
{$endif i8086}
+{$ifdef llvm}
+ include(moduleflags,mf_llvm);
+{$endif}
old_docrc:=ppufile.do_crc;
ppufile.do_crc:=false;