Commit eef90962 by Jakub Jelinek Committed by Jakub Jelinek

i386.md (movsi_1, [...]): Use mmxadd type for setting MMX register to 0 rather than mmx.

	* config/i386/i386.md (movsi_1, movdi_1_rex64): Use mmxadd type
	for setting MMX register to 0 rather than mmx.

	* g++.dg/opt/mmx2.C: New test.

From-SVN: r105230
parent 4bff36d3
2005-10-11 Jakub Jelinek <jakub@redhat.com>
* config/i386/i386.md (movsi_1, movdi_1_rex64): Use mmxadd type
for setting MMX register to 0 rather than mmx.
2005-10-10 Steve Ellcey <sje@cup.hp.com>
PR target/12098
......
......@@ -1193,7 +1193,7 @@
}
[(set (attr "type")
(cond [(eq_attr "alternative" "2")
(const_string "mmx")
(const_string "mmxadd")
(eq_attr "alternative" "3,4,5")
(const_string "mmxmov")
(eq_attr "alternative" "6")
......@@ -2007,7 +2007,7 @@
}
[(set (attr "type")
(cond [(eq_attr "alternative" "5")
(const_string "mmx")
(const_string "mmxadd")
(eq_attr "alternative" "6,7,8")
(const_string "mmxmov")
(eq_attr "alternative" "9")
......
2005-10-11 Jakub Jelinek <jakub@redhat.com>
* g++.dg/opt/mmx2.C: New test.
2005-10-10 Mark Mitchell <mark@codesourcery.com>
PR c++/24277
// { dg-do link { target i?86-*-* x86_64-*-* } }
// { dg-options "-O2 -mmmx" }
#include <mmintrin.h>
static union u { __m64 m; long long l; } u;
extern "C" void abort (void);
__attribute__((noinline))
void bar (__m64 x)
{
u.m = x;
}
int
main ()
{
bar (_mm_set_pi32 (0x000000FF,0xFFFF00FF));
_mm_empty ();
if (u.l != 0xffffff00ffLL)
abort ();
return 0;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment