On Tue, Jul 02, 2019 at 12:01:00PM +0100, Ramana Radhakrishnan wrote: > >> > >> It's worth figuring out what passes are doing this - however the worry > >> I have is that every pass now needs to be handling this case with > >> respect to pointer attributes. Is there some place that you are > >> storing said information and what is the transitive nature of > >> assignments with these attributes ? > >> > >> regards > >> Ramana > > > > I don't understand what information to store, can you explain? I was > > thinking of putting some code inside the pass, which breaks the dependency > > chains, which will avoid this type of conversions when it finds out that > > the pointer is _Dependent_ptr qualified otherwise don't do anything. Can > > you let me know what I am missing on? > > > > That the pointer has an attribute that it's a dependent pointer . How > do you expect the later passes to detect it has a dependent_ptr > attribute attached to it ? > > > In transitive nature, are you talking about the dependent pointer being > > assigned to some non-dependent pointer and after further assigned to some > > other pointer? > > Yes. What's the expected behaviour as per the document ?
Once a user-created non-dependent pointer is assigned to, it is OK to break the dependency. Or am I missing the point here? Thanx, Paul > Ramana > >> > >> > >> > Does this sounds like a workable plan for ? Let me know your thoughts. > >> > If this sounds good then, we can do this for all the optimizations that > >> > may kill the dependencies at somepoint. > >> > > >> > -Akshat >