[cfe-dev] Option to control level of OpenMP support

Andrey Bokhanko andreybokhanko at gmail.com
Fri May 8 06:42:11 PDT 2015


On Thu, May 7, 2015 at 7:18 PM, Joerg Sonnenberger
<joerg at britannica.bec.de> wrote:
> A third way would be to warn about new features. Kind of like the C++11
> warnings.

Yep, it is a possibility -- but unfortunately, ill suited for OpenMP.

First, due to development model: Sema and CodeGen parts of offloading
(the single biggest OMP 4.0 "feature") will be implemented by separate
groups of people. Alexey Bataev (Intel) will handle Sema, since he is
most experienced with OpenMP implementation in clang, while CodeGen
will be implemented by good folks from IBM. CodeGen for offloading is
HUGE, so Sema will likely be completed way in advance of CodeGen, so
even with a warning message clang will still fail (in CodeGen) for any
offloading-related pragma.

Second, due to the nature of OpenMP language. In C++11 each new
feature is relatively self-contained, so they can be implemented one
after another. Offloading consists of several pragmas, clauses and
combinations of them (see
http://openmp.org/mp-documents/OpenMP-4.0-C.pdf for details). To have
some of these pragmas / clauses fully implemented (with no warnings
printed), while others not implemented / partially implemented (with
warnings printed) means partial implementation of offloading and even
more confusion to end users.

Andrey



More information about the cfe-dev mailing list