public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* Can't generate a 'movd' instructuction
@ 2004-11-26  7:52 James HAUXWELL
  2004-11-26  8:32 ` Sriharsha Vedurmudi
  2004-11-27  5:25 ` Ankit Jain
  0 siblings, 2 replies; 4+ messages in thread
From: James HAUXWELL @ 2004-11-26  7:52 UTC (permalink / raw)
  To: gcc-help

Hi,

I have a piece of code using mmx/sse intrinsics

    ta = __builtin_ia32_pmaddwd(ia, one);
    tb = (v2si)__builtin_ia32_psrlq((di)ta, 32);
    dest.__v = __builtin_ia32_paddd(ta, tb);
    satd = dest.__a[0];

At the phase where I move the bottom 32bits of the mmx register to a 
normal register I should be able to use a movd instruction (according to 
intel documentation), but what ever I do I can't generate one.  It is 
currently generating a movq to a memory loacation and then doing a 
shorter load from the same location.

should be something like.

    ta = __builtin_ia32_pmaddwd(ia, one);
    tb = (v2si)__builtin_ia32_psrlq((di)ta, 32);
    satd = (int)__builtin_ia32_paddd(ta, tb);

Is anyone familiar enough with intrinsics to know why this doesn't work?

Jim

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2004-11-29  8:22 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-11-26  7:52 Can't generate a 'movd' instructuction James HAUXWELL
2004-11-26  8:32 ` Sriharsha Vedurmudi
2004-11-27  5:25 ` Ankit Jain
2004-11-29  8:22   ` James HAUXWELL

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).