diff options
author | Martin Nowack <m.nowack@imperial.ac.uk> | 2019-12-19 14:54:51 +0000 |
---|---|---|
committer | Cristian Cadar <c.cadar@imperial.ac.uk> | 2020-01-13 13:13:49 +0000 |
commit | 1f90406ac0cdb8ad04013e163b0fa0be336a36ee (patch) | |
tree | 53ced9be2a7e70ec519cf9c6baa6ca31dd4cdb41 | |
parent | 2b1abab826bbfb20b2f86cbf7f15c98b13439299 (diff) | |
download | klee-1f90406ac0cdb8ad04013e163b0fa0be336a36ee.tar.gz |
Assume assembly.ll is local to the run.istats file
Assuming a `klee-out-*` directory is moved to a different path location, subsequent analysis of the run.istats with KCachegrind focusing on assembly is impossible as the `assembly.ll` cannot be found. The reason is that the absolute path of the object file (assembly.ll) is hard-coded as part of the generated run.istats. To fix this, assume that the file is local to the `run.istats`.
-rw-r--r-- | lib/Core/StatsTracker.cpp | 2 | ||||
-rw-r--r-- | test/Feature/SourceMapping.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/lib/Core/StatsTracker.cpp b/lib/Core/StatsTracker.cpp index 51181db0..d445eb2a 100644 --- a/lib/Core/StatsTracker.cpp +++ b/lib/Core/StatsTracker.cpp @@ -639,7 +639,7 @@ void StatsTracker::writeIStats() { if (UseCallPaths) callPathManager.getSummaryStatistics(callSiteStats); - of << "ob=" << objectFilename << "\n"; + of << "ob=" << llvm::sys::path::filename(objectFilename).str() << "\n"; for (Module::iterator fnIt = m->begin(), fn_ie = m->end(); fnIt != fn_ie; ++fnIt) { diff --git a/test/Feature/SourceMapping.c b/test/Feature/SourceMapping.c index 30a9c2a8..6a071933 100644 --- a/test/Feature/SourceMapping.c +++ b/test/Feature/SourceMapping.c @@ -7,7 +7,7 @@ // RUN: FileCheck < %t.klee-out/run.istats %s // CHECK: positions: instr line -// CHECK: ob={{.*}}/SourceMapping.c{{.*}}/assembly.ll +// CHECK: ob=assembly.ll // Assuming the compiler doesn't reorder things, f0 should be first, and it // should immediately follow the first file name marker. |