All: The presence of aliases disables many optimizations like CCP(conditional constant propagation) , PRE(Partial Redundancy Elimination), Scalar Replacements for conditional IF-THEN-ELSE. The presence of aliasing also disables the IF-conversion.
I am proposing the Multi-version IF-THEN-ELSE where the different version of the IF-THEN-ELSE is one without aliasing and other versions with the aliasing. Thus converting the different Multi-version IF-THEN-ELSE enables the CCP, PRE, Scalar replacements and IF-conversions for the version of the IF-THEN-ELSE that does not have aliasing on the pointer variables and the versions that has alias information will not be affected with such optimizations. I don't have examples on hand currently but I am working on currently to provide the examples. Thoughts? Thanks & Regards Ajit