4 ms·
The C# compiler uses LLVM? Is that for something like Xamarin or something? I was under the impression that it was self-contained. Anyone knows the details of t
by thcz 7y ago
The C# compiler uses LLVM? Is that for something like Xamarin or something? I was under the impression that it was self-contained. Anyone knows the details of this?
- bdd 7y agoAnyone can build a frontend. "Java bytecode" is in that list too. It doesn't mean defacto compilers of these languages rely on LLVM.
- jerven 7y agoIn this case it is Azul Zing, a very serious product. It's one of the four major VM Jit compilers (OpenJ9, C2, Graal are the others in my opinion) [1] https://www.azul.com/products/zing/ https://www.azul.com/products/zing/
- pjmlp 7y agoThere are also PTC, Aicas, Virtenio, Ricoh and Gemalto all targeted to embededded deployments, of which, PTC and Aicas are the most well known ones. Sadly Excelsior is no more. I imagine that regular JIT compilers making AOT/JIT caches available, is what killed them.
- wtfleming 7y agoUnity's burst compiler https://docs.unity3d.com/Packages/com.unity.burst@1.2/manual/index.html https://docs.unity3d.com/Packages/com.unity.burst@1.2/manual... uses LLVM, but only supports a somewhat limited subset of C#. I've used it a bit in some performance critical parts of a game and saw some dramatic speed increases. But I can't speak to other parts of the C# ecosystem beyond Unity though.
- pjmlp 7y agoThere are many implementations of C#, a few of them use LLVM, like Xamarin AOT, IL2CPP, Burst. .NET Core and .NET Framework, do not.