]> gcc.gnu.org Git - gcc.git/commit
rs6000: Adjust mov optabs for opaque modes [PR103353]
authorKewen.Lin <linkw@gcc.gnu.org>
Tue, 16 Aug 2022 05:24:07 +0000 (00:24 -0500)
committerKewen Lin <linkw@linux.ibm.com>
Wed, 24 Aug 2022 02:30:26 +0000 (21:30 -0500)
commitd0d72e0b1ebbac487d70281a56799bf547034ec1
tree05cd98a005c8fac8efea37fba35bff1e2ca791e9
parentfdde00a9001c985235a99a122fdfc4e36200b264
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)
gcc/config/rs6000/mma.md
gcc/testsuite/gcc.target/powerpc/pr103353.c [new file with mode: 0644]
This page took 0.06077 seconds and 5 git commands to generate.