OK, I am investigating ifcvt.c - proper place seems to be noce_emit_cmove. In order to do canonicalization, I should know about constantness of the operands. On RISC architectures I don't think I see it - do you see as good solution to call init_alias_analysis and canon_exp on the operands before doing the simplifications? Honza