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

Customize multiple entry methods #112

Closed
slimming-fat opened this issue Jul 11, 2024 · 5 comments
Closed

Customize multiple entry methods #112

slimming-fat opened this issue Jul 11, 2024 · 5 comments

Comments

@slimming-fat
Copy link

Overall Description

How to specify multiple entry methods when constructing a call graph, is there an actual example, I am new to Tai-e.

Expected Behavior

No

Current Behavior

No

Tai-e Arguments

Click here to see Tai-e Options
{{The content of 'output/options.yml' file}}
Click here to see Tai-e Analysis Plan
{{The content of 'output/tai-e-plan.yml' file}}

Tai-e Log

Click here to see Tai-e Log
{{The content of 'output/tai-e.log' file}}

Additional Information

No response

@zhangt2333
Copy link
Member

zhangt2333 commented Jul 11, 2024

Others have mentioned this in the past, there is an example: #9 (comment)

Here is a new example for you to specify multiple entry methods:

@slimming-fat
Copy link
Author

Thank you very much. I'll try.

@slimming-fat
Copy link
Author

slimming-fat commented Jul 11, 2024

I followed the above configuration and the log showed that the cg build was successful, but no cg result was found (eg, source -> target).
tai-e.log
image
options.yml
image

@zhangt2333
Copy link
Member

zhangt2333 commented Jul 11, 2024

I guess you want to dump the Call Graph to disk.

To do this, use the following option: "-a", "cg=dump:true;dump-call-edges:true;" (-a "cg=dump:true;dump-call-edges:true;")

For more details, refer to the Tai-e documentation on specific analysis options. The relevant cg analysis option can be found in

- description: call graph construction
analysisClass: pascal.taie.analysis.graph.callgraph.CallGraphBuilder
id: cg
requires: [ pta(algorithm=pta) ]
options:
algorithm: pta # | cha | cha=LIMIT | cha-full
dump: false # whether dump call graph in dot file
dump-methods: false # whether dump reachable methods
dump-call-edges: false # whether dump call edges

@slimming-fat
Copy link
Author

Yes, I have succeeded. Thank you very much for your patience.

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

No branches or pull requests

2 participants