This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: If-conversion and conditional move.
On Wed, May 07, 2003 at 02:48:43PM +0100, Dan Towner wrote:
> I tried this, but the define_expand is never called for the
> if-conversion.
That's demonstrably false. If-conversion calls emit_conditional_move,
which calls movcc_gen_code[mode]. If you didn't get your expander
called, then you probably named it incorrectly.
Further, emit_conditional_move may return NULL if the expander failed,
which will return NULL from noce_emit_cmove, which returns FALSE from
noce_try_cmove, which eventually fails the conversion in
noce_process_if_block.
So I have no idea what you're talking about when you claim that
conditional move conversion isn't allowed to fail.
r~