如何从源代码中添加新的 LLVM 后端目标

问题描述 投票:0回答:2

我正在寻求开发一个基于 LLVM 的编译器,这将需要一个新的后端目标。

LLVM 后端指南展示了如何在设定的目录结构(

lib/Target/**
)中的 LLVM 源下开发新目标,以与现有的构建系统集成,并且据我所知,使用诸如
llc
之类的工具集成、
llvm-config
等。 是否可以从源代码中开发新目标,并将其与 LLVM 集成?

我知道在添加新的独立于目标的优化和分析过程时这是可能的。例如,它们可以从源代码编写和编译,并通过

opt
工具加载。我认为可能有类似的方法来编写新目标。

我想这样做是为了在某种程度上减少我的项目和 LLVM 之间的耦合量,因为它让我在 VC、构建/标签/IDE 等中额外增加一百万行代码。

llvm
2个回答
1
投票

不幸的是,这是不可能的。后端通过配置时代码生成等与主 LLVM 代码库紧密相连。


0
投票

安东, 我也在寻找使用 LLVM 创建新目标的可能性。 如果新目标能够与 LLVM 框架分离,那就太好了。例如,我的所有新目标代码可能位于几个 .so 文件中。如果相应的 .so 文件存在,则可以使用新目标。

您对可能性有什么建议吗?

© www.soinside.com 2019 - 2024. All rights reserved.