This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/64319] add alias runtime check to remove load after load redundancy
- From: "b.grayson at samsung dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 16 Dec 2014 15:31:22 +0000
- Subject: [Bug tree-optimization/64319] add alias runtime check to remove load after load redundancy
- Auto-submitted: auto-generated
- References: <bug-64319-4 at http dot gcc dot gnu dot org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64319
--- Comment #2 from Brian Grayson <b.grayson at samsung dot com> ---
alignd() in m88ksim from SPECint95 is a poster child for this kind of
optimization -- it receives several pointers to portions of FP representations,
and then operates on them via code like this:
...
*amantlo >>= 1;
*amantlo |= *amanthi << 31;
*amanthi >>= 1;
...
In this case, there may actually be a code-space reduction(!) with dynamic
disambiguation, because gcc has to insert so many redundant loads and stores in
the general case that are not needed in either of the two forks.
That may make a handy stand-alone real-world testcase.