Skip to content
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

Understanding Callgraph Output/Doing Callgraph Analysis #12

Open
JamesShaker opened this issue Jul 8, 2021 · 8 comments
Open

Understanding Callgraph Output/Doing Callgraph Analysis #12

JamesShaker opened this issue Jul 8, 2021 · 8 comments

Comments

@JamesShaker
Copy link

Hello!

I have run cclyzer with the default context-insensitive analysis on:

#include "stdio.h"

void a() {
	printf("Hello world!");
}

int main (int argc, char* argv[]) {
	a();
	return 0;
}

I am interested in the callgraph so I thought the callgraph_edge relation would be what I needed given its declaration:

.decl callgraph_edge(?calleeCtx: Context, ?callee: FunctionDecl, ?callerCtx: Context, ?callerInstr: Instruction)

However when I look at callgraph_edge.csv I get the following results:

<<empty-context>>	</host/hello.bc>:a	<<empty-context>>	<<empty-context>>
<<empty-context>>	</host/hello.bc>:printf	<<empty-context>>	<<empty-context>>

The first, second, and third columns are as I would have expected however in the fourth I was hoping for the caller instruction rather than another context. What am I doing wrong?

Thanks,
James

@ktrianta
Copy link
Collaborator

ktrianta commented Jul 8, 2021

Hello James!

This is the current output due to a context-sensitivity related bug, so you are not doing something wrong.
We will be fixing this in a overhaul of context-sensitivity in the following days. I will update the issue as soon as we have a fix.

Thank you

@JamesShaker
Copy link
Author

Great! Cheers @ktrianta! :)

@JamesShaker
Copy link
Author

JamesShaker commented Aug 5, 2021

Hey @ktrianta, just wondering if there is any update on when cclyzer might be back up and running?

@ktrianta
Copy link
Collaborator

ktrianta commented Aug 5, 2021

Hello James, I am sorry but I don't have a complete fix yet. I will try to close the issue in the next 1 or 2 weeks. Thank you for your patience!

@JamesShaker
Copy link
Author

JamesShaker commented Aug 5, 2021 via email

@JamesShaker
Copy link
Author

JamesShaker commented Oct 27, 2021

Hello! Sorry to bother you again! Is there any updated timeline on when this repo might be working again? Also do you have any suggested previous commits in which the repo was in a working state?

@ktrianta
Copy link
Collaborator

Hello, we will have a fix available by tomorrow most probably!

@ktrianta
Copy link
Collaborator

@JamesShaker I have pushed a fix!
I am not closing this issue yet. In case you encounter any trouble please write here!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants