This is the mail archive of the
gcc-prs@gcc.gnu.org
mailing list for the GCC project.
Re: target/5381: __builtin_ia32_pmulhuw seems unknown to compiler
- From: Richard Henderson <rth at redhat dot com>
- To: nobody at gcc dot gnu dot org
- Cc: gcc-prs at gcc dot gnu dot org,
- Date: 15 Jan 2002 02:36:08 -0000
- Subject: Re: target/5381: __builtin_ia32_pmulhuw seems unknown to compiler
- Reply-to: Richard Henderson <rth at redhat dot com>
The following reply was made to PR target/5381; it has been noted by GNATS.
From: Richard Henderson <rth@redhat.com>
To: David.Kastrup@t-online.de
Cc: gcc-gnats@gcc.gnu.org
Subject: Re: target/5381: __builtin_ia32_pmulhuw seems unknown to compiler
Date: Mon, 14 Jan 2002 18:29:54 -0800
On Mon, Jan 14, 2002 at 08:44:34PM -0000, David.Kastrup@t-online.de wrote:
> Strangely, while using -mmmx, __builtin_ia32_pmulhuw is unknown to
> the compiler, while, for example, __builtin_ia32_pmulhw seems known.
Not a bug -- pmulhuw is an SSE instruction, not part of
the base MMX instruction set.
> Anyhow, as you can see from the generated code, the compiler fails to
> emit an emmx instruction at the end of the routine, leading to possible
> floating point errors after return.
Again, not a bug. The user is responsible for handling emmx.
If the compiler were deciding to emit MMX code on its own,
then yes I would agree that it must clean up after itself.
But this is not the case here.
r~