[Bug target/27790] [4.1/4.2 Regression] Unrecognizable insn with -ftree-vectorize -O1 -msse2

2006-05-29 Thread uros at gcc dot gnu dot org


--- Comment #6 from uros at gcc dot gnu dot org  2006-05-30 06:12 ---
Subject: Bug 27790

Author: uros
Date: Tue May 30 06:12:30 2006
New Revision: 114229

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=114229
Log:
PR target/27790
* config/i386/i386.c (ix86_expand_int_vcond): Force cop0
into register for (code == GTU).

testsuite/ChangeLog:

* gcc.target/i386/pr27790.c: New test.


Added:
trunk/gcc/testsuite/gcc.target/i386/pr27790.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/i386/i386.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27790



[Bug target/27790] [4.1/4.2 Regression] Unrecognizable insn with -ftree-vectorize -O1 -msse2

2006-05-29 Thread uros at kss-loka dot si


--- Comment #5 from uros at kss-loka dot si  2006-05-29 11:52 ---
(In reply to comment #4)

> pr27790.patch
> 
> This seems to work for me.

In V4SImode case above, there is

emit_insn (gen_subv4si3 (t1, cop0, cop1));

subv4si insn also needs cop0 in the register:

(define_expand "sub3"
  [(set (match_operand:SSEMODEI 0 "register_operand" "")
(minus:SSEMODEI (match_operand:SSEMODEI 1 "register_operand" "")
(match_operand:SSEMODEI 2 "nonimmediate_operand" "")))]
  "TARGET_SSE2"
  "ix86_fixup_binary_operands_no_copy (MINUS, mode, operands);")


> 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27790



[Bug target/27790] [4.1/4.2 Regression] Unrecognizable insn with -ftree-vectorize -O1 -msse2

2006-05-29 Thread jakub at gcc dot gnu dot org


--- Comment #4 from jakub at gcc dot gnu dot org  2006-05-29 10:42 ---
Created an attachment (id=11528)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11528&action=view)
pr27790.patch

This seems to work for me.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27790



[Bug target/27790] [4.1/4.2 Regression] Unrecognizable insn with -ftree-vectorize -O1 -msse2

2006-05-29 Thread uros at kss-loka dot si


--- Comment #3 from uros at kss-loka dot si  2006-05-29 10:29 ---
I'm testing a patch.


-- 

uros at kss-loka dot si changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |uros at kss-loka dot si
   |dot org |
 Status|NEW |ASSIGNED
   Last reconfirmed|2006-05-29 04:28:52 |2006-05-29 10:29:47
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27790



[Bug target/27790] [4.1/4.2 Regression] Unrecognizable insn with -ftree-vectorize -O1 -msse2

2006-05-28 Thread pinskia at gcc dot gnu dot org


--- Comment #2 from pinskia at gcc dot gnu dot org  2006-05-29 04:31 ---
This also can be reproduced on x86_64:
void binarize (int npixels, unsigned char *b)
{
  int i;
  for (i = 0; i < npixels; i++)
b[i] = (b[i] > 225 ? 0xff : 0);
}


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27790



[Bug target/27790] [4.1/4.2 Regression] Unrecognizable insn with -ftree-vectorize -O1 -msse2

2006-05-28 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2006-05-29 04:28 ---
Confirmed, the bug is in ix86_expand_int_vcond.  


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2006-05-29 04:28:52
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27790



[Bug target/27790] [4.1/4.2 Regression] Unrecognizable insn with -ftree-vectorize -O1 -msse2

2006-05-28 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org
   Keywords||ice-on-valid-code
   Target Milestone|--- |4.1.2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27790