根据我创建的这个问题(https://github.com/dotnet/coreclr/issues/17294),为新体系结构创建新后端是一项复杂的工作,所以为什么不创建一个支持多种体系结构的新后端呢? Mono已经实现了LLVM后端。 我之所以这样说是因为Power和s390x架构正在以相对较高的强度回归...
几年前,我们为.Net: LLILC开发了LLVM代码生成器。 我们遇到了许多看起来很难解决的问题:对精确GC的支持,对.Net异常模型的全面支持以及低吞吐量。 您可以在此处阅读一些详细信息:六个月的LLILC 。
通过LLVM的Mono使用保守的GC,并且(至少在某些情况下)不能处理所有异常行为。 对于Mono的应用程序目标,这是可以接受的,但对于我们的目的而言,这还不够普遍。
LLILC作为上层jit(有一天)或作为使基本代码在新体系结构上运行的启动工具可能仍然很有趣。
嗨@AndyAyersMS
我修复了LLILC的一个简单构建问题https://github.com/dotnet/llilc/issues/1097
请检查一下。
谢谢, 翟国荣
由于问题已得到解答,因此我将关闭此问题。
最有用的评论
几年前,我们为.Net: LLILC开发了LLVM代码生成器。 我们遇到了许多看起来很难解决的问题:对精确GC的支持,对.Net异常模型的全面支持以及低吞吐量。 您可以在此处阅读一些详细信息:六个月的LLILC 。
通过LLVM的Mono使用保守的GC,并且(至少在某些情况下)不能处理所有异常行为。 对于Mono的应用程序目标,这是可以接受的,但对于我们的目的而言,这还不够普遍。
LLILC作为上层jit(有一天)或作为使基本代码在新体系结构上运行的启动工具可能仍然很有趣。