This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: "-fno-unswitch-loops" option have no effect?
Hi,
> Works fine for me. gcc.dg/tree-ssa/loop-6.c is unswitched with -O3
> but not with -O3 -fno-unswitch-loops.
This one works for me too.
Could you try to compile "deflate.c" from libz?
Here are my results:
-m68060 -O3 -fno-unswitch-loops - 12,9kb
-m68060 -O3 - 12,9kb
-m68060 -O2 -finline-functions -fgcse-after-reload -ftree-vectorize -fpredictive-commoning - 12,4kb
but it's a lot more visible with "libavcodec/dsputil.c" from FFmpeg package:
OPTFLAGS= -mnobitfield -m68060 -std=c99 -Wdeclaration-after-statement -Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common -fomit-frame-pointer -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -Wcast-qual -Wwrite-strings -Wundef -O2 -finline-functions -fgcse-after-reload -ftree-vectorize -fpredictive-commoning:
306kb
OPTFLAGS= -mnobitfield -m68060 -std=c99 -Wdeclaration-after-statement -Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common -fomit-frame-pointer -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -Wcast-qual -Wwrite-strings -Wundef -O3 -fno-unswitch-loops:
1,18mb
OPTFLAGS= -mnobitfield -m68060 -std=c99 -Wdeclaration-after-statement -Wdisabled-optimization -fno-math-errno -D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -fno-common -fomit-frame-pointer -Wall -Wno-switch -Wpointer-arith -Wredundant-decls -Wcast-qual -Wwrite-strings -Wundef -O3
1,18mb
Regards