Re: [PATCH][match-and-simplify] Enable conversions properly for GENERIC

2014-09-26 Thread Jason Merrill
On 09/26/2014 06:54 AM, Richard Biener wrote: It also uncovers that the C++ FE uses a mix of NOP_EXPR and CONVERT_EXPR both when building expressions and when checking for them. Jason - is there any difference between NOP_EXPR and CONVERT_EXPR as far as the C++ FE is concerned? There are a few

[PATCH][match-and-simplify] Enable conversions properly for GENERIC

2014-09-26 Thread Richard Biener
This fixes a ??? and handles NOP_EXPR and CONVERT_EXPR matching similar to GIMPLE by using CASE_CONVERT. This uncovers a mismatch between fold-const.c and tree-ssa-forwprop.c transforms which try to do opposite things with ((T) X) & CST vs. (T) (X & CST). I have disabled the forwprop transform o