This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/15927] THUMB -O2: strength-reduced iteration variable ends up off by 1
- From: "danfuzz at milk dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 19 Jun 2004 00:49:47 -0000
- Subject: [Bug rtl-optimization/15927] THUMB -O2: strength-reduced iteration variable ends up off by 1
- References: <20040611003443.15927.danfuzz@milk.com>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From danfuzz at milk dot com 2004-06-19 00:49 -------
With the new file (m2.c) I tried turning off every single fine-grained "-f" option documented as being
enabled by "-Os" and still the problem persists. That is, the following compile line still causes the
compiler to spit out bad code:
$ arm-elf-gcc -W -Wall -save-temps -c m2.c -mthumb -fno-builtin -Os -fno-strength-reduce
-fno-strict-aliasing -fno-force-mem -fno-optimize-sibling-calls -fno-cse-follow-jumps
-fno-cse-skip-blocks -fno-rerun-cse-after-loop -fno-rerun-loop-opt -fno-gcse -fno-gcse-lm
-fno-gcse-sm -fno-gcse-las -fno-delete-null-pointer-checks -fno-expensive-optimizations
-fno-regmove -fno-schedule-insns -fno-schedule-insns2 -fno-sched-interblock
-fno-sched-spec -fno-caller-saves -fno-peephole2 -fno-reorder-blocks -fno-reorder-functions
-fno-strict-aliasing -fno-unit-at-a-time -fno-crossjumping
This leads me to believe the documentation (at <http://gcc.gnu.org/onlinedocs/gcc-3.4.0/gcc/
Optimize-Options.html#Optimize%20Options>) is out-of-date with respect to what options -O2 and
-Os enable.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15927