https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96201
bin cheng <amker at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |amker at gcc dot gnu.org --- Comment #2 from bin cheng <amker at gcc dot gnu.org> --- Reason is that memory references in f3 are not identified as address type IV uses. I don't remember details, but it's intended by below commit: commit 653a4b32fe72e33bfd4cdd4c25493049524a3805 Author: Bin Cheng <bin.ch...@arm.com> Date: Thu Mar 2 11:25:11 2017 +0000 re PR tree-optimization/66768 (address space gets lost on literal pointer) PR tree-optimization/66768 * tree-ssa-loop-ivopts.c (find_interesting_uses_address): Skip addr iv_use if base object can't be determined. gcc/testsuite * gcc.target/i386/pr66768.c: New test. From-SVN: r245837 For f1/f2, IVOPTs fails to identify base object because pointers are converted from integer. We need to tell the difference better. For f3, __builtin_assume_aligned is optimized away by GCC-10 before IVOPTs.