问题标签 [llvm-py]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
853 浏览

python - 无法安装 llvmpy “无法打开文件 'llvmpy/build.py'”

llvmpy在 ubuntu 14.04 上安装时遇到了一些问题,我从 llvmpy.org 下载了 llvmpy 并llvm 3.4通过安装apt-get,当我尝试使用安装它时

我收到此错误:

然后我用

我得到了

我该如何解决这个问题?

0 投票
0 回答
32 浏览

compiler-construction - 如何使用 llvmpy 在编译器中包含汇编文件中的库函数?

我必须在我的编译器项目中包含一些我在 8086 汇编中实现的函数,用于类似 C 的编程语言。也就是说,我有 6 个 .asm 文件。到目前为止,我一直在使用 llvmpy(一个不再维护的 python 工具,但仍然比 llvm lite 更完整)。如何包含这些库函数?

0 投票
0 回答
47 浏览

python - 如何在 Python 中解析 LLVM IR

有没有办法在 Python 中解析 LLVM IR 并获取基本类型信息?例如,我想知道每个函数参数的类型。

llvmlite具有解析LLVM IR 和字节码的基本功能。但是,据我所知,它无法提供类型信息:生成的Type只有几个基本方法,并且没有实现LLVM API,例如告诉我 ifisIntegerTygetIntegerBitWidth(). 所以 llvmlite 只能告诉我 args 的数量,而不是它们是布尔值、整数还是浮点数。llvmpy 甚至更少。

是否有 Python API 可以告诉我 LLVM 类型?如果没有,是否有一种简单的方法可以调用 C 函数来执行此操作?如果没有,我如何从 Python 中获取这些信息?