On Fri, Feb 26, 2016 at 09:32:53AM +0100, Richard Biener wrote: > > The following fixes PR69951, hopefully the last case of decl alias > issues with alias analysis. This time it's points-to and the DECL_UIDs > used in points-to sets not being canonicalized. > > The simplest (and cheapest) fix is to make aliases refer to the > ultimate alias target via their DECL_PT_UID which we conveniently > have available. > > Bootstrapped and tested on x86_64-unknown-linux-gnu, applied to trunk. > > Richard. > > 2016-02-26 Richard Biener <rguent...@suse.de> > > PR tree-optimization/69551 > * tree-ssa-structalias.c (get_constraint_for_ssa_var): When > looking through aliases adjust DECL_PT_UID to refer to the > ultimate alias target. > > * gcc.dg/torture/pr69951.c: New testcase.
I see this new testcase failing on an ARM target as so: /tmp/ccChjoFc.s: Assembler messages: /tmp/ccChjoFc.s:21: Warning: [-mwarn-syms]: Assignment makes a symbol match an ARM instruction: b FAIL: gcc.dg/torture/pr69951.c -O0 (test for excess errors) But I haven't managed to reproduce it outside of the test environment. The fix looks trivial, rename b to anything else you fancy (well... stay clear of add and ldr). I'll put a fix in myself if I can manage to get this to reproduce - though if anyone else wants to do it I won't be offended :-). Thanks, James