On Thu, Sep 26, 2019 at 09:39:31AM -0600, Jeff Law wrote: > Right. My point is that the multiplication patterns are an exception as > well.
Do you have some evidence for that? I mean, e.g. simplify-rtx.c will in that case almost certainly misbehave, if some expression can have CONST_INT operand(s), then it really needs to have the mode for them determined by the result mode or mode of another operand, or during simplification can be handled by passing that mode around (that is why e.g. simplify_unary_operation has both mode and op_mode arguments, simplify_relational_operation has both mode and cmp_mode arguments etc.), though in such a case they must simplify into something that doesn't include the operation anymore, or CONST_INT can't be propagated into it. Jakub