Patchwork Allow new ISL/CLooG versions

login
register
mail settings
Submitter Jack Howarth
Date Jan. 14, 2013, 8:20 p.m.
Message ID <20130114202039.GA22255@bromo.med.uc.edu>
Download mbox | patch
Permalink /patch/211884/
State New
Headers show

Comments

Jack Howarth - Jan. 14, 2013, 8:20 p.m.
On Mon, Jan 14, 2013 at 08:27:12PM +0100, Dominique Dhumieres wrote:
> In order to bootstrap r195167 with the new ISL/CLooG versions,
> I had to apply the following patch:
> 
> --- ../work/configure	2013-01-14 19:32:00.000000000 +0100
> +++ configure	2013-01-14 19:42:15.000000000 +0100
> @@ -5848,7 +5848,7 @@ else
>  int
>  main ()
>  {
> -if (strncmp (isl_version (), "isl-0.10", strlen ("isl-0.10")) != 0)
> +if (strncmp (isl_version (), "isl-0.11", strlen ("isl-0.11")) != 0)
>       return 1;
>  
>    ;
> @@ -6033,7 +6033,7 @@ int
>  main ()
>  {
>  #if CLOOG_VERSION_MAJOR != 0 \
> -    || CLOOG_VERSION_MINOR != 17 \
> +    || CLOOG_VERSION_MINOR != 18 \
>      || CLOOG_VERSION_REVISION < 0
>      choke me
>     #endif
> 
> (I didn't bother to update the messages: got 
> checking for version 0.10 of ISL... yes
> checking for version 0.17.0 of CLooG... yes).
> 
> Dominique

Dominique,
   I believe that hack effectively changes...


Richard seems to be assuming that the second call to ISL_CHECK_VERSION(0,11)
in configure.ac will rerun the isl checks on 0.11.x but I suspect this doesn't
take in account the caching of the results from the first call to ISL_CHECK_VERSION().
Certainly from my config.log against isl 0.11.1 and cloog 0.18.0, it appears that
the version tests from the ISL_CHECK_VERSION(0,11) call aren't run and the
cached result from the first ISL_CHECK_VERSION(0,10) is used instead.
         Jack
Dominique Dhumieres - Jan. 14, 2013, 8:28 p.m.
Jack,

Without the change for isl, I get at configure time:

-g -O2 -I/opt/mp/include -I/opt/mp/include
checking for version 0.10 of ISL... no
-g -O2 -I/opt/mp/include -I/opt/mp/include
checking for version 0.11 of ISL... (cached) no
configure: error: Unable to find a usable ISL.  See config.log for details.

and after it but without the change for CLooG

checking for version 0.10 of ISL... yes
checking for version 0.17.0 of CLooG... no
checking for version 0.18.0 of CLooG... (cached) no

I don't know if this support your claim or not.

Dominique
Jack Howarth - Jan. 14, 2013, 8:44 p.m.
On Mon, Jan 14, 2013 at 09:28:53PM +0100, Dominique Dhumieres wrote:
> Jack,
> 
> Without the change for isl, I get at configure time:
> 
> -g -O2 -I/opt/mp/include -I/opt/mp/include
> checking for version 0.10 of ISL... no
> -g -O2 -I/opt/mp/include -I/opt/mp/include
> checking for version 0.11 of ISL... (cached) no

Exactly. If you look in config.log you will see that the first instance
of 'checking for version 0.10 of ISL' actually compiles the version check but
the second instance of 'checking for version 0.11 of ISL' is using the cached 
results from the first instance as indicated in the configure output. 
Your hack is just changing the first test from 0.10 to 0.11 so that it
succeeds and configure doesn't even run the second instance of the 
ISL_CHECK_VERSION().

> configure: error: Unable to find a usable ISL.  See config.log for details.
> 
> and after it but without the change for CLooG
> 
> checking for version 0.10 of ISL... yes
> checking for version 0.17.0 of CLooG... no
> checking for version 0.18.0 of CLooG... (cached) no
> 
> I don't know if this support your claim or not.
> 
> Dominique
Richard Guenther - Jan. 15, 2013, 9:24 a.m.
On Mon, 14 Jan 2013, Jack Howarth wrote:

> On Mon, Jan 14, 2013 at 08:27:12PM +0100, Dominique Dhumieres wrote:
> > In order to bootstrap r195167 with the new ISL/CLooG versions,
> > I had to apply the following patch:
> > 
> > --- ../work/configure	2013-01-14 19:32:00.000000000 +0100
> > +++ configure	2013-01-14 19:42:15.000000000 +0100
> > @@ -5848,7 +5848,7 @@ else
> >  int
> >  main ()
> >  {
> > -if (strncmp (isl_version (), "isl-0.10", strlen ("isl-0.10")) != 0)
> > +if (strncmp (isl_version (), "isl-0.11", strlen ("isl-0.11")) != 0)
> >       return 1;
> >  
> >    ;
> > @@ -6033,7 +6033,7 @@ int
> >  main ()
> >  {
> >  #if CLOOG_VERSION_MAJOR != 0 \
> > -    || CLOOG_VERSION_MINOR != 17 \
> > +    || CLOOG_VERSION_MINOR != 18 \
> >      || CLOOG_VERSION_REVISION < 0
> >      choke me
> >     #endif
> > 
> > (I didn't bother to update the messages: got 
> > checking for version 0.10 of ISL... yes
> > checking for version 0.17.0 of CLooG... yes).
> > 
> > Dominique
> 
> Dominique,
>    I believe that hack effectively changes...
> 
> Index: configure.ac
> ===================================================================
> --- configure.ac	(revision 195174)
> +++ configure.ac	(working copy)
> @@ -1607,7 +1607,7 @@ if test "x$with_isl" != "xno" &&
>    dnl with user input.
>    ISL_INIT_FLAGS
>    dnl The versions of ISL that work for Graphite
> -  ISL_CHECK_VERSION(0,10)
> +  ISL_CHECK_VERSION(0,11)
>    if test "${gcc_cv_isl}" = no ; then
>      ISL_CHECK_VERSION(0,11)
>    fi
> 
> Richard seems to be assuming that the second call to ISL_CHECK_VERSION(0,11)
> in configure.ac will rerun the isl checks on 0.11.x but I suspect this doesn't
> take in account the caching of the results from the first call to ISL_CHECK_VERSION().
> Certainly from my config.log against isl 0.11.1 and cloog 0.18.0, it appears that
> the version tests from the ISL_CHECK_VERSION(0,11) call aren't run and the
> cached result from the first ISL_CHECK_VERSION(0,10) is used instead.

True - I missed that.  I re-tested allowing both versions only
with in-tree.  I'm going to fix this.

Richard.

Patch

Index: configure.ac
===================================================================
--- configure.ac	(revision 195174)
+++ configure.ac	(working copy)
@@ -1607,7 +1607,7 @@  if test "x$with_isl" != "xno" &&
   dnl with user input.
   ISL_INIT_FLAGS
   dnl The versions of ISL that work for Graphite
-  ISL_CHECK_VERSION(0,10)
+  ISL_CHECK_VERSION(0,11)
   if test "${gcc_cv_isl}" = no ; then
     ISL_CHECK_VERSION(0,11)
   fi