Ver código fonte

* don't include any architecture-specific node classes when creating an
llvm-targeting compiler, but use llvmnode instead
o after this commit it possible to build an llvm/x86-64 compiler with
very limited functionality (you can only compile dummy system units
containing procedures --not functions!-- with simple arithmetic
and array expressions; parameters are partially supported, making
calls is not). Use a make command line similar to the following:
make OPT="-Fullvm -Fillvm -dllvm" PPC_TARGET=x86_64 clean all

The resuling compiler can generate (some) valid code for at least
Mac OS X/x86-64 and should also be able to target Linux/x86-64.
Win64 support may work by simply adding it to the list of supported
targets in as_llvm_info in llvm/agllvm.pas.

git-svn-id: branches/hlcgllvm@26058 -

Jonas Maebe 11 anos atrás
pai
commit
c71f75b4ec
1 arquivos alterados com 4 adições e 0 exclusões
  1. 4 0
      compiler/x86_64/cpunode.pas

+ 4 - 0
compiler/x86_64/cpunode.pas

@@ -43,6 +43,7 @@ unit cpunode;
        ncgset,
        ncgopt,
        ncgobjc,
+{$ifndef llvm}
        { the cpu specific node units must be used after the generic ones to
          get the correct class pointer }
        nx86set,
@@ -57,6 +58,9 @@ unit cpunode;
 {$endif DISABLE_WIN64_SEH}
        nx64inl,
        nx64set
+{$else}
+       llvmnode
+{$endif ndef llvm}
        ;
 
 end.