Skip to content

Customize multiple entry methods #112

Description

@slimming-fat

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

Activity

  1. zhangt2333 commented on Jul 11, 2024

    @zhangt2333
    Member

    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:

  2. slimming-fat commented on Jul 11, 2024

    @slimming-fat
    Author

    Thank you very much. I'll try.

  3. slimming-fat commented on Jul 11, 2024

    @slimming-fat
    Author

    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

  4. zhangt2333 commented on Jul 11, 2024

    @zhangt2333
    Member

    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

  5. slimming-fat commented on Jul 12, 2024

    @slimming-fat
    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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions