mirror of
https://github.com/RPCS3/llvm.git
synced 2025-05-17 19:06:09 +00:00

Summary: This patch is provided in preparation for removing autoconf on 1/26. The proposal to remove autoconf on 1/26 was discussed on the llvm-dev thread here: http://lists.llvm.org/pipermail/llvm-dev/2016-January/093875.html "I felt a great disturbance in the [build system], as if millions of [makefiles] suddenly cried out in terror and were suddenly silenced. I fear something [amazing] has happened." - Obi Wan Kenobi Reviewers: chandlerc, grosbach, bob.wilson, tstellarAMD, echristo, whitequark Subscribers: chfast, simoncook, emaste, jholewinski, tberghammer, jfb, danalbert, srhines, arsenm, dschuff, jyknight, dsanders, joker.eph, llvm-commits Differential Revision: http://reviews.llvm.org/D16471 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@258861 91177308-0d34-0410-b5e6-96231b3b80d8
//===----------------------------------------------------------------------===/ // Kaleidoscope with Orc - Lazy IRGen Version //===----------------------------------------------------------------------===// This version of Kaleidoscope with Orc demonstrates lazy IR-generation. Building on the lazy-codegen version of the tutorial, this version reduces the amount of up-front work that must be done by lazily IRgen'ing ASTs. When a function definition is entered, its AST is added to a map of available definitions. No IRGen is performed at this point and nothing is added to the JIT. When attempting to resolve symbol addresses, the lambda in KaleidoscopeJIT::getSymbolAddress will scan the AST map and generate IR on the fly. This directory contains a Makefile that allows the code to be built in a standalone manner, independent of the larger LLVM build infrastructure. To build the program you will need to have 'clang++' and 'llvm-config' in your path.