Hello,

>
> ----------------------------------------------------------------------
>
> Message: 1
> Date: Sun, 19 Aug 2012 20:56:26 -0400
> From: Siddhartha Jana <siddharthajan...@gmail.com>
> Subject: [Open64-devel] Queries: IPA + BE Nystrom Alias Analyzer +
>         PREOPT
> To: open64-devel@lists.sourceforge.net
> Message-ID:
>         <CAPkf6e2iwjdZuNpkGJjQypr5iJxG0y9aHL-9dM3o+2addcd=
> b...@mail.gmail.com>
> Content-Type: text/plain; charset="iso-8859-1"
>
> Hello again,
>
> As a beginner at Open64 development, I had a few queries:
> I would really appreciate some help on understanding this:
> *********************************************************
> 1. Using BE Nystrom Analyzer immediately after IPA --  is this a correct
> move?
> In  nystrom_alias_analyzer.cxx, function -->
>  NystromAliasAnalyzer::aliasedWithCall (ST *call, AliasTag symTag, BOOL
> &mod, BOOL &ref)
> This function appears to set the mod and ref bools to true without using
> any POINTS TO Analysis info.
> Could someone please explain this?
> I notice that Do_Simple_IPAA ( *IPA_Call_Graph ) is called within IPA
> [inside Perform_Interprocedural_analysis()]  to migrate the mod/ref info
> bottom up through the
> call graph. Shouldn't the BE Nystrom Alias Analyzer be able to determine
> aliasing between the symbol of a CALL  WN and the Alias tag of the target
> WN.
> Isn't this what the function aliasedWithCall()  should do?
>

There are many ways for handling aliased with calls, all depends on how
conservative you want to be.
The most conservative way is to assume all variables are aliased with the
call, secondly, you could consider only address-taken variables may aliased
with the call. More accurate analysis can be combined with ipa_analysis
results. Please refer to "_mod _ref" fields of class CallSite. You could
collect modification and reference sets of each callsite through call
chains by transitive closure in IPA. Then, use these two sets to decide
whether a certain AliasTag's points-to aliased with the call or not.


> *********************************************************
> 2. Want to use Alias manager with IPA Nystrom Alias Analyzer?
> I have been trying to extract interprocedural alias information.
> [ I having been ussing ipa_preopt.cxx and the nystom_alais_analyzer.cxx for
> my reference. ]
>
> I traverse each node of the IPA_CALL_GRAPH
> and set the IPA_context for every node. After this, for every PU, I create
> the alias manager and use the BE Nystrom
> Alias Analysis to determine the aliasing between two WNs within a PU.
> Because of the issue discussed in pt (1) above,
> isn't using the IPA Nystrom Alias Analyze a cleaner approach?
>
> If so.... this is where I am stuck...
>

First of all, given two WNs, you would like to figure it out whether they
are aliased or not by using IPA_Nystrom_Alias_Analyzer results? Is this
what you want?
If it is. I would suggest several other alternative convenient ways for
doing it. Using ALIAS_MANAGER directly in IPA is not that intuitive,
as ALIAS_MANAGER is originally designed for BE, and have to be created
multiple times for each PU. Two other ways might be more easy to solve your
problem:

1) AliasTag.   After IPA_PREOPT, IPA_Nystrom_Alias_Analyzer points-to
results will be transfered AliasTag and associated with each WN(please
refer to "genAliasTag" and "transferAliasTag". Remember to keep
_aliasTagMap of each PU). Using AliasTag directly in IPA would be more
efficient than ALIAS_MANAGER.

2) ConstraintGraphNode.  Using WN_MAP_ALIAS_CGNODE you could map each WN to
a ConstraintGraphNode(many to one map, multiple WNs may map to one CGNode).


Regards
Yulei


> I understand that ALIAS MANAGER can be used to access Aliasing information
> through ALIAS TAG support.
> I want to access information at IPA (with -ipa turned on) and not the BE
> (with -O2) turned ON.
> I observe that the BE Nystrom Alias Analyzer inherits from AliasAnalyzer
> class.
> However, IPA Nystrom Alias Analyzer does not.
>
> Is there something I am missing....
> I would like to mention that I want to use the alias information at the end
> of IPA.
> *********************************************************
>
> Could someone please help me out?
> Many thanks,
> Sincerely,
>
> -- Siddhartha Jana
> University of Houston
> -------------- next part --------------
> An HTML attachment was scrubbed...
>
>
------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Open64-devel mailing list
Open64-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/open64-devel

Reply via email to