DependableSystemsLab / LLFI

LLFI is an LLVM based fault injection tool, that injects faults into the LLVM IR of the application source code. The faults can be injected into specific program points, and the effect can be easily tracked back to the source code. Please refer to the paper below. NOTE: If you publish a paper using LLFI, please add it to PaperLLFI.bib
http://blogs.ubc.ca/karthik/2014/02/23/quantifying-the-accuracy-of-high-level-fault-injection-techniques/
Other
68 stars 35 forks source link

Instrument problem when trying "water-nsquared" #1

Closed Qining closed 11 years ago

Qining commented 11 years ago

Program: water-nsquared, from SPLASH-2 Optimization level: O2 Compiler: llvm-gcc 4.2.2 Linker: llvm-ld

Input: Default input provided in SPLASH-2 Run in One thread mode

Problem: When doing instrument, follow assertion triggerd: Assertion isa(ret) && "Last instruction is not return instruction" failed. Location: llvm_passes/Utils.cpp:16:llvm::Instruction* llfi:getTermInstofFunction(llvm::Function*)

jshwei commented 11 years ago

The issue is resolved.

Qining commented 11 years ago

Another problem for this benchmark, the previous one has been resolved.

Problem: Can not find the pthread library when instrumenting (example: undefined reference to 'pthread_barrier_init') The IR of the program (water-nsquared) runs well in "lli"

OS: Xubuntu 12.04 (Should be same with Ubuntu12.04)

jshwei commented 11 years ago

I consider the problem above 'undefined reference' as the llvm-gcc linking choice rather than the LLFI problem, so my suggestion is to add -l pthread during the instrument