[Bug target/17838] New: spills are not re-used
dean-gcc at arctic dot org
gcc-bugzilla@gcc.gnu.org
Tue Oct 5 08:56:00 GMT 2004
the code produced by this has a 1036 byte stack frame... hand inspection of the
assembly finds many stack spills which are never re-used after the value is
dead. for example look at 172(%esp), 748(%esp), 628(%esp), 588(%esp), ...
.i and .s will be in attachments.
-dean
% /home/dean/gcc/bin/gcc -v -save-temps -std=c99 -O3 -g -Wall -march=pentium4
-fomit-frame-pointer -c -o sha256.o sha256.c
Reading specs from /home/dean/gcc/lib/gcc/i686-pc-linux-gnu/4.0.0/specs
Configured with: ../gcc/configure --prefix=/home/dean/gcc
--with-gcc-version-trigger=/home/dean/gcc/gcc/gcc/version.c --enable-languages=c
Thread model: posix
gcc version 4.0.0 20041004 (experimental)
/home/dean/gcc/libexec/gcc/i686-pc-linux-gnu/4.0.0/cc1 -E -quiet -v sha256.c
-march=pentium4 -std=c99 -Wall -fomit-frame-pointer -fworking-directory -O3
-fpch-preprocess -o sha256.i
ignoring nonexistent directory
"/home/dean/gcc/lib/gcc/i686-pc-linux-gnu/4.0.0/../../../../i686-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/local/include
/home/dean/gcc/include
/home/dean/gcc/lib/gcc/i686-pc-linux-gnu/4.0.0/include
/usr/include
End of search list.
/home/dean/gcc/libexec/gcc/i686-pc-linux-gnu/4.0.0/cc1 -fpreprocessed sha256.i
-quiet -dumpbase sha256.c -march=pentium4 -auxbase-strip sha256.o -g -O3 -Wall
-std=c99 -version -fomit-frame-pointer -o sha256.s
GNU C version 4.0.0 20041004 (experimental) (i686-pc-linux-gnu)
compiled by GNU C version 3.3.4 (Debian 1:3.3.4-9).
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
as -V -Qy -o sha256.o sha256.s
GNU assembler version 2.15 (i386-linux) using BFD version 2.15
--
Summary: spills are not re-used
Product: gcc
Version: 4.0.0
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dean-gcc at arctic dot org
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17838
More information about the Gcc-bugs
mailing list