我想查看LLVM IR程序的配置文件。 simplescalar模拟器是否支持LLVM?还有其他模拟器可以做同样的事情吗?
答案 0 :(得分:2)
如果Simplescalar支持ARM和x86 ELF二进制文件,它可以与LLVM编译的程序一起使用。
但是如果你想进行简单的分析(在真正的CPU上运行时,程序的每个部分需要多长时间),你可以查看更多已知的分析器,如:
您不能只运行LLVM IR,因为SimpleScalar或通常的分析器不支持LLVM的IR。 IR支持lli和其他llvm工具。
如果要分析使用哪些分支以及使用频率,可以对PGO进行LLVM分析(配置文件引导的优化)。有llvm-prof utility和utils/profile.pl
脚本来分析LLVM IR程序。
# Program: profile.pl
#
# Synopsis: Insert instrumentation code into a program, run it with the JIT,
# then print out a profile report.
#
# Syntax: profile.pl [OPTIONS] bytecodefile <arguments>
#
# OPTIONS may include one or more of the following:
# -block - Enable basicblock profiling
# -edge - Enable edge profiling
# -function - Enable function profiling
# -o <filename> - Emit profiling information to the specified file, instead
# of llvmprof.out
#
# Any unrecognized options are passed into the invocation of llvm-prof
内部是
-insert-*-profiling
次通过运行opt。输出是仪表IR PS有一些关于LLLVM分析的研究论文:llvm.org/pubs/2010-04-NeustifterProfiling.pdf