Seite 1 von 1

get{Call,Return}FlowFunction vs. getCallToReturnFlowFunction

Verfasst: 19. Dez 2013 12:40
von pSub
Hi,

we are confused about the difference between get{Call,Return}FlowFunction and getCallToReturnFlowFunction. Is the difference explained somewhere? If not, can you give a short explanation?

thank you

Re: get{Call,Return}FlowFunction vs. getCallToReturnFlowFunc

Verfasst: 19. Dez 2013 12:55
von ericbodden
Hi.

Sure, this was on the IFDS slides and IDE slides, and it is also explained in the IFDS paper. The call-flow function goes from the caller stmt to the first stmt in the callee method. The return-flow function goes from every exit statement of the callee to the successor of the call statement. The call-to-return flow function bypasses the call; it goes directly from the call statement to its successor node in the caller. The latter should be used to propagate every abstraction that is not affected by the call. The call-flow and return-flow functions should be used to map parameter and return values from caller to callee and vice versa.

Re: get{Call,Return}FlowFunction vs. getCallToReturnFlowFunc

Verfasst: 19. Dez 2013 13:59
von pSub
Thanks!