diff options
author | Thomas Schwinge <thomas@codesourcery.com> | 2021-08-02 17:38:05 +0200 |
---|---|---|
committer | Thomas Schwinge <thomas@codesourcery.com> | 2021-08-23 17:45:40 +0200 |
commit | bb75b22aba254e8ff144db27b1c8b4804bad73bb (patch) | |
tree | f58d680f5df77ff9a0ab550f90aa6d1d0ccdbab0 /gcc | |
parent | 1a129376bbc26d3c30af3c1ae6036e2e1446db40 (diff) | |
download | gcc-bb75b22aba254e8ff144db27b1c8b4804bad73bb.zip gcc-bb75b22aba254e8ff144db27b1c8b4804bad73bb.tar.gz gcc-bb75b22aba254e8ff144db27b1c8b4804bad73bb.tar.bz2 |
Allow matching Intel MIC in OpenMP 'declare variant'
..., and use that to improve XFAILing for Intel MIC offloading execution
instead of compilation in 'libgomp.c-c++-common/target-45.c',
'libgomp.fortran/target10.f90'.
gcc/
* config/i386/i386-options.c (ix86_omp_device_kind_arch_isa)
<omp_device_arch> [ACCEL_COMPILER]: Match "intel_mic".
* config/i386/t-omp-device (omp-device-properties-i386) <arch>:
Add "intel_mic".
libgomp/
* testsuite/lib/libgomp.exp
(check_effective_target_offload_target_intelmic): Remove 'proc'.
(check_effective_target_offload_device_intel_mic): New 'proc'.
* testsuite/libgomp.c-c++-common/on_device_arch.h
(device_arch_intel_mic, on_device_arch_intel_mic): New.
* testsuite/libgomp.c-c++-common/target-45.c: Use that for
'dg-xfail-run-if'.
* testsuite/libgomp.fortran/target10.f90: Likewise.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/config/i386/i386-options.c | 4 | ||||
-rw-r--r-- | gcc/config/i386/t-omp-device | 2 |
2 files changed, 5 insertions, 1 deletions
diff --git a/gcc/config/i386/i386-options.c b/gcc/config/i386/i386-options.c index 6b78998..fee5a48 100644 --- a/gcc/config/i386/i386-options.c +++ b/gcc/config/i386/i386-options.c @@ -304,6 +304,10 @@ ix86_omp_device_kind_arch_isa (enum omp_device_kind_arch_isa trait, case omp_device_kind: return strcmp (name, "cpu") == 0; case omp_device_arch: +#ifdef ACCEL_COMPILER + if (strcmp (name, "intel_mic") == 0) + return 1; +#endif if (strcmp (name, "x86") == 0) return 1; if (TARGET_64BIT) diff --git a/gcc/config/i386/t-omp-device b/gcc/config/i386/t-omp-device index 037ae5e1..29350a1 100644 --- a/gcc/config/i386/t-omp-device +++ b/gcc/config/i386/t-omp-device @@ -1,6 +1,6 @@ omp-device-properties-i386: $(srcdir)/config/i386/i386-options.c echo kind: cpu > $@ - echo arch: x86 x86_64 i386 i486 i586 i686 ia32 >> $@ + echo arch: intel_mic x86 x86_64 i386 i486 i586 i686 ia32 >> $@ echo isa: sse4 `sed -n '/^static struct ix86_target_opts isa2\?_opts\[\] =/,/^};/p' \ $(srcdir)/config/i386/i386-options.c | \ sed -n 's/",.*$$//;s/^ { "-m//p'` >> $@ |