https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103353
--- Comment #10 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The releases/gcc-11 branch has been updated by Kewen Lin <li...@gcc.gnu.org>: https://gcc.gnu.org/g:3fc2a9dba4c06115daaa8a39acffadbc33b51152 commit r11-10220-g3fc2a9dba4c06115daaa8a39acffadbc33b51152 Author: Kewen.Lin <li...@gcc.gnu.org> Date: Tue Aug 16 00:24:07 2022 -0500 rs6000: Adjust mov optabs for opaque modes [PR103353] As PR103353 shows, we may want to continue to expand built-in function __builtin_vsx_lxvp, even if we have already emitted error messages about some missing required conditions. As shown in that PR, without one explicit mov optab on OOmode provided, it would call emit_move_insn recursively. So this patch is to allow the mov pattern to be generated during expanding phase if compiler has already seen errors. PR target/103353 gcc/ChangeLog: * config/rs6000/mma.md (define_expand movoo): Move TARGET_MMA condition check to preparation statements and add handlings for !TARGET_MMA. (define_expand movxo): Likewise. gcc/testsuite/ChangeLog: * gcc.target/powerpc/pr103353.c: New test. (cherry picked from commit 9367e3a65f874dffc8f8a3b6760e77fd9ed67117)