diff options
author | Peter Bergner <bergner@linux.ibm.com> | 2020-07-09 15:52:59 -0500 |
---|---|---|
committer | Peter Bergner <bergner@linux.ibm.com> | 2020-07-09 15:58:36 -0500 |
commit | fd263be4b523ff1b7f7dda49d856cc57221e8d21 (patch) | |
tree | 85310a062d8323bc89b344b9c9e5701c2630087d /gcc/fortran/trans-openmp.c | |
parent | 9ddea9306251b7d4e4fd1d67a5941ef7448b2e66 (diff) | |
download | gcc-fd263be4b523ff1b7f7dda49d856cc57221e8d21.zip gcc-fd263be4b523ff1b7f7dda49d856cc57221e8d21.tar.gz gcc-fd263be4b523ff1b7f7dda49d856cc57221e8d21.tar.bz2 |
rs6000: Allow MMA built-in initialization regardless of compiler options
Built-in initialization occurs only once and fairly early, when the
command line options are in force. If the -mcpu=<CPU> is pre-power10,
then we fail to initialize the MMA built-ins, so they are not
available to call in a #pragma target/attribute target function.
The fix is to basically always (on server type cpus) initialize the MMA
built-ins so we can use them in #pragma target/attribute target functions.
2020-07-09 Peter Bergner <bergner@linux.ibm.com>
gcc/
PR target/96125
* config/rs6000/rs6000-call.c (rs6000_init_builtins): Define the MMA
specific types __vector_quad and __vector_pair, and initialize the
MMA built-ins if TARGET_EXTRA_BUILTINS is set.
(mma_init_builtins): Don't test for mask set in rs6000_builtin_mask.
Remove now unneeded mask variable.
* config/rs6000/rs6000.c (rs6000_option_override_internal): Add the
OPTION_MASK_MMA flag for power10 if not already set.
gcc/testsuite/
PR target/96125
* gcc.target/powerpc/pr96125.c: New test.
Diffstat (limited to 'gcc/fortran/trans-openmp.c')
0 files changed, 0 insertions, 0 deletions