https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110751
--- Comment #42 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Robin Dapp <rd...@gcc.gnu.org>: https://gcc.gnu.org/g:27282dc0931484c31fa391772499d878afcc746a commit r14-4179-g27282dc0931484c31fa391772499d878afcc746a Author: Juzhe-Zhong <juzhe.zh...@rivai.ai> Date: Wed Sep 20 22:58:49 2023 +0800 internal-fn: Support undefined rtx for uninitialized SSA_NAME[PR110751] According to PR: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110751 As Richard and Richi suggested, we recognize uninitialized SSA_NAME and convert it into SCRATCH rtx if the target predicate allows SCRATCH. It can help to reduce redundant data move instructions of targets like RISC-V. Bootstrap and Regression on x86 passed. gcc/ChangeLog: PR target/110751 * internal-fn.cc (expand_fn_using_insn): Support undefined rtx value. * optabs.cc (maybe_legitimize_operand): Ditto. (can_reuse_operands_p): Ditto. * optabs.h (enum expand_operand_type): Ditto. (create_undefined_input_operand): Ditto.