This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

c++/3901: P4 alignment issues



>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:


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]