Activity log for bug #960274

Date Who What changed Old value New value Message
2012-03-20 14:52:56 mickael guene bug added bug
2012-03-20 14:52:56 mickael guene attachment added source file that cause crash https://bugs.launchpad.net/bugs/960274/+attachment/2904096/+files/small.c
2012-03-20 15:07:02 mickael guene attachment added small.patch https://bugs.launchpad.net/gcc-linaro/+bug/960274/+attachment/2904136/+files/small.patch
2012-03-20 15:07:36 mickael guene description Compiler crash when compiling small.c file with following options: I'm using 4.6-2012.03 release. gcc -c small.c -msoft-float -march=armv7-a -mfloat-abi=softfp -mfpu=neon -mvectorize-with-neon-quad -ftree-vectorize -O2 It appear that problem is due to the fact that we deference random pointer. This is due to the fact that in vectorizable_type_promotion() in case of slp and with code == WIDEN_LSHIFT_EXPR no operand is push into vec_oprnds1. Below patch fix this problem but then we have crash later on. --- sources/gcc/tree-vect-stmts.c 2012-03-12 12:31:42.000000000 +0100 +++ sources.patch/gcc/tree-vect-stmts.c 2012-03-20 15:14:28.000000000 +0100 @@ -3586,7 +3586,7 @@ /* Store vec_oprnd1 for every vector stmt to be created for SLP_NODE. We check during the analysis that all the shift arguments are the same. */ - for (k = 0; k < slp_node->vec_stmts_size - 1; k++) + for (k = 0; k < slp_node->vec_stmts_size; k++) VEC_quick_push (tree, vec_oprnds1, vec_oprnd1); vect_get_vec_defs (op0, NULL_TREE, stmt, &vec_oprnds0, NULL, Compiler crash when compiling small.c file with following options: I'm using 4.6-2012.03 release. gcc -c small.c -msoft-float -march=armv7-a -mfloat-abi=softfp -mfpu=neon -mvectorize-with-neon-quad -ftree-vectorize -O2  It appear that problem is due to the fact that we deference random pointer. This is due to the fact that in vectorizable_type_promotion() in case of slp and with code == WIDEN_LSHIFT_EXPR no operand is push into vec_oprnds1.  Attach patch fix this problem but then we have crash later on.
2012-03-20 17:02:33 Ulrich Weigand gcc-linaro: status New Confirmed
2012-03-20 17:02:39 Ulrich Weigand gcc-linaro: importance Undecided High
2012-03-20 17:02:44 Ulrich Weigand gcc-linaro: assignee Ulrich Weigand (uweigand)
2012-03-21 14:27:42 Ulrich Weigand gcc-linaro: status Confirmed In Progress
2012-03-23 15:45:08 Ulrich Weigand marked as duplicate 960283