Hello! (const_int 0) and (const_int 1) are never const_wide_int.
2016-04-25 Uros Bizjak <ubiz...@gmail.com> * config/i386/predicates.md (const0_operand): Do not match const_wide_int code. (const1_operand): Ditto. Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}. Committed to mainline SVN. Uros.
Index: predicates.md =================================================================== --- predicates.md (revision 235411) +++ predicates.md (working copy) @@ -659,7 +659,7 @@ ;; Match exactly zero. (define_predicate "const0_operand" - (match_code "const_int,const_wide_int,const_double,const_vector") + (match_code "const_int,const_double,const_vector") { if (mode == VOIDmode) mode = GET_MODE (op); @@ -668,7 +668,7 @@ ;; Match one or a vector with all elements equal to one. (define_predicate "const1_operand" - (match_code "const_int,const_wide_int,const_double,const_vector") + (match_code "const_int,const_double,const_vector") { if (mode == VOIDmode) mode = GET_MODE (op);