-
Notifications
You must be signed in to change notification settings - Fork 135
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How can I slice an arbitrary function? #426
Comments
Did you try to use |
Ok, found the problem. There is a bug in the reachability slicer that runs before the main slicer. You can workaround it by using |
Thanks for your answer. I have some questions:
I would appreciate it if you could answer the questions above. Btw, it would be more convenient if you could open a slack channel for this repo. |
Because it does. It is to make the slice executable and LLVM code well-defined.
Any example?
Again it would be nice to have a concrete example. Without it, I cannot tell where is the problem. |
I moved the bug that started this conversation to #427 . |
I compiled the code by
For the question 3, I specify the variable Regarding question 2, the slicer works well after specifying -cutoff-diverging=false* during the slicing process. Thank you for your time. |
There is control dependence from line 7 to 11 and from 11 to 16. Line 11 (16, resp.) is not executed if the condition on line 7 (11, resp.) evaluates to true. |
Thanks. |
If the criterion locates a non-main function, e.g. fact function below:
Compile it with
clang-10 -S -emit-llvm -g -o fact.bc fact.c
orclang-10 -c -emit-llvm -g -o fact.bc fact.c
.Slicing by
./llvm-slicer -entry fact -c 8:r fact.bc
, the result showsHow can I slice with the variable
r
at line8
?The text was updated successfully, but these errors were encountered: