Re: Tests for libgomp based on OpenMP Examples 4.0.2.
The patch replaces all FP comparisons with inequalities and epsilons in those tests for libgomp. 2015-07-14 20:37 GMT+03:00 Maxim Blumental : > Sorry, a little misunderstanding between me and Ilya ) I'll send the > new patch now. > > 2015-07-14 20:29 GMT+03:00 Jakub Jelinek : >> On Tue, Jul 14, 2015 at 08:26:49PM +0300, Maxim Blumental wrote: >>> I replaced all FP comparisons in my tests with inequalities and >>> epsilons. Ilya commited the patch. >> >> Even in latest trunk I see >> if (pri != 8237.25) >> and >> if (pri .ne. 8237.25) call abort () >> >> Jakub > > > > -- > > > --------- > Sincerely yours, > Maxim Blumental -- - Sincerely yours, Maxim Blumental 2015-07-14 Maxim Blumenthal * testsuite/libgomp.c/examples-4/simd-3.c: (main): Change type of res and ref from int to double. Replaced their comparison with an inequality of their difference and EPS. * testsuite/libgomp.c/examples-4/simd-8.c: (main): Replace the comparison of pri and a reference number with an inequality of their difference and EPS. * testsuite/libgomp.fortran/examples-4/simd-3.f90: (main): Replaced the comparison of sum and sum_ref with an inequality of their difference and EPS. * testsuite/libgomp.fortran/examples-4/simd-8.f90: (main): Replace the comparison of pri and a reference number with an inequality of their difference and EPS. fp_compar.patch Description: Binary data
Re: Tests for libgomp based on OpenMP Examples 4.0.2.
Changed simd-7 test for C and Fortran to lower the execution time to ~0.6 and ~1 second respectively while keeping the test representative. Measured the time like: $ time make check-target-libgomp RUNTESTFLAGS="c.exp"=simd-7.c on a Linux x86-64 machine. (Without the patch I also had a very long time: ~7.5 and ~60 seconds) 2015-07-20 22:40 GMT+03:00 H.J. Lu : > On Tue, Jul 14, 2015 at 11:04 AM, Jakub Jelinek wrote: >> On Tue, Jul 14, 2015 at 08:40:50PM +0300, Maxim Blumental wrote: >>> The patch replaces all FP comparisons with inequalities and epsilons >>> in those tests for libgomp. >> > > libgomp.fortran/examples-4/simd-7.f90 takes a very long time to > run on Linux/ia32. I get random: > > FAIL: libgomp.fortran/examples-4/simd-7.f90 -O0 execution test > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66950 > > > -- > H.J. -- - Sincerely yours, Maxim Blumental 2015-07-22 Maxim Blumenthal PR libgomp/66950 * testsuite/libgomp.c/examples-4/simd-7.c: Lower the defined constant N to 30. Add iterative reference function for Fibonacci numbers - fib_ref. (fib): Correct corner cases in the recursion. (main): Replace the non-simd loop with fib_ref call. * testsuite/libgomp.fortran/examples-4/simd-7.f90: Add iterative reference subroutine for Fibonacci numbers - fib_ref. (fibonacci): Lower the parameter N to 30. Correct accordingly check for the last array element value. Replace the non-simd loop with fib_ref call. Remove redundant b_ref array. Remove the comparison of the last array element with according Fibbonacci sequence element. (fib): Correct corner cases in the recursion. fib_fix.patch Description: Binary data
Re: Tests for libgomp based on OpenMP Examples 4.0.2.
Corrected log and patch. 2015-07-22 17:12 GMT+03:00 Jakub Jelinek : > On Wed, Jul 22, 2015 at 04:55:09PM +0300, Maxim Blumental wrote: >> 2015-07-22 Maxim Blumenthal >> >> PR libgomp/66950 >> * testsuite/libgomp.c/examples-4/simd-7.c: Lower the defined constant >> N to 30. Add iterative reference function for Fibonacci numbers >> - fib_ref. > > Incorrect changelog. It should be: > * testsuite/libgomp.c/examples-4/simd-7.c (N): Change to 30 from 45. > (fib_ref): New function. > >> (fib): Correct corner cases in the recursion. > > Why the n == 2 special case? I think only the if (n <= 1) return n; > case is really needed. > >> (main): Replace the non-simd loop with fib_ref call. >> * testsuite/libgomp.fortran/examples-4/simd-7.f90: Add iterative >> reference subroutine for Fibonacci numbers - fib_ref. > > See above for ChangeLog entry issue. > >> (fibonacci): Lower the parameter N to 30. Correct accordingly check >> for >> the last array element value. Replace the non-simd loop with fib_ref >> call. Remove redundant b_ref array. Remove the comparison of the last >> array element with according Fibbonacci sequence element. >> (fib): Correct corner cases in the recursion. > > See above for n == 2 special case. > > Jakub -- - Sincerely yours, Maxim Blumental 2015-07-22 Maxim Blumenthal PR libgomp/66950 * testsuite/libgomp.c/examples-4/simd-7.c(N): Change to 30 from 45. (fib_ref): New function. (fib): Correct corner cases in the recursion. (main): Replace the non-simd loop with fib_ref call. * testsuite/libgomp.fortran/examples-4/simd-7.f90: (fib_ref): New subroutine. (fibonacci): Lower the parameter N to 30. Correct accordingly check for the last array element value. Replace the non-simd loop with fib_ref call. Remove redundant b_ref array. Remove the comparison of the last array element with according Fibbonacci sequence element. (fib): Correct corner cases in the recursion. fib_fix.patch Description: Binary data
Re: [PATCH 3/4] Add libgomp plugin for Intel MIC
Applied the idea with python script alternative. Review, please. 2015-07-24 17:18 GMT+03:00 David Malcolm : > On Fri, 2015-07-24 at 10:01 +0200, Jakub Jelinek wrote: >> #!/usr/bin/python >> import sys >> with open(sys.argv[1],"rb") as f: >> nextblock = f.read(12) >> while 1: >> block = nextblock >> nextblock = f.read(12) >> if block == "": >> break >> str = "" >> for ch in block: >> if str == "": >> str = " " >> else: >> str += ", " >> if ord(ch) < 10: >> str += "0x0" + chr(ord('0')+ord(ch)) >> elif ord(ch) < 16: >> str += "0x0" + chr(ord('a')+ord(ch)-10) >> else: >> str += hex(ord(ch)) >> if nextblock != "": >> str += "," >> print str >> >> python ./xxd.py $< >> $@ >> does the same thing as >> cat $< | xxd -include >> $@ >> (CCing David as python expert, my python knowledge is limited and >> 15 years old, not sure how portable this is (python 2 vs. python 3, >> and >> even python 2 minimal versions)). > > It doesn't work with Python 3 for various reasons ("print" syntax, and > str vs bytes issues). > > I'm attaching a version which works with both Python 2 and Python 3 > (2.7.5 and 3.3.2 were the versions I tried). > > It ought to work with much older python 2 versions (as your script > appears to), but I don't have them handy. > > Presumably it would need a license header and some descriptive comments. > > (snip) > > Dave -- - Sincerely yours, Maxim Blumental 2015-07-28 Maxim Blumenthal * configure.ac: Add a check for xxd or python presence when the target is intelmic or intelmicemul. * configure: Regenerate. * liboffloadmic/plugin/Makefile.am: Add a condition into make_target_image.h generating code. This condition performs an action with either xxd or a special python script during the generating. * liboffloadmic/plugin/xxd.py: New file. * liboffloadmic/plugin/Makefile.in: Regenerate. xxd_check.patch Description: Binary data
Re: [PATCH 3/4] Add libgomp plugin for Intel MIC
Could you probably review the patch, please? 2015-07-28 18:42 GMT+03:00 Maxim Blumental : > Applied the idea with python script alternative. Review, please. > > 2015-07-24 17:18 GMT+03:00 David Malcolm : >> On Fri, 2015-07-24 at 10:01 +0200, Jakub Jelinek wrote: >>> #!/usr/bin/python >>> import sys >>> with open(sys.argv[1],"rb") as f: >>> nextblock = f.read(12) >>> while 1: >>> block = nextblock >>> nextblock = f.read(12) >>> if block == "": >>> break >>> str = "" >>> for ch in block: >>> if str == "": >>> str = " " >>> else: >>> str += ", " >>> if ord(ch) < 10: >>> str += "0x0" + chr(ord('0')+ord(ch)) >>> elif ord(ch) < 16: >>> str += "0x0" + chr(ord('a')+ord(ch)-10) >>> else: >>> str += hex(ord(ch)) >>> if nextblock != "": >>> str += "," >>> print str >>> >>> python ./xxd.py $< >> $@ >>> does the same thing as >>> cat $< | xxd -include >> $@ >>> (CCing David as python expert, my python knowledge is limited and >>> 15 years old, not sure how portable this is (python 2 vs. python 3, >>> and >>> even python 2 minimal versions)). >> >> It doesn't work with Python 3 for various reasons ("print" syntax, and >> str vs bytes issues). >> >> I'm attaching a version which works with both Python 2 and Python 3 >> (2.7.5 and 3.3.2 were the versions I tried). >> >> It ought to work with much older python 2 versions (as your script >> appears to), but I don't have them handy. >> >> Presumably it would need a license header and some descriptive comments. >> >> (snip) >> >> Dave > > > > -- > > > - > Sincerely yours, > Maxim Blumental -- - Sincerely yours, Maxim Blumental
Fwd: [PATCH 3/4] Add libgomp plugin for Intel MIC
Applied the idea with python script alternative. Review, please. 2015-07-28 Maxim Blumenthal * configure.ac: Add a check for xxd or python presence when the target is intelmic or intelmicemul. * configure: Regenerate. * liboffloadmic/plugin/Makefile.am: Add a condition into make_target_image.h generating code. This condition performs an action with either xxd or a special python script during the generating. * liboffloadmic/plugin/xxd.py: New file. * liboffloadmic/plugin/Makefile.in: Regenerate. xxd_check.patch Description: Binary data
[RFC PATCH] Reducing GCC initialization time by merging builtins
The attached patch illustrates the following idea: we can replace several builtins having the same signature with one auxiliary builtin with a special argument. This argument will specify which particular builtin the auxiliary one should expand to. We pull the argument out at the expand stage and based on its value specify which exactly builtin we want to get: we add info about ISA restrictions and according named pattern. And then it is translated as always. The benefit is that at the initialization time we process as many builtins as many different signatures there are. If we take three static arrays in gcc/config/i386/i386.c with builtin descriptions (namely, bdesc_args, bdesc_special_args, bdesc_round_args) and apply the idea, we can turn 2163 builtin to only 677 (3.2 times less or minus 1486). commit bd37499025b09c9bb0337077040068fcd750c1e5 Author: Maxim Blumenthal Date: Mon Feb 16 16:14:06 2015 +0300 Here we combine several builtins having the same signature by introducing one auxiliary builtin with a special argument which will specify what particular builtin the auxiliary one should expand to. We pull the argument out at the expand stage and based on its value specify information about the builtin we want to get, i.e. ISA mask, named pattern, etc. diff --git a/gcc/config/i386/avx512cdintrin.h b/gcc/config/i386/avx512cdintrin.h index 4da5250..a4e8edf 100644 --- a/gcc/config/i386/avx512cdintrin.h +++ b/gcc/config/i386/avx512cdintrin.h @@ -34,6 +34,9 @@ #define __DISABLE_AVX512CD__ #endif /* __AVX512CD__ */ +/*Opcode argument to __builtin_ia32_v8di_ftype_qi*/ +#define BROADCASTMB512 0 + /* Internal data types for implementing the intrinsics. */ typedef long long __v8di __attribute__ ((__vector_size__ (64))); typedef int __v16si __attribute__ ((__vector_size__ (64))); @@ -166,7 +169,7 @@ extern __inline __m512i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_broadcastmb_epi64 (__mmask8 __A) { - return (__m512i) __builtin_ia32_broadcastmb512 (__A); + return (__m512i) __builtin_ia32_v8di_ftype_qi (__A, BROADCASTMB512); } extern __inline __m512i diff --git a/gcc/config/i386/avx512dqintrin.h b/gcc/config/i386/avx512dqintrin.h index b36ef48..053a391 100644 --- a/gcc/config/i386/avx512dqintrin.h +++ b/gcc/config/i386/avx512dqintrin.h @@ -34,6 +34,9 @@ #define __DISABLE_AVX512DQ__ #endif /* __AVX512DQ__ */ +/*Opcode argument to __builtin_ia32_v8di_ftype_qi*/ +#define CVTMASK2Q512 1 + extern __inline __m512d __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_broadcast_f64x2 (__m128d __A) @@ -534,7 +537,7 @@ extern __inline __m512i __attribute__ ((__gnu_inline__, __always_inline__, __artificial__)) _mm512_movm_epi64 (__mmask8 __A) { - return (__m512i) __builtin_ia32_cvtmask2q512 (__A); + return (__m512i) __builtin_ia32_v8di_ftype_qi (__A, CVTMASK2Q512); } extern __inline __m512i diff --git a/gcc/config/i386/i386-builtin-types.def b/gcc/config/i386/i386-builtin-types.def index 864d0ea..d59a88e 100644 --- a/gcc/config/i386/i386-builtin-types.def +++ b/gcc/config/i386/i386-builtin-types.def @@ -686,6 +686,7 @@ DEF_FUNCTION_TYPE (QI, V4SF, V4SF, INT, QI) DEF_FUNCTION_TYPE (QI, V4SF, V4SF, INT, QI, INT) DEF_FUNCTION_TYPE (V16SI, HI) DEF_FUNCTION_TYPE (V8DI, QI) +DEF_FUNCTION_TYPE (V8DI, QI, INT) DEF_FUNCTION_TYPE (INT, V16QI, V16QI, INT) DEF_FUNCTION_TYPE (UCHAR, UINT, UINT, UINT) diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index 71a5b22..9d38151 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -30497,9 +30497,17 @@ enum ix86_builtins IX86_BUILTIN_READ_FLAGS, IX86_BUILTIN_WRITE_FLAGS, + IX86_BUILTIN_V8DI_FTYPE_QI, IX86_BUILTIN_MAX }; +enum V8DI_FTYPE_QI_type +{ + BROADCASTMB512, + CVTMASK2Q512, + V8DI_FTYPE_QI_type_MAX +}; + /* Table for the ix86 builtin decls. */ static GTY(()) tree ix86_builtins[(int) IX86_BUILTIN_MAX]; @@ -31878,7 +31886,7 @@ static const struct builtin_description bdesc_args[] = { OPTION_MASK_ISA_AVX512F, CODE_FOR_andv8di3_mask, "__builtin_ia32_pandq512_mask", IX86_BUILTIN_PANDQ512, UNKNOWN, (int) V8DI_FTYPE_V8DI_V8DI_V8DI_QI }, { OPTION_MASK_ISA_AVX512F, CODE_FOR_avx512f_vec_dupv16si_mask, "__builtin_ia32_pbroadcastd512", IX86_BUILTIN_PBROADCASTD512, UNKNOWN, (int) V16SI_FTYPE_V4SI_V16SI_HI }, { OPTION_MASK_ISA_AVX512F, CODE_FOR_avx512f_vec_dup_gprv16si_mask, "__builtin_ia32_pbroadcastd512_gpr_mask", IX86_BUILTIN_PBROADCASTD512_GPR, UNKNOWN, (int) V16SI_FTYPE_SI_V16SI_HI }, - { OPTION_MASK_ISA_AVX512CD, CODE_FOR_avx512cd_maskb_vec_dupv8di, "__builtin_ia32_broadcastmb512", IX86_BUILTIN_PBROADCASTMB512, UNKNOWN, (int) V8DI_FTYPE_QI }, + { 0, CODE_FOR_nothing, "__builtin_ia32_v8di_ftype_qi", IX86_BUILTIN_V8DI_FTYPE_QI, UNKNOWN, (int) V8DI_FTYPE_QI_INT }, { OPTION_MASK_ISA_AVX512CD, CODE_FOR_avx512cd_maskw_vec_dupv16si, "__builtin_ia32_broadcastmw512", IX86_BUILTIN_PBROADCASTMW512, UNKNOWN, (i
Tests for libgomp based on OpenMP Examples 4.0.2.
With this letter I propose a patch with tests for libgomp based on OpenMP Examples 4.0.2 both for C and Fortran. The changes are: Renamed existing tests based on OpenMP Examples to make the names more clear. Added 16 tests for simd construct and 10 for depend clause. - Sincerely yours, Maxim Blumental 2015-07-06 Maxim Blumenthal * libgomp/testsuite/libgomp.c/examples-4/e.56.3.c: renamed to array_sections-3.c * libgomp/testsuite/libgomp.c/examples-4/e.56.4.c: renamed to array_sections-4.c * libgomp/testsuite/libgomp.c/examples-4/e.55.1.c: renamed to async_target-1.c * libgomp/testsuite/libgomp.c/examples-4/e.55.2.c: renamed to async_target-2.c * libgomp/testsuite/libgomp.c/examples-4/e.53.1.c: renamed to declare_target-1.c * libgomp/testsuite/libgomp.c/examples-4/e.53.3.c: renamed to declare_target-3.c * libgomp/testsuite/libgomp.c/examples-4/e.53.4.c: renamed to declare_target-4.c * libgomp/testsuite/libgomp.c/examples-4/e.53.5.c: renamed to declare_target-5.c * libgomp/testsuite/libgomp.c/examples-4/e.57.1.c: renamed to device-1.c * libgomp/testsuite/libgomp.c/examples-4/e.57.2.c: renamed to device-2.c * libgomp/testsuite/libgomp.c/examples-4/e.57.3.c: renamed to device-3.c * libgomp/testsuite/libgomp.c/examples-4/simd-1.c: A test for simd construct. * libgomp/testsuite/libgomp.c/examples-4/simd-2.c: Same. * libgomp/testsuite/libgomp.c/examples-4/simd-3.c: Same. * libgomp/testsuite/libgomp.c/examples-4/simd-4.c: Same. * libgomp/testsuite/libgomp.c/examples-4/simd-5.c: Same. * libgomp/testsuite/libgomp.c/examples-4/simd-6.c: Same. * libgomp/testsuite/libgomp.c/examples-4/simd-7.c: Same. * libgomp/testsuite/libgomp.c/examples-4/simd-8.c: Same. * libgomp/testsuite/libgomp.c/examples-4/e.50.1.c: renamed to target-1.c * libgomp/testsuite/libgomp.c/examples-4/e.50.2.c: renamed to target-2.c * libgomp/testsuite/libgomp.c/examples-4/e.50.3.c: renamed to target-3.c * libgomp/testsuite/libgomp.c/examples-4/e.50.4.c: renamed to target-4.c * libgomp/testsuite/libgomp.c/examples-4/e.50.5.c: renamed to target-5.c * libgomp/testsuite/libgomp.c/examples-4/e.51.1.c: renamed to target_data-1.c * libgomp/testsuite/libgomp.c/examples-4/e.51.2.c: renamed to target_data-2.c * libgomp/testsuite/libgomp.c/examples-4/e.51.3.c: renamed to target_data-3.c * libgomp/testsuite/libgomp.c/examples-4/e.51.4.c: renamed to target_data-4.c * libgomp/testsuite/libgomp.c/examples-4/e.51.6.c: renamed to target_data-6.c * libgomp/testsuite/libgomp.c/examples-4/e.51.7.c: renamed to target_data-7.c * libgomp/testsuite/libgomp.c/examples-4/e.52.1.c: renamed to target_update-1.c * libgomp/testsuite/libgomp.c/examples-4/e.52.2.c: renamed to target_update-2.c * libgomp/testsuite/libgomp.c/examples-4/task_dep-1.c: A test for task dependencies. * libgomp/testsuite/libgomp.c/examples-4/task_dep-2.c: Same. * libgomp/testsuite/libgomp.c/examples-4/task_dep-3.c: Same. * libgomp/testsuite/libgomp.c/examples-4/task_dep-4.c: Same. * libgomp/testsuite/libgomp.c/examples-4/task_dep-5.c: Same. * libgomp/testsuite/libgomp.c/examples-4/e.54.2.c: renamed to teams-2.c * libgomp/testsuite/libgomp.c/examples-4/e.54.3.c: renamed to teams-3.c * libgomp/testsuite/libgomp.c/examples-4/e.54.4.c: renamed to teams-4.c * libgomp/testsuite/libgomp.c/examples-4/e.54.5.c: renamed to teams-5.c * libgomp/testsuite/libgomp.c/examples-4/e.54.6.c: renamed to teams-6.c * libgomp/testsuite/libgomp.fortran/examples-4/e.56.3.f90: renamed to array_sections-3.f90 * libgomp/testsuite/libgomp.fortran/examples-4/e.56.4.f90: renamed to array_sections-4.f90 * libgomp/testsuite/libgomp.fortran/examples-4/e.55.1.f90: renamed to async_target-1.f90 * libgomp/testsuite/libgomp.fortran/examples-4/e.55.2.f90: renamed to async_target-2.f90 * libgomp/testsuite/libgomp.fortran/examples-4/e.53.1.f90: renamed to declare_target-1.f90 * libgomp/testsuite/libgomp.fortran/examples-4/e.53.2.f90: renamed to declare_target-2.f90 * libgomp/testsuite/libgomp.fortran/examples-4/e.53.3.f90: renamed to declare_target-3.f90 * libgomp/testsuite/libgomp.fortran/examples-4/e.53.4.f90: renamed to declare_target-4.f90 * libgomp/testsuite/libgomp.fortran/examples-4/e.53.5.f90: renamed to declare_target-5.f90 * libgomp/testsuite/libgomp.fortran/examples-4/e.57.1.f90: renamed to device-1.f90 * libgomp/testsuite/libgomp.fortran/examples-4/e.57.2.f90: renamed to device-2.f90 * libgomp/testsuite/libgomp.fortran/examples-4/e.57.3.f90: renamed to device-3.f90 * libgomp/testsuite/libgomp.fortran/examples-4/simd-1.f90: A test for simd construct. * libgomp/testsuite/libgomp.fortran/examples-4/simd-2.f90: Same. * libgomp/testsuite/libgomp.fortran/examples-4/simd-3.f90: Same. * libgomp/testsuite/libgomp.fortran/examples-4/simd-4.f90: Same
Re: Tests for libgomp based on OpenMP Examples 4.0.2.
Comment on the patch: simd-5.f90 file is marked as xfail since the test fails because 'simd collapse' is an unsupported combination for Fortran (which though is valid in OpenMP API). 2015-07-07 19:48 GMT+03:00 Maxim Blumental : > With this letter I propose a patch with tests for libgomp based on > OpenMP Examples 4.0.2 both for C and Fortran. > > The changes are: > > Renamed existing tests based on OpenMP Examples to make the names more clear. > Added 16 tests for simd construct and 10 for depend clause. > > ----- > Sincerely yours, > Maxim Blumental -- ----- Sincerely yours, Maxim Blumental
Re: Tests for libgomp based on OpenMP Examples 4.0.2.
Updated the attached files: renamed also libgomp.c++ tests, corrected ChangeLog. 2015-07-07 21:29 GMT+03:00 Ilya Verbin : > On Tue, Jul 07, 2015 at 20:17:48 +0200, Jakub Jelinek wrote: >> On Tue, Jul 07, 2015 at 08:08:16PM +0300, Maxim Blumental wrote: >> > > Added 16 tests for simd construct and 10 for depend clause. >> >> Any new tests that aren't in Examples 4.0.* document should go one level >> higher, to libgomp.{c,c++,fortran}/ directly. > > Actually, the examples 4.0.2 document contains simd-* and task_dep-* tests, > they > are new in terms of examples-4 directory. > > -- Ilya -- - Sincerely yours, Maxim Blumental 2015-07-06 Maxim Blumenthal * testsuite/libgomp.c++/examples-4/e.53.2.C: Renamed to... * testsuite/libgomp.c++/examples-4/declare_target-2.C: ...this. * testsuite/libgomp.c++/examples-4/e.51.5.C: Renamed to... * testsuite/libgomp.c++/examples-4/target_data-5.C: ...this. * testsuite/libgomp.c/examples-4/e.56.3.c: Renamed to... * testsuite/libgomp.c/examples-4/array_sections-3.c: ...this. * testsuite/libgomp.c/examples-4/e.56.4.c: Renamed to... * testsuite/libgomp.c/examples-4/array_sections-4.c: ...this. * testsuite/libgomp.c/examples-4/e.55.1.c: Renamed to... * testsuite/libgomp.c/examples-4/async_target-1.c: ...this. * testsuite/libgomp.c/examples-4/e.55.2.c: Renamed to... * testsuite/libgomp.c/examples-4/async_target-2.c: ...this. * testsuite/libgomp.c/examples-4/e.53.1.c: Renamed to... * testsuite/libgomp.c/examples-4/declare_target-1.c: ...this. * testsuite/libgomp.c/examples-4/e.53.3.c: Renamed to... * testsuite/libgomp.c/examples-4/declare_target-3.c: ...this. * testsuite/libgomp.c/examples-4/e.53.4.c: Renamed to... * testsuite/libgomp.c/examples-4/declare_target-4.c: ...this. * testsuite/libgomp.c/examples-4/e.53.5.c: Renamed to... * testsuite/libgomp.c/examples-4/declare_target-5.c: ...this. * testsuite/libgomp.c/examples-4/e.57.1.c: Renamed to... * testsuite/libgomp.c/examples-4/device-1.c: ...this. * testsuite/libgomp.c/examples-4/e.57.2.c: Renamed to... * testsuite/libgomp.c/examples-4/device-2.c: ...this. * testsuite/libgomp.c/examples-4/e.57.3.c: Renamed to... * testsuite/libgomp.c/examples-4/device-3.c: ...this. * testsuite/libgomp.c/examples-4/simd-1.c: A test for simd construct. * testsuite/libgomp.c/examples-4/simd-2.c: Same. * testsuite/libgomp.c/examples-4/simd-3.c: Same. * testsuite/libgomp.c/examples-4/simd-4.c: Same. * testsuite/libgomp.c/examples-4/simd-5.c: Same. * testsuite/libgomp.c/examples-4/simd-6.c: Same. * testsuite/libgomp.c/examples-4/simd-7.c: Same. * testsuite/libgomp.c/examples-4/simd-8.c: Same. * testsuite/libgomp.c/examples-4/e.50.1.c: Renamed to... * testsuite/libgomp.c/examples-4/target-1.c: ...this. * testsuite/libgomp.c/examples-4/e.50.2.c: Renamed to... * testsuite/libgomp.c/examples-4/target-2.c: ...this. * testsuite/libgomp.c/examples-4/e.50.3.c: Renamed to... * testsuite/libgomp.c/examples-4/target-3.c: ...this. * testsuite/libgomp.c/examples-4/e.50.4.c: Renamed to... * testsuite/libgomp.c/examples-4/target-4.c: ...this. * testsuite/libgomp.c/examples-4/e.50.5.c: Renamed to... * testsuite/libgomp.c/examples-4/target-5.c: ...this. * testsuite/libgomp.c/examples-4/e.51.1.c: Renamed to... * testsuite/libgomp.c/examples-4/target_data-1.c: ...this. * testsuite/libgomp.c/examples-4/e.51.2.c: Renamed to... * testsuite/libgomp.c/examples-4/target_data-2.c: ...this. * testsuite/libgomp.c/examples-4/e.51.3.c: Renamed to... * testsuite/libgomp.c/examples-4/target_data-3.c: ...this. * testsuite/libgomp.c/examples-4/e.51.4.c: Renamed to... * testsuite/libgomp.c/examples-4/target_data-4.c: ...this. * testsuite/libgomp.c/examples-4/e.51.6.c: Renamed to... * testsuite/libgomp.c/examples-4/target_data-6.c: ...this. * testsuite/libgomp.c/examples-4/e.51.7.c: Renamed to... * testsuite/libgomp.c/examples-4/target_data-7.c: ...this. * testsuite/libgomp.c/examples-4/e.52.1.c: Renamed to... * testsuite/libgomp.c/examples-4/target_update-1.c: ...this. * testsuite/libgomp.c/examples-4/e.52.2.c: Renamed to... * testsuite/libgomp.c/examples-4/target_update-2.c: ...this. * testsuite/libgomp.c/examples-4/task_dep-1.c: A test for task dependencies. * testsuite/libgomp.c/examples-4/task_dep-2.c: Same. * testsuite/libgomp.c/examples-4/task_dep-3.c: Same. * testsuite/libgomp.c/examples-4/task_dep-4.c: Same. * testsuite/libgomp.c/examples-4/task_dep-5.c: Same. * testsuite/libgomp.c/examples-4/e.54.2.c: Renamed to... * testsuite/libgomp.c/examples-4/teams-2.c: ...this. * testsuite/libgomp.c/examples-4/e.54.3.c: Renamed to... * testsuite/libgomp.c/examples-4/teams-3.c: ...this. * testsuite/libgomp.
Re: Tests for libgomp based on OpenMP Examples 4.0.2.
>The Examples-4/ >directory is supposed to only contain the tests from the 4.0.* examples >document and no other tests. All right: everything I added in it was only tests from the examples document. Renamings were made in accordance with filenames from GitHub. > Any new tests that aren't in Examples 4.0.* document should go one level > higher, to libgomp.{c,c++,fortran}/ directly. There are no any such tests. 2015-07-08 15:50 GMT+03:00 Maxim Blumental : > Updated the attached files: renamed also libgomp.c++ tests, corrected > ChangeLog. > > 2015-07-07 21:29 GMT+03:00 Ilya Verbin : >> On Tue, Jul 07, 2015 at 20:17:48 +0200, Jakub Jelinek wrote: >>> On Tue, Jul 07, 2015 at 08:08:16PM +0300, Maxim Blumental wrote: >>> > > Added 16 tests for simd construct and 10 for depend clause. >>> >>> Any new tests that aren't in Examples 4.0.* document should go one level >>> higher, to libgomp.{c,c++,fortran}/ directly. >> >> Actually, the examples 4.0.2 document contains simd-* and task_dep-* tests, >> they >> are new in terms of examples-4 directory. >> >> -- Ilya > > > > -- > > > - > Sincerely yours, > Maxim Blumental -- - Sincerely yours, Maxim Blumental
Re: Tests for libgomp based on OpenMP Examples 4.0.2.
> I'll have a look, that is supposed to work. I checked the case with 'simd collapse' and found out that the problem was in a typo in the directive in OpenMP Examples whose code I used. There was a redundant 'for' word in it which the parser detected and considered to be an unclassifiable OpenMP directive. Sorry about the false alarm. 2015-07-08 16:00 GMT+03:00 Maxim Blumental : >>The Examples-4/ >>directory is supposed to only contain the tests from the 4.0.* examples >>document and no other tests. > All right: everything I added in it was only tests from the examples > document. Renamings were made in accordance with filenames from > GitHub. >> Any new tests that aren't in Examples 4.0.* document should go one level >> higher, to libgomp.{c,c++,fortran}/ directly. > There are no any such tests. > > 2015-07-08 15:50 GMT+03:00 Maxim Blumental : >> Updated the attached files: renamed also libgomp.c++ tests, corrected >> ChangeLog. >> >> 2015-07-07 21:29 GMT+03:00 Ilya Verbin : >>> On Tue, Jul 07, 2015 at 20:17:48 +0200, Jakub Jelinek wrote: >>>> On Tue, Jul 07, 2015 at 08:08:16PM +0300, Maxim Blumental wrote: >>>> > > Added 16 tests for simd construct and 10 for depend clause. >>>> >>>> Any new tests that aren't in Examples 4.0.* document should go one level >>>> higher, to libgomp.{c,c++,fortran}/ directly. >>> >>> Actually, the examples 4.0.2 document contains simd-* and task_dep-* tests, >>> they >>> are new in terms of examples-4 directory. >>> >>> -- Ilya >> >> >> >> -- >> >> >> - >> Sincerely yours, >> Maxim Blumental > > > > -- > > > - > Sincerely yours, > Maxim Blumental -- - Sincerely yours, Maxim Blumental
Re: Tests for libgomp based on OpenMP Examples 4.0.2.
Now the patch is corrected (according to the previous letter) and ready to be reviewed. I'm looking forward to your feedback. 2015-07-09 15:56 GMT+03:00 Maxim Blumental : > > I'll have a look, that is supposed to work. > I checked the case with 'simd collapse' and found out that the problem > was in a typo in the directive in OpenMP Examples whose code I used. > There was a redundant 'for' word in it which the parser detected and > considered to be an unclassifiable OpenMP directive. Sorry about the > false alarm. > > 2015-07-08 16:00 GMT+03:00 Maxim Blumental : >>>The Examples-4/ >>>directory is supposed to only contain the tests from the 4.0.* examples >>>document and no other tests. >> All right: everything I added in it was only tests from the examples >> document. Renamings were made in accordance with filenames from >> GitHub. >>> Any new tests that aren't in Examples 4.0.* document should go one level >>> higher, to libgomp.{c,c++,fortran}/ directly. >> There are no any such tests. >> >> 2015-07-08 15:50 GMT+03:00 Maxim Blumental : >>> Updated the attached files: renamed also libgomp.c++ tests, corrected >>> ChangeLog. >>> >>> 2015-07-07 21:29 GMT+03:00 Ilya Verbin : >>>> On Tue, Jul 07, 2015 at 20:17:48 +0200, Jakub Jelinek wrote: >>>>> On Tue, Jul 07, 2015 at 08:08:16PM +0300, Maxim Blumental wrote: >>>>> > > Added 16 tests for simd construct and 10 for depend clause. >>>>> >>>>> Any new tests that aren't in Examples 4.0.* document should go one level >>>>> higher, to libgomp.{c,c++,fortran}/ directly. >>>> >>>> Actually, the examples 4.0.2 document contains simd-* and task_dep-* >>>> tests, they >>>> are new in terms of examples-4 directory. >>>> >>>> -- Ilya >>> >>> >>> >>> -- >>> >>> >>> - >>> Sincerely yours, >>> Maxim Blumental >> >> >> >> -- >> >> >> - >> Sincerely yours, >> Maxim Blumental > > > > -- > > > - > Sincerely yours, > Maxim Blumental -- - Sincerely yours, Maxim Blumental libgomp-tests.patch Description: Binary data
Re: [PATCH 3/4] Add libgomp plugin for Intel MIC
Review the patches in the previous letter, please. 2015-08-06 17:34 GMT+03:00 Maxim Blumental : > Applied the idea with python script alternative. Review, please. -- - Sincerely yours, Maxim Blumental