Why is it we try to swap operands in get_expr_operands, where we are otherwise simply parsing not modifying?
/* If it would be profitable to swap the operands, then do so to canonicalize the statement, enabling better optimization. By placing canonicalization of such expressions here we transparently keep statements in canonical form, even when the statement is modified. */ Is this statement still true? and if so, who is counting on it? DOM? And does it need to be done in update_stmt? Its been a minor wart everytime I turn around that we are modifying the stmt when in the middle of building operands. I'm curious if we still need to do it here, now its making comparing operands more difficult. I believe it basically attempts to have the first operand of a pair be the lower ssa_name index... ie, so commutative or comparision pairs are sorted. Andrew