This is the mail archive of the gcc-patches@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]

Trivial SSE fix


Hi

I am palying this as obvious. The fix to predicate problem caught by Richard
has caused gcc to crash on some instruction generated by these expanders.

Tue Feb 13 16:29:34 CET 2001  Jan Hubicka  <jh@suse.cz>
	* i386.md (fixsfsi, fixdfdi): Force operand to register
	for SSE.

Index: i386.md
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/i386/i386.md,v
retrieving revision 1.207
diff -c -3 -p -r1.207 i386.md
*** i386.md	2001/02/13 13:54:44	1.207
--- i386.md	2001/02/13 15:02:26
***************
*** 4049,4054 ****
--- 4097,4103 ----
  {
    if (TARGET_SSE2)
     {
+      operands[0] = force_reg (SImode, operands[0]);
       emit_insn (gen_fix_truncdfsi_sse (operands[0], operands[1]));
       DONE;
     }
***************
*** 4070,4075 ****
--- 4119,4125 ----
  {
    if (TARGET_SSE2)
     {
+      operands[0] = force_reg (SImode, operands[0]);
       emit_insn (gen_fix_truncsfsi_sse (operands[0], operands[1]));
       DONE;
     }


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