c++ - 如何重定向 LLI 输出?

标签 c++ clang llvm interpreter

如何重定向 lli 输出(fprintf、cout)以将其作为变量获取或执行我的回调?

我已经查看了 /tools/lli/lli.cpp 并且据我所知代码 由 ExecutionEngine 执行,而 ExecutionEngineEngineBuilder 构建。可以为此以某种方式配置 EE 吗?

附言。我无法使用 lli 可执行文件启动和操作系统输出重定向,因为我正在使用带有 lli 代码的静态库。

最佳答案

我不认为这有什么特别的钩子(Hook)。但是,当 ExecutionEngine 正在运行时,仅使用重定向文件描述符(dup2 等)的常用技术,并在完成后切换回来怎么样?

关于c++ - 如何重定向 LLI 输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25422044/

相关文章:

c++ - 将 C++ 模板的使用限制为 POD 类型

c++ - 使用 c++ 和 glfw 的 raii 架构

c++ - 在 Mac OS X 10.6 上使用 clang 2.8 编译 C++ 代码时如何解决丢失的符号问题?

c++ - 使用 clang 从 C/C++ 头文件中提取函数声明

c++ - LLVM,用值 0 初始化一个整数全局变量

llvm - libtool:无法识别的选项 `-static'

clang-3.8 和编译器-rt 与 libgcc

c++ - 使用没有图形的c++绘制线

c++ - Clang++ 3.3 中对 C++11 的线程支持

c++ - 如何在 VC++ 中使用多核计算进行循环?