forked from OSchip/llvm-project
parent
a79d2b54d2
commit
3538c9d2d3
|
@ -10,9 +10,13 @@
|
|||
# OPTIONS may include one or more of the following:
|
||||
# -block - Enable basic block level profiling
|
||||
#
|
||||
# Any unrecognized options are passed into the invocation of llvm-prof
|
||||
#
|
||||
|
||||
my $ProfilePass = "-insert-function-profiling";
|
||||
|
||||
my $LLVMProfOpts = "";
|
||||
|
||||
# Parse arguments...
|
||||
while (scalar(@ARGV) and ($_ = $ARGV[0], /^[-+]/)) {
|
||||
shift;
|
||||
|
@ -21,7 +25,8 @@ while (scalar(@ARGV) and ($_ = $ARGV[0], /^[-+]/)) {
|
|||
# List command line options here...
|
||||
if (/^-block$/) { $ProfilePass = "-insert-block-profiling"; next; }
|
||||
|
||||
print "Unknown option: $_ : ignoring!\n";
|
||||
# Otherwise, pass the option on to llvm-prof
|
||||
$LLVMProfOpts .= " " . $_;
|
||||
}
|
||||
|
||||
die "Must specify LLVM bytecode file as first argument!" if (@ARGV == 0);
|
||||
|
@ -39,4 +44,4 @@ my $LibProfPath = $LLIPath . "/../../lib/Debug/libprofile_rt.so";
|
|||
system "opt $ProfilePass < $BytecodeFile | lli -fake-argv0 '$BytecodeFile'" .
|
||||
" -load $LibProfPath - " . (join ' ', @ARGV);
|
||||
|
||||
system "llvm-prof $BytecodeFile";
|
||||
system "llvm-prof $LLVMProfOpts $BytecodeFile";
|
||||
|
|
Loading…
Reference in New Issue