]> gcc.gnu.org Git - gcc.git/commit
rs6000: MMA builtin usage ICEs when used in a #pragma omp parallel and using -fopenmp...
authorPeter Bergner <bergner@linux.ibm.com>
Mon, 14 Jun 2021 21:55:18 +0000 (16:55 -0500)
committerPeter Bergner <bergner@linux.ibm.com>
Fri, 18 Jun 2021 03:16:37 +0000 (22:16 -0500)
commit9e10782370391ed48d2a690a4205594f6b7d2fbe
tree69118c81b64f78d6b428dcd6f1cdc0fd678bb16f
parent261c036e39794dceacb0fcd4fa8d58e6ff32433b
rs6000: MMA builtin usage ICEs when used in a #pragma omp parallel and using -fopenmp [PR100777]

Using an MMA builtin within an openmp parallel code block, leads to an SSA
verification ICE on the temporaries we create while expanding the MMA builtins
at gimple time.  The solution is to use create_tmp_reg_or_ssa_name(), which
knows when to create either an SSA or register temporary.

2021-06-14  Peter Bergner  <bergner@linux.ibm.com>

gcc/
PR target/100777
* config/rs6000/rs6000-call.c (rs6000_gimple_fold_mma_builtin): Use
create_tmp_reg_or_ssa_name().

gcc/testsuite/
PR target/100777
* gcc.target/powerpc/pr100777.c: New test.

(cherry picked from commit 20073534c0ccca0a4e079c053ee0874af10b2ea0)
gcc/config/rs6000/rs6000-call.c
gcc/testsuite/gcc.target/powerpc/pr100777.c [new file with mode: 0644]
This page took 0.061627 seconds and 5 git commands to generate.