This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Dirac, GCC-4.0.0 and SIMD optimisations on x86 architecture
- From: James E Wilson <wilson at specifixinc dot com>
- To: Anuradha Suraparaju <anuradha at rd dot bbc dot co dot uk>
- Cc: gcc at gcc dot gnu dot org
- Date: Wed, 04 May 2005 12:15:50 -0700
- Subject: Re: Dirac, GCC-4.0.0 and SIMD optimisations on x86 architecture
- References: <1114620346.5577.5.camel@chandra.dp.rd.bbc.co.uk> <42780957.1040404@specifixinc.com> <1115224679.14543.7.camel@chandra.dp.rd.bbc.co.uk>
On Wed, 2005-05-04 at 09:37, Anuradha Suraparaju wrote:
> I've attached a sample file to this email. The class defined in the cpp
> file is a cut down and modfied version of the class used in Dirac.
That is a fine bug report. You just need to put it in bugzilla if you
want us to do anything about it.
I took a quick look at it. It appears to be a register allocation
issue. The gcc mainline compiled code I looked at uses 3 mmx registers,
and ends up putting one variable on the stack, thus needing two extra
loads and stores in the inner loop. The gcc-3.3.3 compiled code I
looked at put everything in registers, using 7 mmx registers, and no
unnecessary loads/stores in the inner loop.
--
Jim Wilson, GNU Tools Support, http://www.SpecifixInc.com