https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109807

            Bug ID: 109807
           Summary: [14 Regression] sse2-mmx-pmaddwd.c met ICE after
                    commit gcc-14-666-g608e7f3ab47 with march=cascadelake
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: haochen.jiang at intel dot com
  Target Milestone: ---

After that commit in the testcase with command:

/export/users/haochenj/env/build_no_bootstrap_master/gcc/xgcc
-B/export/users/haochenj/env/build_no_bootstrap_master/gcc/
/export/users/haochenj/src/gcc/master/gcc/testsuite/gcc.
target/i386/sse2-mmx-pmaddwd.c -m64 -march=cascadelake
-fdiagnostics-plain-output -O2 -fno-strict-aliasing -msse2 -mno-mmx -lm -o
./sse2-mmx-pmaddwd.exe

We met an ICE:

In file included from
/export/users/haochenj/src/gcc/master/gcc/testsuite/gcc.target/i386/sse2-mmx-pmaddwd.c:5:
/export/users/haochenj/src/gcc/master/gcc/testsuite/gcc.target/i386/sse2-check.h:
In function ‘do_test’:                                                         
                                            
/export/users/haochenj/src/gcc/master/gcc/testsuite/gcc.target/i386/sse2-check.h:10:1:
internal compiler error: in ix86_widen_mult_cost, at config/i386/i386.cc:20442
0x1a57e23 ix86_widen_mult_cost                                                 
                                                                               
                                                      
/export/users/haochenj/src/gcc/master/./gcc/config/i386/i386.cc:20442
0x1a62835 ix86_vector_costs::add_stmt_cost(int, vect_cost_for_stmt,
_stmt_vec_info*, _slp_tree*, tree_node*, int, vect_cost_model_location)
        /export/users/haochenj/src/gcc/master/./gcc/config/i386/i386.cc:23479
0x18dc317 add_stmt_cost(vector_costs*, int, vect_cost_for_stmt,
_stmt_vec_info*, _slp_tree*, tree_node*, int, vect_cost_model_location)
        /export/users/haochenj/src/gcc/master/./gcc/tree-vectorizer.h:1779
0x190fa68 add_stmt_cost(vector_costs*, stmt_info_for_cost*)
        /export/users/haochenj/src/gcc/master/./gcc/tree-vectorizer.h:1801
0x190567f vect_bb_vectorization_profitable_p
        /export/users/haochenj/src/gcc/master/./gcc/tree-vect-slp.cc:6928
0x1907bec vect_slp_region
        /export/users/haochenj/src/gcc/master/./gcc/tree-vect-slp.cc:7441
0x19087dc vect_slp_bbs
        /export/users/haochenj/src/gcc/master/./gcc/tree-vect-slp.cc:7611
0x1908d6c vect_slp_function(function*)
        /export/users/haochenj/src/gcc/master/./gcc/tree-vect-slp.cc:7712
0x192d9b5 execute
        /export/users/haochenj/src/gcc/master/./gcc/tree-vectorizer.cc:1529
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

I took a quick look, it seems that V2SImode is not handled in function
ix86_widen_mult_cost.

Reply via email to