This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
c++/3901: P4 alignment issues
- To: gcc-gnats at gcc dot gnu dot org
- Subject: c++/3901: P4 alignment issues
- From: jim at jtan dot com
- Date: 31 Jul 2001 17:06:51 -0000
- Cc: rif at mit dot edu
- Reply-To: jim at jtan dot com
>Number: 3901
>Category: c++
>Synopsis: P4 alignment issues
>Confidential: no
>Severity: non-critical
>Priority: high
>Responsible: unassigned
>State: open
>Class: wrong-code
>Submitter-Id: net
>Arrival-Date: Tue Jul 31 10:16:00 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator: jim@jtan.com
>Release: Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/specs gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)
>Organization:
>Environment:
redhat 6.1, glibc 2.1.3
>Description:
Apparently, the Pentium 4 requires alignment of 32 bytes in
certain cases. I do not know exactly what they are,
but I found a case (on the only P4 system I have access to)
where the length of the program's filename affected
performance by as much as 25%. I eventually discovered
that the length of the filename was affecting the location
of the stack (or stuff on it) which is apparently only
forced to 16 byte alignment, so half the time the code
was being slowed by 25%.
It would be difficult for me to test to see whether this
has been fixed in later versions of GCC, so I am submitting
this as a bug report in hopes that someone else will know.
Ideally, there would be a compiler option to specify that
32-byte alignment is necessary (I don't see one).
(http://gcc.gnu.org/ml/gcc/2001-03/msg00076.html
indicates the 32-byte alignment issue)
>How-To-Repeat:
unsure
>Fix:
unsure
>Release-Note:
>Audit-Trail:
>Unformatted: