r270822 - [OPENMP] Set '_OPENMP' macro to '201511' value to reflect support for

Alexey Bataev via cfe-commits cfe-commits at lists.llvm.org
Thu May 26 00:57:17 PDT 2016


Hi,

I thought about this. Will it be good for you if I add and option 
'-fopenmp-version=[31|40|45]', which will allow you to choose the 
supported version? For now it will just modify the value of _OPENMP, 
later support can be extended for better compatibility.

Best regards,
Alexey Bataev
=============
Software Engineer
Intel Compiler Team

26.05.2016 10:46, Hahnfeld, Jonas пишет:
> Hi Alexey,
>
> I don't really know whether this is correct. IMO this may only be set once
> OpenMP 4.5 is fully supported.
> This currently isn't even the case for OpenMP 4.0 as at least support for
> #pragma omp target update has not yet been committed.
>
> In my understanding the macro may be used for feature tests. That's what we
> tried to do within the ompt.h header and we had to add an exception because
> Clang 3.8 reported 201307 but didn't support #pragma omp declare target (which
> it only recently gained).
> Would you be ok reverting this commit?
>
> Cheers,
> Jonas
>
>> -----Original Message-----
>> From: cfe-commits [mailto:cfe-commits-bounces at lists.llvm.org] On Behalf
>> Of Alexey Bataev via cfe-commits
>> Sent: Thursday, May 26, 2016 6:56 AM
>> To: cfe-commits at lists.llvm.org
>> Subject: r270822 - [OPENMP] Set '_OPENMP' macro to '201511' value to
>> reflect support for
>>
>> Author: abataev
>> Date: Wed May 25 23:56:05 2016
>> New Revision: 270822
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=270822&view=rev
>> Log:
>> [OPENMP] Set '_OPENMP' macro to '201511' value to reflect support for
>> OpenMP 4.5.
>>
>> According to OpenMP 4.5 the _OPENMP macro name is defined to have the
>> decimal value yyyymm where yyyy and mm are the year and month
>> designations of the version of the OpenMP API that the implementation
>> supports. Clang supports OpenMP 4.5 so updated value of _OPENMP macro
>> to 201511.
>>
>> Modified:
>>      cfe/trunk/lib/Frontend/InitPreprocessor.cpp
>>      cfe/trunk/test/OpenMP/predefined_macro.c
>>
>> Modified: cfe/trunk/lib/Frontend/InitPreprocessor.cpp
>> URL: http://llvm.org/viewvc/llvm-
>> project/cfe/trunk/lib/Frontend/InitPreprocessor.cpp?rev=270822&r1=27082
>> 1&r2=270822&view=diff
>> ==========================================================
>> ====================
>> --- cfe/trunk/lib/Frontend/InitPreprocessor.cpp (original)
>> +++ cfe/trunk/lib/Frontend/InitPreprocessor.cpp Wed May 25 23:56:05 2016
>> @@ -928,7 +928,7 @@ static void InitializePredefinedMacros(c
>>       //   macro name is defined to have the decimal value yyyymm where
>>       //   yyyy and mm are the year and the month designations of the
>>       //   version of the OpenMP API that the implementation support.
>> -    Builder.defineMacro("_OPENMP", "201307");
>> +    Builder.defineMacro("_OPENMP", "201511");
>>     }
>>
>>     // CUDA device path compilaton
>>
>> Modified: cfe/trunk/test/OpenMP/predefined_macro.c
>> URL: http://llvm.org/viewvc/llvm-
>> project/cfe/trunk/test/OpenMP/predefined_macro.c?rev=270822&r1=2708
>> 21&r2=270822&view=diff
>> ==========================================================
>> ====================
>> --- cfe/trunk/test/OpenMP/predefined_macro.c (original)
>> +++ cfe/trunk/test/OpenMP/predefined_macro.c Wed May 25 23:56:05 2016
>> @@ -5,7 +5,7 @@
>>   // -fopenmp option is specified
>>   #ifndef _OPENMP
>>   #error "No _OPENMP macro is defined with -fopenmp option"
>> -#elsif _OPENMP != 201307
>> +#elsif _OPENMP != 201511
>>   #error "_OPENMP has incorrect value"
>>   #endif //_OPENMP
>>   #else
>>
>>
>> _______________________________________________
>> cfe-commits mailing list
>> cfe-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits



More information about the cfe-commits mailing list