public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/27151]  New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize
@ 2006-04-13 23:03 halcy0n at gentoo dot org
  2006-04-14  0:28 ` [Bug target/27151] " pinskia at gcc dot gnu dot org
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: halcy0n at gentoo dot org @ 2006-04-13 23:03 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 963 bytes --]

The following testcase fails on 4.1.0 and 4.2.0 when compiled with:

gcc -O2 -march=athlon64 -ftree-vectorize -c test.c
test.c: In function ‘vis_clear_data’:
test.c:9: error: unrecognizable insn:
(insn 28 27 29 5 (set (reg:V4SF 73)
        (vec_duplicate:V4SF (reg/v:SI 71 [ vis_type ]))) -1 (nil)
    (nil))
test.c:9: internal compiler error: in extract_insn, at recog.c:2037


float vs_data[75];
void vis_clear_data ()
{
  int vis_type, i;
  for (i = 0; i < 75; i++)
    {
      vs_data[i] = (vis_type == 1);
    }
}


-- 
           Summary: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -
                    ftree-vectorize
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: halcy0n at gentoo dot org


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


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

* [Bug target/27151] [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize
  2006-04-13 23:03 [Bug tree-optimization/27151] New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize halcy0n at gentoo dot org
@ 2006-04-14  0:28 ` pinskia at gcc dot gnu dot org
  2006-04-14  0:51 ` pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-04-14  0:28 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from pinskia at gcc dot gnu dot org  2006-04-14 00:28 -------
What the vectorizer does looks good:
MEM[symbol: vs_data, base: (vector float *) ivtmp.54 * 16B] =  VEC_COND_EXPR <
vect_cst_.35 != { 1, 1, 1, 1 } , { 0.0, 0.0, 0.0, 0.0 } , { 1.0e+0, 1.0e+0,
1.0e+0, 1.0e+0 } > ;


-- 


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


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

* [Bug target/27151] [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize
  2006-04-13 23:03 [Bug tree-optimization/27151] New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize halcy0n at gentoo dot org
  2006-04-14  0:28 ` [Bug target/27151] " pinskia at gcc dot gnu dot org
@ 2006-04-14  0:51 ` pinskia at gcc dot gnu dot org
  2006-04-14  0:56 ` [Bug middle-end/27151] " pinskia at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-04-14  0:51 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from pinskia at gcc dot gnu dot org  2006-04-14 00:51 -------
I get:
t.c:7: internal compiler error: in immed_double_const, at emit-rtl.c:464

Anyways this is either a middle-end issue while expanding the VEC_COND_EXPR or
a target one while expanding it.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |4.1.1


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


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

* [Bug middle-end/27151] [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize
  2006-04-13 23:03 [Bug tree-optimization/27151] New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize halcy0n at gentoo dot org
  2006-04-14  0:28 ` [Bug target/27151] " pinskia at gcc dot gnu dot org
  2006-04-14  0:51 ` pinskia at gcc dot gnu dot org
@ 2006-04-14  0:56 ` pinskia at gcc dot gnu dot org
  2006-04-14  1:01 ` [Bug tree-optimization/27151] " pinskia at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-04-14  0:56 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from pinskia at gcc dot gnu dot org  2006-04-14 00:56 -------
Confirmed, it also ICEs on powerpc-linux-gnu with -maltivec -O1
-ftree-vectorize so it is a middle-end issue.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
          Component|target                      |middle-end
     Ever Confirmed|0                           |1
           Keywords|                            |ice-on-valid-code
      Known to work|                            |4.0.3
   Last reconfirmed|0000-00-00 00:00:00         |2006-04-14 00:56:27
               date|                            |


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


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

* [Bug tree-optimization/27151] [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize
  2006-04-13 23:03 [Bug tree-optimization/27151] New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize halcy0n at gentoo dot org
                   ` (2 preceding siblings ...)
  2006-04-14  0:56 ` [Bug middle-end/27151] " pinskia at gcc dot gnu dot org
@ 2006-04-14  1:01 ` pinskia at gcc dot gnu dot org
  2006-04-15 16:45 ` pinskia at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-04-14  1:01 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from pinskia at gcc dot gnu dot org  2006-04-14 01:01 -------
Actually I take that back about being a middle-end issue and not a vectorizer
one.
  vector float vect_cst_.35;
  int vis_type;
....
  vect_cst_.35 = {vis_type, vis_type, vis_type, vis_type};


so it is getting the wrong type for the vector.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|middle-end                  |tree-optimization
   Last reconfirmed|2006-04-14 00:56:27         |2006-04-14 01:01:38
               date|                            |


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


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

* [Bug tree-optimization/27151] [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize
  2006-04-13 23:03 [Bug tree-optimization/27151] New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize halcy0n at gentoo dot org
                   ` (3 preceding siblings ...)
  2006-04-14  1:01 ` [Bug tree-optimization/27151] " pinskia at gcc dot gnu dot org
@ 2006-04-15 16:45 ` pinskia at gcc dot gnu dot org
  2006-04-16 19:49 ` [Bug tree-optimization/27151] [4.1/4.2 Regression] ICE with -ftree-vectorize with mixed types mmitchel at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-04-15 16:45 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from pinskia at gcc dot gnu dot org  2006-04-15 16:44 -------
*** Bug 27154 has been marked as a duplicate of this bug. ***


-- 


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


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

* [Bug tree-optimization/27151] [4.1/4.2 Regression] ICE with -ftree-vectorize with mixed types
  2006-04-13 23:03 [Bug tree-optimization/27151] New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize halcy0n at gentoo dot org
                   ` (4 preceding siblings ...)
  2006-04-15 16:45 ` pinskia at gcc dot gnu dot org
@ 2006-04-16 19:49 ` mmitchel at gcc dot gnu dot org
  2006-04-27 10:16 ` rguenth at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2006-04-16 19:49 UTC (permalink / raw)
  To: gcc-bugs



-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P2


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


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

* [Bug tree-optimization/27151] [4.1/4.2 Regression] ICE with -ftree-vectorize with mixed types
  2006-04-13 23:03 [Bug tree-optimization/27151] New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize halcy0n at gentoo dot org
                   ` (5 preceding siblings ...)
  2006-04-16 19:49 ` [Bug tree-optimization/27151] [4.1/4.2 Regression] ICE with -ftree-vectorize with mixed types mmitchel at gcc dot gnu dot org
@ 2006-04-27 10:16 ` rguenth at gcc dot gnu dot org
  2006-04-27 12:50 ` patchapp at dberlin dot org
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-04-27 10:16 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from rguenth at gcc dot gnu dot org  2006-04-27 10:16 -------
The vectorizer doesn't seem to handle differing types for COND_EXPRs.  So
something along

*** tree-vect-transform.c       (revision 113296)
--- tree-vect-transform.c       (working copy)
*************** vectorizable_condition (tree stmt, block
*** 2115,2120 ****
--- 2115,2125 ----
    then_clause = TREE_OPERAND (op, 1);
    else_clause = TREE_OPERAND (op, 2);

+   /* We do not handle two different vector types for the condition
+      and the values.  */
+   if (TREE_TYPE (TREE_OPERAND (cond_expr, 0)) != TREE_TYPE (vectype))
+     return false;
+ 
    if (!vect_is_simple_cond (cond_expr, loop_vinfo))
      return false;

should fix it.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2006-04-14 01:01:38         |2006-04-27 10:16:44
               date|                            |


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


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

* [Bug tree-optimization/27151] [4.1/4.2 Regression] ICE with -ftree-vectorize with mixed types
  2006-04-13 23:03 [Bug tree-optimization/27151] New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize halcy0n at gentoo dot org
                   ` (6 preceding siblings ...)
  2006-04-27 10:16 ` rguenth at gcc dot gnu dot org
@ 2006-04-27 12:50 ` patchapp at dberlin dot org
  2006-05-06 17:38 ` rguenth at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  10 siblings, 0 replies; 12+ messages in thread
From: patchapp at dberlin dot org @ 2006-04-27 12:50 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from patchapp at dberlin dot org  2006-04-27 12:50 -------
Subject: Bug number PR27151

A patch for this bug has been added to the patch tracker.
The mailing list url for the patch is
http://gcc.gnu.org/ml/gcc-patches/2006-04/msg01034.html


-- 


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


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

* [Bug tree-optimization/27151] [4.1/4.2 Regression] ICE with -ftree-vectorize with mixed types
  2006-04-13 23:03 [Bug tree-optimization/27151] New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize halcy0n at gentoo dot org
                   ` (7 preceding siblings ...)
  2006-04-27 12:50 ` patchapp at dberlin dot org
@ 2006-05-06 17:38 ` rguenth at gcc dot gnu dot org
  2006-05-06 17:42 ` rguenth at gcc dot gnu dot org
  2006-05-06 17:42 ` rguenth at gcc dot gnu dot org
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-05-06 17:38 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from rguenth at gcc dot gnu dot org  2006-05-06 17:38 -------
Subject: Bug 27151

Author: rguenth
Date: Sat May  6 17:37:53 2006
New Revision: 113580

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113580
Log:
2006-05-06   Richard Guenther  <rguenther@suse.de>

        PR tree-optimization/27151
        * tree-vect-transform.c (vectorizable_condition): Punt on
        values that have a different type than the condition.

        * gcc.dg/vect/pr27151.c: New testcase.

Added:
    trunk/gcc/testsuite/gcc.dg/vect/pr27151.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/tree-vect-transform.c


-- 


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


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

* [Bug tree-optimization/27151] [4.1/4.2 Regression] ICE with -ftree-vectorize with mixed types
  2006-04-13 23:03 [Bug tree-optimization/27151] New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize halcy0n at gentoo dot org
                   ` (9 preceding siblings ...)
  2006-05-06 17:42 ` rguenth at gcc dot gnu dot org
@ 2006-05-06 17:42 ` rguenth at gcc dot gnu dot org
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-05-06 17:42 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from rguenth at gcc dot gnu dot org  2006-05-06 17:41 -------
Subject: Bug 27151

Author: rguenth
Date: Sat May  6 17:41:48 2006
New Revision: 113581

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=113581
Log:
2006-05-06   Richard Guenther  <rguenther@suse.de>

        PR tree-optimization/27151
        * tree-vect-transform.c (vectorizable_condition): Punt on
        values that have a different type than the condition.

        * gcc.dg/vect/pr27151.c: New testcase.

Added:
    branches/gcc-4_1-branch/gcc/testsuite/gcc.dg/vect/pr27151.c
      - copied unchanged from r113580,
trunk/gcc/testsuite/gcc.dg/vect/pr27151.c
Modified:
    branches/gcc-4_1-branch/gcc/ChangeLog
    branches/gcc-4_1-branch/gcc/testsuite/ChangeLog
    branches/gcc-4_1-branch/gcc/tree-vect-transform.c


-- 


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


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

* [Bug tree-optimization/27151] [4.1/4.2 Regression] ICE with -ftree-vectorize with mixed types
  2006-04-13 23:03 [Bug tree-optimization/27151] New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize halcy0n at gentoo dot org
                   ` (8 preceding siblings ...)
  2006-05-06 17:38 ` rguenth at gcc dot gnu dot org
@ 2006-05-06 17:42 ` rguenth at gcc dot gnu dot org
  2006-05-06 17:42 ` rguenth at gcc dot gnu dot org
  10 siblings, 0 replies; 12+ messages in thread
From: rguenth at gcc dot gnu dot org @ 2006-05-06 17:42 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #10 from rguenth at gcc dot gnu dot org  2006-05-06 17:42 -------
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


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


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

end of thread, other threads:[~2006-05-06 17:42 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-04-13 23:03 [Bug tree-optimization/27151] New: [4.1/4.2 Regression] Unrecognizable insn on amd64 with -ftree-vectorize halcy0n at gentoo dot org
2006-04-14  0:28 ` [Bug target/27151] " pinskia at gcc dot gnu dot org
2006-04-14  0:51 ` pinskia at gcc dot gnu dot org
2006-04-14  0:56 ` [Bug middle-end/27151] " pinskia at gcc dot gnu dot org
2006-04-14  1:01 ` [Bug tree-optimization/27151] " pinskia at gcc dot gnu dot org
2006-04-15 16:45 ` pinskia at gcc dot gnu dot org
2006-04-16 19:49 ` [Bug tree-optimization/27151] [4.1/4.2 Regression] ICE with -ftree-vectorize with mixed types mmitchel at gcc dot gnu dot org
2006-04-27 10:16 ` rguenth at gcc dot gnu dot org
2006-04-27 12:50 ` patchapp at dberlin dot org
2006-05-06 17:38 ` rguenth at gcc dot gnu dot org
2006-05-06 17:42 ` rguenth at gcc dot gnu dot org
2006-05-06 17:42 ` rguenth at gcc dot gnu dot org

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).