Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date: Wed, 9 Nov 2011 17:06:18 +0400
From: Solar Designer <solar@...nwall.com>
To: john-dev@...ts.openwall.com
Subject: inadvertent OpenMP 3.0 dependencies

magnum -

I think it is desirable for our code to also build with compilers that
support only OpenMP 2.5, but not OpenMP 3.0+.  One of these is gcc
versions 4.2.x and 4.3.x.  (OpenMP 3.0 is available starting with gcc
4.4, as far as I understand.)  Another is EKOPath 4:

http://www.pathscale.com/ekopath4-open-source-announcement

0024-j7-sapB-sapG-added-OMP-and-proper-hash-functions.patch
inadvertently introduced a dependency on OpenMP 3.0 here:

+       unsigned int i;
+
+#ifdef _OPENMP
+#pragma omp parallel for
+#endif
+       for (i = 0; i < count; i++) {

In OpenMP 2.5, the loop variable should be signed.

I think you could want to run:

fgrep -A2 'pragma omp' *.c

over the tree and see if there are any other inadvertent uses of
parallel loop variables other than plain (signed) int.  Then change
those to int.

Thanks,

Alexander

Powered by blists - more mailing lists

Your e-mail address:

Powered by Openwall GNU/*/Linux - Powered by OpenVZ