https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88833
--- Comment #2 from prathamesh3492 at gcc dot gnu.org --- Author: prathamesh3492 Date: Thu Jul 4 06:48:42 2019 New Revision: 273040 URL: https://gcc.gnu.org/viewcvs?rev=273040&root=gcc&view=rev Log: 2019-07-04 Prathamesh Kulkarni <prathamesh.kulka...@linaro.org> PR target/88833 * fwprop.c (reg_single_def_p): New function. (propagate_rtx_1): Add unconditional else inside RTX_EXTRA case. (forward_propagate_into): New parameter reg_prop_only with default value false. Propagate def's src into loop only if SET_SRC and SET_DEST of def_set have single definitions. Likewise if reg_prop_only is set to true. (fwprop): New param fwprop_addr_p. Integrate fwprop_addr into fwprop. (fwprop_addr): Remove. (pass_rtl_fwprop_addr::execute): Call fwprop with arg set to true. (pass_rtl_fwprop::execute): Call fwprop with arg set to false. * simplify-rtx.c (simplify_subreg): Add case for vector comparison. * config/i386/sse.md (UNSPEC_BLENDV): Adjust pattern. testsuite/ * gfortran.dg/pr88833.f90: New test. Added: trunk/gcc/testsuite/gfortran.dg/pr88833.f90 Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/sse.md trunk/gcc/fwprop.c trunk/gcc/simplify-rtx.c trunk/gcc/testsuite/ChangeLog