All Projects → dotnet → Llilc

dotnet / Llilc

Licence: mit
This repo contains LLILC, an LLVM based compiler for .NET Core. It includes a set of cross-platform .NET code generation tools that enables compilation of MSIL byte code to LLVM supported platforms.

Programming Languages

C++
36643 projects - #6 most used programming language
c
50402 projects - #5 most used programming language
python
139335 projects - #7 most used programming language
powershell
5483 projects
CMake
9771 projects
groovy
2714 projects
Batchfile
5799 projects

Welcome to LLILC

Join the chat at https://gitter.im/dotnet/llilc

Build Status

Windows Linux
Debug Build status Build Status
Release Build status Build Status

Introduction

LLILC is an LLVM based MSIL Compiler - we pronounce it 'lilac' - with a goal of producing a set of cross-platform .NET code generation tools. Today LLILC is being developed against dotnet/CoreCLR for use as a JIT, as well as an cross platform platform object emitter and disassembler that is used by CoreRT as well as other dotnet utilites.

See the documentation for more information. It has a more complete discussion of our background and goals as well as "getting started" details and developer information.

ObjectWriter for CoreRT: CoreRT project uses ObjectWriter that lives in its own branch in this repo, if you want to build it then follow instructions from getting started, but use the following branches:

  1. latest LLVM version and apply this patch or take the known working version from Microsoft/llvm/CoreRT_ObjectWriter branch;
  2. llilc/ObjectWriter branch;

libcoredistools: CoreCLR has a ongoing dependency on libcoredistools which is built out of this repo and placed into build/lib/libcoredistools.dylib|so|dll. To build coredistools follow the default workflow for building llilc/llvm on the master branch.

Supported Platforms

Our initial supported platform is Windows, but Linux and Mac OS X support are under development.

Contributions

Please see our issues or the contributing document for how to pitch in.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].