Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
LLVM仪器_Llvm - Fatal编程技术网

LLVM仪器

LLVM仪器,llvm,Llvm,最近,我在LLVM做一些研究 首先,我想写一个到instrument.bc文件的过程 因此,它将记录我的.bc文件的基本块的执行路径 然后,我想将这个.bc文件命名为.exe文件。请给我你的建议,如果你有一些LLVM仪器的例子,请告诉我 LLVM已经内置了许多检测工具。查看源代码树中的lib/Transforms/Instrumentation目录 最著名的一个过程是,基于仪器的内存错误检测器有点像Valgrind,但速度要快得多。地址消毒器有一个运行时组件+一个插入检测的LLVM过程;该过程位

最近,我在LLVM做一些研究

首先,我想写一个到instrument.bc文件的过程

因此,它将记录我的.bc文件的基本块的执行路径


然后,我想将这个.bc文件命名为.exe文件。请给我你的建议,如果你有一些LLVM仪器的例子,请告诉我

LLVM已经内置了许多检测工具。查看源代码树中的lib/Transforms/Instrumentation目录


最著名的一个过程是,基于仪器的内存错误检测器有点像Valgrind,但速度要快得多。地址消毒器有一个运行时组件+一个插入检测的LLVM过程;该过程位于lib/Transforms/Instrumentation/AddressSanitizer.cpp中。这里有一些关于它工作原理的描述。

也许LLVM教程可以帮助您熟悉它。