如何嵌入LLVM?

2024-04-02

LLVM 核心项目包括:

  • 编译器 - 将源代码转换为 LLVM IR
  • VM - 执行编译后的IR代码

如何将 VM 嵌入到 C++ 应用程序中?


LLVM 实际上是一个可以链接到的库的集合,因此嵌入起来非常容易。更多时候,LLVM 会获取您生成的 IR,并将其直接编译为机器代码。还有一个库可用于为不支持 JIT 编译的平台解释和执行 IR。

LLVM 网站上有一个非常好的教程:http://llvm.org/docs/tutorial/ http://llvm.org/docs/tutorial/。我建议您仔细阅读一下,然后再提出更具体的问题(如果有的话)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何嵌入LLVM? 的相关文章

随机推荐

  • 有效地在多个维度上查找邻居并根据邻近度计算值的总和

    我的任务是找到中心元素可变距离内所有元素的总价值 这些元素使用 3 个维度 我的数据中的列 进行排列 每个元素在给定 3 个维度的情况下都有一个唯一的位置 并且有一个唯一的 id 我有一个可以完成我想要的工作的版本 但是它非常慢 我正在使用
  • grep 与不包含关键字的后上下文[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我想 grep 日志 并收集某个异常堆栈跟踪 但我只想查看那些在 after context 中不包含某些关键字的异常 我不知道关键字在后上下文中的哪
  • 编译项目时出现25.0.0错误

    我有一个项目到目前为止运行良好 今天突然面临这些问题 Error A problem occurred configuring project app gt Could not resolve all dependencies for co
  • rgl:绘制带有彩色面、顶点和线的立方体

    为了演示 3D 线性变换的效果 x gt A x 我想画一个立方体并在下面显示它的变换A 为此 我需要分别为每个面着色 并显示顶点和勾勒每个面的线条 我不知道如何为脸部使用不同的颜色 以及如何使其更通用 因此我不必在转换下重复所有步骤来获得
  • Flask - ImportError:没有名为 app 的模块

    首先我创建了 init py from flask import Flask app Flask name 然后在同一目录中的单独文件中 run py from app import app app run debug True 当我尝试跑
  • 将 Javadoc 添加到 NetBeans 中的库

    我刚开始使用 NetBeans IDE 当我尝试查看 java API 的文档时 例如 Systemclass 它说 javadoc 没有安装 如何安装文档 首先 您下载 javadoc 其次 转到 工具 gt Java 平台 然后从 Ja
  • 确定递归函数的复杂性(大 O 表示法)

    我明天有计算机科学期中考试 我需要帮助确定这些递归函数的复杂性 我知道如何解决简单的情况 但我仍在努力学习如何解决这些更困难的情况 这些只是我无法解决的一些示例问题 任何帮助将不胜感激 并对我的学习有很大帮助 谢谢 int recursiv
  • 如何以编程方式询问当前应用程序的 URL 方案?

    我的 iOS 应用程序有 50 多个目标 每个目标都有自己的自定义 URL 方案 我需要检测来自 webview 的请求是否与当前运行的应用程序的方案匹配 为了做到这一点 我需要能够从代码中询问当前应用程序的 URL 方案 类似的问题涉及尝
  • MySQL如何获取特定范围内的平均值

    我有以下表格数据 value 1 5 10 5 12 36 我想将这些值映射到 range avg 0 21 1 5 10 5 12 4 21 001 34 0 34 001 64 36 64 0 基本上将每个值映射到范围并计算每个范围内所
  • Android dagger依赖循环

    我有两个具有相同范围的依赖项 彼此需要 我的依赖项是具有不同方法的域服务 每种方法都有不同的业务案例 某些业务案例可能会使用另一个领域的方法 为此 我需要域 1 可用于域 2 反之亦然 但是当我这样做时 我收到依赖循环编译错误 经过谷歌搜索
  • 指针 - 数组和指针之间的区别

    有什么区别a a和第一个元素的地址a 0 相似地p是一个指向用数组地址分配的整数的指针 会pointer 进行指针算术并根据数据类型获取值 进一步的价值是什么 预计 它应该是一个指针吗 include
  • Maya Python 中的 cmds.scriptCtx 到底有什么作用?

    我想知道 cmds scriptCtx 命令到底是做什么的 因为我尝试将其直接从 Autodesk 帮助页面复制并粘贴到我的脚本编辑器中 但没有任何反应 以下是 Autodesk 帮助中的脚本 import maya cmds as cmd
  • C#:获取 XML 文档的所有节点

    有没有一种简单的方法 从 xml 文档中获取所有节点 我需要每个节点 子节点等来检查它们是否具有某些属性 或者我是否必须爬行文档 询问子节点 在 LINQ to XML 中 这非常简单 XDocument doc XDocument Loa
  • (选择)H2 中的Where()

    我有两种软件 都是Java 一种是MySQL 另一种是H2数据库 我的问题是在 MySQL 中我有这个查询 Select from X where 1 2 3 in select 4 5 6 from Y 但在 H2 中给我这个错误 子查询
  • 教科书上的长除法如何是 O(n^2) 算法?

    Premise This 维基百科页面 http en wikipedia org wiki Computational complexity of mathematical operations建议 的计算复杂度 教科书 长除法 http
  • sprintf 用于无符号 _int64

    我有以下代码 sprintf 中第二个 d 的输出始终显示为零 我认为我指定了错误的说明符 任何人都可以帮助我编写具有正确值的字符串 这必须在 posix 标准中实现 感谢您的投入 void main unsigned int64 dbFi
  • PercentRelativeLayout 性能更高?

    我总是使用 LinearLayout 和relativelayout 并且我正在阅读有关 新 的内容百分比相对布局 http developer android com intl es reference android support p
  • 标签云网络服务?

    是否有可以生成标签云的公共免费网络服务 我正在寻找类似 Google Chart 的东西 URL 输入 图像输出 我非常怀疑 为此提供网络服务没有任何意义 不过 有大量的图书馆 代码点火器 http codeigniter com foru
  • 无法将类型“NHibernate.Hql.Ast.HqlCast”的对象转换为类型“NHibernate.Hql.Ast.HqlBooleanExpression”

    我正在使用以下 C 代码 public IList
  • 如何嵌入LLVM?

    LLVM 核心项目包括 编译器 将源代码转换为 LLVM IR VM 执行编译后的IR代码 如何将 VM 嵌入到 C 应用程序中 LLVM 实际上是一个可以链接到的库的集合 因此嵌入起来非常容易 更多时候 LLVM 会获取您生成的 IR 并