dg icon indicating copy to clipboard operation
dg copied to clipboard

llvm-slicer seg faults during pointer analysis of grep 2.2

Open naegling opened this issue 7 years ago • 4 comments

llvm-slicer seg faults during pointer analysis of grep 2.2. See attached tar-ball for reproducting bc. Source file has been pre-processed by CIL and instrumented with no-op marker calls. grep.bc.zip

naegling avatar Oct 01 '18 16:10 naegling

For some reason, RDA cannot find a points-to set of a store operand. I'll take look into that.

mchalupa avatar Oct 08 '18 06:10 mchalupa

With current (within a few days anyway) master, all of my benchmarks are failing an assertion.

Assertion pts && "Don't have the points-to information for store" failed.

I have reverted to a prior commit contemporary with originally reported seg fault. Also, the original issues seems to be related to a noreturn function in grep. The function fatal() calls exit() and ends with an unreachable instruction. llvm-slicer is unhappy that it cannot link the fn return into the dependency graph.

naegling avatar Oct 23 '18 16:10 naegling

Can you try the very latest version? And also if there is a difference with Release build? Thanks.

mchalupa avatar Oct 24 '18 05:10 mchalupa

At least one benchmark (bc) that works with older version of dg, aborts() in debug build and emits an error in release builds: [RD] Error: Don't have the points-to node for store's target store %struct.bc_array_node* %31, %struct.bc_array_node** %37, align 8

naegling avatar Oct 24 '18 17:10 naegling