[PATCH] Fix FileSetReader/Writer

Jeffrey D. Oldham oldham at codesourcery.com
Thu Sep 2 15:25:53 UTC 2004


Richard Guenther wrote:

>On Wed, 1 Sep 2004, Richard Guenther wrote:
>
>  
>
>>On Wed, 1 Sep 2004 oldham at sirius.codesourcery.com wrote:
>>
>>    
>>
>>>  regressions.io.filesetreadertest1             : FAIL
>>>    Unexpected exit_code, standard error.
>>>
>>>  regressions.io.filesetreadertest2             : FAIL
>>>    Unexpected exit_code, standard error.
>>>      
>>>
>>I finally figured out why these fail on ia32 (but not on amd64 and ia64).
>>The test data was appearantly generated on a 64bit big-endian host and the
>>reader just reads bytes and expects a C++ long to be 64bit everywhere
>>(which is not true obviously).
>>
>>There is also the POOMA_HAS_LONG_LONG define which is set nowhere
>>and used only in the FileSetReader/Writer and ElementProperties.
>>
>>We could check for an appropriate 64bit type during configure and
>>use that or just ignore the issue.
>>    
>>
>
>Yay, and of course this is not enough, as required alignment for 64bit
>datatypes is of course different.  We should shoot the one that came up
>with
>
>  template <class T>
>  struct OffsetData
>  {
>    void reverseBytes();
>
>    int nodedata[6*Dim];  // domain data (same format as .layout)
>    bool isCompressed;    // Is the data compressed
>    Offset_t offset;      // offset in sizeof(T) units
>    T compressedValue;    // Data value, if compressed
>  };
>
>as possibly "portable" structure to write byte-for-byte to a file.
>Placing bool between int and long long is surely not a good idea.
>
>Changing the above to
>
>    int nodedata[6*Dim];  // domain data (same format as .layout)
>    union {
>      bool isCompressed;  // Is the data compressed
>      char pad[8];
>    } u;
>    Offset_t offset;      // offset in sizeof(T) units
>
>_seems_ to "fix" the problem.
>
>So, is the following patch ok?  Tested on ia32, amd64 and ia64 linux.
>
>  
>
This patch seems to contain two ideas: 1) add POOMA_INT64 and 2) 
changing OffsetData.  Ensuring use of 64-bit values seems to be a good 
idea.  I am unsure why the order of structure data members is 
important.  C++ compilers should obey the C++ ABI 
(http://www.codesourcery.com/cxx-abi/) so the structure will be laid out 
in the same way on all machines.

Does using just (1) solve the problem?

>2004Sep01  Richard Guenther <richard.guenther at uni-tuebingen.de>
>
>	* configure: add POOMA_HAS_LONG_LONG and POOMA_INT64
>	defines.
>	scripts/configure.ac: check for long long and sizes of
>	long and long long.  Set POOMA_HAS_LONG_LONG and
>	POOMA_INT64 appropriately.
>	scripts/configure: regenerate.
>	src/IO/FileSetReader.h: use POOMA_INT64 for Offset_t,
>	pad bool inside OffsetData to 64bit using a union.
>	src/IO/FileSetWriter.h: likewise.
>	src/IO/FileSetReader.cpp: honour union.
>  
>
>------------------------------------------------------------------------
>
>Index: configure
>===================================================================
>RCS file: /home/pooma/Repository/r2/configure,v
>retrieving revision 1.117
>diff -u -u -r1.117 configure
>--- configure	17 Aug 2004 20:09:15 -0000	1.117
>+++ configure	1 Sep 2004 13:53:11 -0000
>@@ -1831,6 +1831,12 @@
> 
>   # if the C++ library has a nonstandard iterator or iterator_traits
>   add_autoconf_define("POOMA_NONSTANDARD_ITERATOR");
>+
>+  # if the compiler supports long long
>+  add_autoconf_define("POOMA_HAS_LONG_LONG");
>+
>+  # appropriate 64bit type
>+  add_autoconf_define("POOMA_INT64");
> }
> 
> 
>Index: scripts/configure.ac
>===================================================================
>RCS file: /home/pooma/Repository/r2/scripts/configure.ac,v
>retrieving revision 1.5
>diff -u -u -r1.5 configure.ac
>--- scripts/configure.ac	5 Jan 2004 22:28:39 -0000	1.5
>+++ scripts/configure.ac	1 Sep 2004 13:53:11 -0000
>@@ -351,6 +351,31 @@
> AC_SUBST(POOMA_NONSTANDARD_ITERATOR)
> 
> dnl
>+dnl Check for long, long long type and its sizes to define
>+dnl 64bit type.
>+dnl
>+AC_CHECK_SIZEOF([long])
>+AC_CHECK_SIZEOF([long long])
>+AC_MSG_CHECKING([for 64bit type])
>+if test "$ac_cv_sizeof_long" = "8"; then
>+  AC_MSG_RESULT([long])
>+  POOMA_INT64="long"
>+elif test "$ac_cv_sizeof_long_long" = "8"; then
>+  AC_MSG_RESULT([long long])
>+  POOMA_INT64="long long"
>+else
>+  AC_MSG_RESULT([none - using long anyway])
>+  POOMA_INT64="long"
>+fi
>+AC_SUBST(POOMA_INT64)
>+if test ! "$ac_cv_sizeof_long_long" = "0"; then
>+  POOMA_HAS_LONG_LONG=POOMA_YES
>+else
>+  POOMA_HAS_LONG_LONG=POOMA_NO
>+fi
>+AC_SUBST(POOMA_HAS_LONG_LONG)
>+
>+dnl
> dnl Check for compiler argument for OpenMP support
> dnl
> 
>Index: src/IO/FileSetReader.cpp
>===================================================================
>RCS file: /home/pooma/Repository/r2/src/IO/FileSetReader.cpp,v
>retrieving revision 1.7
>diff -u -u -r1.7 FileSetReader.cpp
>--- src/IO/FileSetReader.cpp	14 Jan 2003 09:59:32 -0000	1.7
>+++ src/IO/FileSetReader.cpp	1 Sep 2004 13:53:11 -0000
>@@ -137,7 +137,7 @@
>   PInsist(mycontext_m == iocontext_m && mycontext_m == dnode.context_m,
>           "This should only be called for nodes on the IO context.");
> 
>-  if (odata.isCompressed)
>+  if (odata.u.isCompressed)
>     {
>       // If compressed, simply set the compressed value. 
> 
>Index: src/IO/FileSetReader.h
>===================================================================
>RCS file: /home/pooma/Repository/r2/src/IO/FileSetReader.h,v
>retrieving revision 1.7
>diff -u -u -r1.7 FileSetReader.h
>--- src/IO/FileSetReader.h	26 Oct 2003 11:26:23 -0000	1.7
>+++ src/IO/FileSetReader.h	1 Sep 2004 13:53:11 -0000
>@@ -228,11 +228,7 @@
> 
> public:
> 
>-#if POOMA_HAS_LONG_LONG
>-  typedef long long Offset_t;
>-#else
>-  typedef long Offset_t;
>-#endif  
>+  typedef POOMA_INT64 Offset_t;
> 
> private:
> 
>@@ -244,7 +240,10 @@
>     void reverseBytes();
> 
>     int nodedata[6*Dim];  // domain data (same format as .layout)
>-    bool isCompressed;    // Is the data compressed
>+    union {
>+      bool isCompressed;    // Is the data compressed
>+      char pad[8];
>+    } u;
>     Offset_t offset;      // offset in sizeof(T) units
>     T compressedValue;    // Data value, if compressed
>   };
>Index: src/IO/FileSetWriter.h
>===================================================================
>RCS file: /home/pooma/Repository/r2/src/IO/FileSetWriter.h,v
>retrieving revision 1.12
>diff -u -u -r1.12 FileSetWriter.h
>--- src/IO/FileSetWriter.h	26 Oct 2003 11:26:23 -0000	1.12
>+++ src/IO/FileSetWriter.h	1 Sep 2004 13:53:11 -0000
>@@ -93,11 +93,7 @@
>   // friends may not be supported everywhere. (This will go away when
>   // we marshal the structure in a standard way.)
> 
>-#if POOMA_HAS_LONG_LONG
>-  typedef long long Offset_t;
>-#else
>-  typedef long Offset_t;
>-#endif  
>+  typedef POOMA_INT64 Offset_t;
>   
> private:
>     
>@@ -105,7 +101,10 @@
>   struct DFOffsetData 
>   {
>     int        vnodedata_m[6 * Dim];
>-    bool       isCompressed_m;
>+    union {
>+      bool       isCompressed_m;
>+      char       pad[8];
>+    } u;
>     Offset_t   offset_m;
>     T          compressedVal_m;
>   };
>@@ -375,9 +374,9 @@
>       odata.vnodedata_m[i * 6 + 3] = a.domain()[i].size();
>     }
> 
>-  odata.isCompressed_m = compressed(a);
>+  odata.u.isCompressed_m = compressed(a);
>   
>-  if (odata.isCompressed_m)
>+  if (odata.u.isCompressed_m)
>     {
>       odata.offset_m = 0;
>       odata.compressedVal_m = a.engine().localEngine().compressedRead();
>Index: scripts/configure
>===================================================================
>RCS file: /home/pooma/Repository/r2/scripts/configure,v
>retrieving revision 1.5
>diff -u -u -r1.5 configure
>--- scripts/configure	5 Jan 2004 22:28:39 -0000	1.5
>+++ scripts/configure	1 Sep 2004 13:53:26 -0000
>@@ -1,6 +1,6 @@
> #! /bin/sh
> # Guess values for system-dependent variables and create Makefiles.
>-# Generated by GNU Autoconf 2.58 for pooma 2.4.0.
>+# Generated by GNU Autoconf 2.59 for pooma 2.4.0.
> #
> # Copyright (C) 2003 Free Software Foundation, Inc.
> # This configure script is free software; the Free Software Foundation
>@@ -308,7 +308,7 @@
> # include <unistd.h>
> #endif"
> 
>-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP ac_ct_CXX CXXCPP POOMA_MISSING_IOMANIPS POOMA_NO_STD_IOSBASE POOMA_NO_STRINGSTREAM POOMA_NO_STD_COMPLEX POOMA_NO_TEMPLATED_COMPLEX POOMA_NO_DEPENDENT_TEMPLATE_ARGS POOMA_NO_PLACEMENT_DELETE POOMA_NO_TEMPLATEFUNC_DEFAULTARGS EGREP POOMA_NO_IOS_HEADER POOMA_NO_IOSBASE_FMTFLAGS POOMA_NO_RESTRICT POOMA_CLOCK_USES_CLOCK_GETTIME POOMA_CLOCK_USES_GETTIMEOFDAY POOMA_NO_TEMPLATE_FRIENDS POOMA_NO_OSTREAM_ITERATOR_1ARG POOMA_NO_STD_MIN_MAX POOMA_NONSTANDARD_ITERATOR openmpargs cppargs cargs LIBOBJS LTLIBOBJS'
>+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS CC CFLAGS CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP ac_ct_CXX CXXCPP POOMA_MISSING_IOMANIPS POOMA_NO_STD_IOSBASE POOMA_NO_STRINGSTREAM POOMA_NO_STD_COMPLEX POOMA_NO_TEMPLATED_COMPLEX POOMA_NO_DEPENDENT_TEMPLATE_ARGS POOMA_NO_PLACEMENT_DELETE POOMA_NO_TEMPLATEFUNC_DEFAULTARGS EGREP POOMA_NO_IOS_HEADER POOMA_NO_IOSBASE_FMTFLAGS POOMA_NO_RESTRICT POOMA_CLOCK_USES_CLOCK_GETTIME POOMA_CLOCK_USES_GETTIMEOFDAY POOMA_NO_TEMPLATE_FRIENDS POOMA_NO_OSTREAM_ITERATOR_1ARG POOMA_NO_STD_MIN_MAX POOMA_NONSTANDARD_ITERATOR POOMA_INT64 POOMA_HAS_LONG_LONG openmpargs cppargs cargs LIBOBJS LTLIBOBJS'
> ac_subst_files=''
> 
> # Initialize some variables set by options.
>@@ -851,24 +851,16 @@
>   cat <<\_ACEOF
> 
> Some influential environment variables:
>-  CC
>-              C compiler
>-  CFLAGS
>-              C compiler flags
>-  CXX
>-              C++ compiler
>-  CXXFLAGS
>-              C++ compiler flags
>-  LDFLAGS
>-              linker flags, e.g. -L<lib dir> if you have
>-              libraries in a nonstandard directory <lib dir>
>-  CPPFLAGS
>-              C/C++ preprocessor flags, e.g. -I<include dir> if you
>-              have headers in a nonstandard directory <include dir>
>-  CPP
>-              C preprocessor
>-  CXXCPP
>-              C++ preprocessor
>+  CC          C compiler
>+  CFLAGS      C compiler flags
>+  CXX         C++ compiler
>+  CXXFLAGS    C++ compiler flags
>+  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
>+              nonstandard directory <lib dir>
>+  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
>+              headers in a nonstandard directory <include dir>
>+  CPP         C preprocessor
>+  CXXCPP      C++ preprocessor
> 
> Use these variables to override the choices made by `configure' or to help
> it to find libraries and programs with nonstandard names/locations.
>@@ -969,7 +961,7 @@
> if $ac_init_version; then
>   cat <<\_ACEOF
> pooma configure 2.4.0
>-generated by GNU Autoconf 2.58
>+generated by GNU Autoconf 2.59
> 
> Copyright (C) 2003 Free Software Foundation, Inc.
> This configure script is free software; the Free Software Foundation
>@@ -983,7 +975,7 @@
> running configure, to aid debugging if configure makes a mistake.
> 
> It was created by pooma $as_me 2.4.0, which was
>-generated by GNU Autoconf 2.58.  Invocation command line was
>+generated by GNU Autoconf 2.59.  Invocation command line was
> 
>   $ $0 $@
> 
>@@ -4536,6 +4528,841 @@
>       conftest$ac_exeext conftest.$ac_ext
> 
> 
>+echo "$as_me:$LINENO: checking for long" >&5
>+echo $ECHO_N "checking for long... $ECHO_C" >&6
>+if test "${ac_cv_type_long+set}" = set; then
>+  echo $ECHO_N "(cached) $ECHO_C" >&6
>+else
>+  cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+int
>+main ()
>+{
>+if ((long *) 0)
>+  return 0;
>+if (sizeof (long))
>+  return 0;
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest.$ac_objext
>+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>+  (eval $ac_compile) 2>conftest.er1
>+  ac_status=$?
>+  grep -v '^ *+' conftest.er1 >conftest.err
>+  rm -f conftest.er1
>+  cat conftest.err >&5
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } &&
>+	 { ac_try='test -z "$ac_cxx_werror_flag"			 || test ! -s conftest.err'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; } &&
>+	 { ac_try='test -s conftest.$ac_objext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_cv_type_long=yes
>+else
>+  echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+ac_cv_type_long=no
>+fi
>+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
>+fi
>+echo "$as_me:$LINENO: result: $ac_cv_type_long" >&5
>+echo "${ECHO_T}$ac_cv_type_long" >&6
>+
>+echo "$as_me:$LINENO: checking size of long" >&5
>+echo $ECHO_N "checking size of long... $ECHO_C" >&6
>+if test "${ac_cv_sizeof_long+set}" = set; then
>+  echo $ECHO_N "(cached) $ECHO_C" >&6
>+else
>+  if test "$ac_cv_type_long" = yes; then
>+  # The cast to unsigned long works around a bug in the HP C Compiler
>+  # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
>+  # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
>+  # This bug is HP SR number 8606223364.
>+  if test "$cross_compiling" = yes; then
>+  # Depending upon the size, compute the lo and hi bounds.
>+cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+int
>+main ()
>+{
>+static int test_array [1 - 2 * !(((long) (sizeof (long))) >= 0)];
>+test_array [0] = 0
>+
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest.$ac_objext
>+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>+  (eval $ac_compile) 2>conftest.er1
>+  ac_status=$?
>+  grep -v '^ *+' conftest.er1 >conftest.err
>+  rm -f conftest.er1
>+  cat conftest.err >&5
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } &&
>+	 { ac_try='test -z "$ac_cxx_werror_flag"			 || test ! -s conftest.err'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; } &&
>+	 { ac_try='test -s conftest.$ac_objext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_lo=0 ac_mid=0
>+  while :; do
>+    cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+int
>+main ()
>+{
>+static int test_array [1 - 2 * !(((long) (sizeof (long))) <= $ac_mid)];
>+test_array [0] = 0
>+
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest.$ac_objext
>+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>+  (eval $ac_compile) 2>conftest.er1
>+  ac_status=$?
>+  grep -v '^ *+' conftest.er1 >conftest.err
>+  rm -f conftest.er1
>+  cat conftest.err >&5
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } &&
>+	 { ac_try='test -z "$ac_cxx_werror_flag"			 || test ! -s conftest.err'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; } &&
>+	 { ac_try='test -s conftest.$ac_objext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_hi=$ac_mid; break
>+else
>+  echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+ac_lo=`expr $ac_mid + 1`
>+		    if test $ac_lo -le $ac_mid; then
>+		      ac_lo= ac_hi=
>+		      break
>+		    fi
>+		    ac_mid=`expr 2 '*' $ac_mid + 1`
>+fi
>+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
>+  done
>+else
>+  echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+int
>+main ()
>+{
>+static int test_array [1 - 2 * !(((long) (sizeof (long))) < 0)];
>+test_array [0] = 0
>+
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest.$ac_objext
>+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>+  (eval $ac_compile) 2>conftest.er1
>+  ac_status=$?
>+  grep -v '^ *+' conftest.er1 >conftest.err
>+  rm -f conftest.er1
>+  cat conftest.err >&5
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } &&
>+	 { ac_try='test -z "$ac_cxx_werror_flag"			 || test ! -s conftest.err'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; } &&
>+	 { ac_try='test -s conftest.$ac_objext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_hi=-1 ac_mid=-1
>+  while :; do
>+    cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+int
>+main ()
>+{
>+static int test_array [1 - 2 * !(((long) (sizeof (long))) >= $ac_mid)];
>+test_array [0] = 0
>+
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest.$ac_objext
>+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>+  (eval $ac_compile) 2>conftest.er1
>+  ac_status=$?
>+  grep -v '^ *+' conftest.er1 >conftest.err
>+  rm -f conftest.er1
>+  cat conftest.err >&5
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } &&
>+	 { ac_try='test -z "$ac_cxx_werror_flag"			 || test ! -s conftest.err'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; } &&
>+	 { ac_try='test -s conftest.$ac_objext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_lo=$ac_mid; break
>+else
>+  echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+ac_hi=`expr '(' $ac_mid ')' - 1`
>+		       if test $ac_mid -le $ac_hi; then
>+			 ac_lo= ac_hi=
>+			 break
>+		       fi
>+		       ac_mid=`expr 2 '*' $ac_mid`
>+fi
>+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
>+  done
>+else
>+  echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+ac_lo= ac_hi=
>+fi
>+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
>+fi
>+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
>+# Binary search between lo and hi bounds.
>+while test "x$ac_lo" != "x$ac_hi"; do
>+  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
>+  cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+int
>+main ()
>+{
>+static int test_array [1 - 2 * !(((long) (sizeof (long))) <= $ac_mid)];
>+test_array [0] = 0
>+
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest.$ac_objext
>+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>+  (eval $ac_compile) 2>conftest.er1
>+  ac_status=$?
>+  grep -v '^ *+' conftest.er1 >conftest.err
>+  rm -f conftest.er1
>+  cat conftest.err >&5
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } &&
>+	 { ac_try='test -z "$ac_cxx_werror_flag"			 || test ! -s conftest.err'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; } &&
>+	 { ac_try='test -s conftest.$ac_objext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_hi=$ac_mid
>+else
>+  echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+ac_lo=`expr '(' $ac_mid ')' + 1`
>+fi
>+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
>+done
>+case $ac_lo in
>+?*) ac_cv_sizeof_long=$ac_lo;;
>+'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long), 77
>+See \`config.log' for more details." >&5
>+echo "$as_me: error: cannot compute sizeof (long), 77
>+See \`config.log' for more details." >&2;}
>+   { (exit 1); exit 1; }; } ;;
>+esac
>+else
>+  if test "$cross_compiling" = yes; then
>+  { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5
>+echo "$as_me: error: internal error: not reached in cross-compile" >&2;}
>+   { (exit 1); exit 1; }; }
>+else
>+  cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+long longval () { return (long) (sizeof (long)); }
>+unsigned long ulongval () { return (long) (sizeof (long)); }
>+#include <stdio.h>
>+#include <stdlib.h>
>+int
>+main ()
>+{
>+
>+  FILE *f = fopen ("conftest.val", "w");
>+  if (! f)
>+    exit (1);
>+  if (((long) (sizeof (long))) < 0)
>+    {
>+      long i = longval ();
>+      if (i != ((long) (sizeof (long))))
>+	exit (1);
>+      fprintf (f, "%ld\n", i);
>+    }
>+  else
>+    {
>+      unsigned long i = ulongval ();
>+      if (i != ((long) (sizeof (long))))
>+	exit (1);
>+      fprintf (f, "%lu\n", i);
>+    }
>+  exit (ferror (f) || fclose (f) != 0);
>+
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest$ac_exeext
>+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
>+  (eval $ac_link) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_cv_sizeof_long=`cat conftest.val`
>+else
>+  echo "$as_me: program exited with status $ac_status" >&5
>+echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+( exit $ac_status )
>+{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long), 77
>+See \`config.log' for more details." >&5
>+echo "$as_me: error: cannot compute sizeof (long), 77
>+See \`config.log' for more details." >&2;}
>+   { (exit 1); exit 1; }; }
>+fi
>+rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
>+fi
>+fi
>+rm -f conftest.val
>+else
>+  ac_cv_sizeof_long=0
>+fi
>+fi
>+echo "$as_me:$LINENO: result: $ac_cv_sizeof_long" >&5
>+echo "${ECHO_T}$ac_cv_sizeof_long" >&6
>+cat >>confdefs.h <<_ACEOF
>+#define SIZEOF_LONG $ac_cv_sizeof_long
>+_ACEOF
>+
>+
>+echo "$as_me:$LINENO: checking for long long" >&5
>+echo $ECHO_N "checking for long long... $ECHO_C" >&6
>+if test "${ac_cv_type_long_long+set}" = set; then
>+  echo $ECHO_N "(cached) $ECHO_C" >&6
>+else
>+  cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+int
>+main ()
>+{
>+if ((long long *) 0)
>+  return 0;
>+if (sizeof (long long))
>+  return 0;
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest.$ac_objext
>+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>+  (eval $ac_compile) 2>conftest.er1
>+  ac_status=$?
>+  grep -v '^ *+' conftest.er1 >conftest.err
>+  rm -f conftest.er1
>+  cat conftest.err >&5
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } &&
>+	 { ac_try='test -z "$ac_cxx_werror_flag"			 || test ! -s conftest.err'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; } &&
>+	 { ac_try='test -s conftest.$ac_objext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_cv_type_long_long=yes
>+else
>+  echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+ac_cv_type_long_long=no
>+fi
>+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
>+fi
>+echo "$as_me:$LINENO: result: $ac_cv_type_long_long" >&5
>+echo "${ECHO_T}$ac_cv_type_long_long" >&6
>+
>+echo "$as_me:$LINENO: checking size of long long" >&5
>+echo $ECHO_N "checking size of long long... $ECHO_C" >&6
>+if test "${ac_cv_sizeof_long_long+set}" = set; then
>+  echo $ECHO_N "(cached) $ECHO_C" >&6
>+else
>+  if test "$ac_cv_type_long_long" = yes; then
>+  # The cast to unsigned long works around a bug in the HP C Compiler
>+  # version HP92453-01 B.11.11.23709.GP, which incorrectly rejects
>+  # declarations like `int a3[[(sizeof (unsigned char)) >= 0]];'.
>+  # This bug is HP SR number 8606223364.
>+  if test "$cross_compiling" = yes; then
>+  # Depending upon the size, compute the lo and hi bounds.
>+cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+int
>+main ()
>+{
>+static int test_array [1 - 2 * !(((long) (sizeof (long long))) >= 0)];
>+test_array [0] = 0
>+
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest.$ac_objext
>+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>+  (eval $ac_compile) 2>conftest.er1
>+  ac_status=$?
>+  grep -v '^ *+' conftest.er1 >conftest.err
>+  rm -f conftest.er1
>+  cat conftest.err >&5
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } &&
>+	 { ac_try='test -z "$ac_cxx_werror_flag"			 || test ! -s conftest.err'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; } &&
>+	 { ac_try='test -s conftest.$ac_objext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_lo=0 ac_mid=0
>+  while :; do
>+    cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+int
>+main ()
>+{
>+static int test_array [1 - 2 * !(((long) (sizeof (long long))) <= $ac_mid)];
>+test_array [0] = 0
>+
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest.$ac_objext
>+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>+  (eval $ac_compile) 2>conftest.er1
>+  ac_status=$?
>+  grep -v '^ *+' conftest.er1 >conftest.err
>+  rm -f conftest.er1
>+  cat conftest.err >&5
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } &&
>+	 { ac_try='test -z "$ac_cxx_werror_flag"			 || test ! -s conftest.err'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; } &&
>+	 { ac_try='test -s conftest.$ac_objext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_hi=$ac_mid; break
>+else
>+  echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+ac_lo=`expr $ac_mid + 1`
>+		    if test $ac_lo -le $ac_mid; then
>+		      ac_lo= ac_hi=
>+		      break
>+		    fi
>+		    ac_mid=`expr 2 '*' $ac_mid + 1`
>+fi
>+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
>+  done
>+else
>+  echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+int
>+main ()
>+{
>+static int test_array [1 - 2 * !(((long) (sizeof (long long))) < 0)];
>+test_array [0] = 0
>+
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest.$ac_objext
>+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>+  (eval $ac_compile) 2>conftest.er1
>+  ac_status=$?
>+  grep -v '^ *+' conftest.er1 >conftest.err
>+  rm -f conftest.er1
>+  cat conftest.err >&5
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } &&
>+	 { ac_try='test -z "$ac_cxx_werror_flag"			 || test ! -s conftest.err'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; } &&
>+	 { ac_try='test -s conftest.$ac_objext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_hi=-1 ac_mid=-1
>+  while :; do
>+    cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+int
>+main ()
>+{
>+static int test_array [1 - 2 * !(((long) (sizeof (long long))) >= $ac_mid)];
>+test_array [0] = 0
>+
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest.$ac_objext
>+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>+  (eval $ac_compile) 2>conftest.er1
>+  ac_status=$?
>+  grep -v '^ *+' conftest.er1 >conftest.err
>+  rm -f conftest.er1
>+  cat conftest.err >&5
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } &&
>+	 { ac_try='test -z "$ac_cxx_werror_flag"			 || test ! -s conftest.err'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; } &&
>+	 { ac_try='test -s conftest.$ac_objext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_lo=$ac_mid; break
>+else
>+  echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+ac_hi=`expr '(' $ac_mid ')' - 1`
>+		       if test $ac_mid -le $ac_hi; then
>+			 ac_lo= ac_hi=
>+			 break
>+		       fi
>+		       ac_mid=`expr 2 '*' $ac_mid`
>+fi
>+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
>+  done
>+else
>+  echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+ac_lo= ac_hi=
>+fi
>+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
>+fi
>+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
>+# Binary search between lo and hi bounds.
>+while test "x$ac_lo" != "x$ac_hi"; do
>+  ac_mid=`expr '(' $ac_hi - $ac_lo ')' / 2 + $ac_lo`
>+  cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+int
>+main ()
>+{
>+static int test_array [1 - 2 * !(((long) (sizeof (long long))) <= $ac_mid)];
>+test_array [0] = 0
>+
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest.$ac_objext
>+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
>+  (eval $ac_compile) 2>conftest.er1
>+  ac_status=$?
>+  grep -v '^ *+' conftest.er1 >conftest.err
>+  rm -f conftest.er1
>+  cat conftest.err >&5
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } &&
>+	 { ac_try='test -z "$ac_cxx_werror_flag"			 || test ! -s conftest.err'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; } &&
>+	 { ac_try='test -s conftest.$ac_objext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_hi=$ac_mid
>+else
>+  echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+ac_lo=`expr '(' $ac_mid ')' + 1`
>+fi
>+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
>+done
>+case $ac_lo in
>+?*) ac_cv_sizeof_long_long=$ac_lo;;
>+'') { { echo "$as_me:$LINENO: error: cannot compute sizeof (long long), 77
>+See \`config.log' for more details." >&5
>+echo "$as_me: error: cannot compute sizeof (long long), 77
>+See \`config.log' for more details." >&2;}
>+   { (exit 1); exit 1; }; } ;;
>+esac
>+else
>+  if test "$cross_compiling" = yes; then
>+  { { echo "$as_me:$LINENO: error: internal error: not reached in cross-compile" >&5
>+echo "$as_me: error: internal error: not reached in cross-compile" >&2;}
>+   { (exit 1); exit 1; }; }
>+else
>+  cat >conftest.$ac_ext <<_ACEOF
>+/* confdefs.h.  */
>+_ACEOF
>+cat confdefs.h >>conftest.$ac_ext
>+cat >>conftest.$ac_ext <<_ACEOF
>+/* end confdefs.h.  */
>+$ac_includes_default
>+long longval () { return (long) (sizeof (long long)); }
>+unsigned long ulongval () { return (long) (sizeof (long long)); }
>+#include <stdio.h>
>+#include <stdlib.h>
>+int
>+main ()
>+{
>+
>+  FILE *f = fopen ("conftest.val", "w");
>+  if (! f)
>+    exit (1);
>+  if (((long) (sizeof (long long))) < 0)
>+    {
>+      long i = longval ();
>+      if (i != ((long) (sizeof (long long))))
>+	exit (1);
>+      fprintf (f, "%ld\n", i);
>+    }
>+  else
>+    {
>+      unsigned long i = ulongval ();
>+      if (i != ((long) (sizeof (long long))))
>+	exit (1);
>+      fprintf (f, "%lu\n", i);
>+    }
>+  exit (ferror (f) || fclose (f) != 0);
>+
>+  ;
>+  return 0;
>+}
>+_ACEOF
>+rm -f conftest$ac_exeext
>+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
>+  (eval $ac_link) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
>+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
>+  (eval $ac_try) 2>&5
>+  ac_status=$?
>+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
>+  (exit $ac_status); }; }; then
>+  ac_cv_sizeof_long_long=`cat conftest.val`
>+else
>+  echo "$as_me: program exited with status $ac_status" >&5
>+echo "$as_me: failed program was:" >&5
>+sed 's/^/| /' conftest.$ac_ext >&5
>+
>+( exit $ac_status )
>+{ { echo "$as_me:$LINENO: error: cannot compute sizeof (long long), 77
>+See \`config.log' for more details." >&5
>+echo "$as_me: error: cannot compute sizeof (long long), 77
>+See \`config.log' for more details." >&2;}
>+   { (exit 1); exit 1; }; }
>+fi
>+rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
>+fi
>+fi
>+rm -f conftest.val
>+else
>+  ac_cv_sizeof_long_long=0
>+fi
>+fi
>+echo "$as_me:$LINENO: result: $ac_cv_sizeof_long_long" >&5
>+echo "${ECHO_T}$ac_cv_sizeof_long_long" >&6
>+cat >>confdefs.h <<_ACEOF
>+#define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long
>+_ACEOF
>+
>+
>+echo "$as_me:$LINENO: checking for 64bit type" >&5
>+echo $ECHO_N "checking for 64bit type... $ECHO_C" >&6
>+if test "$ac_cv_sizeof_long" = "8"; then
>+  echo "$as_me:$LINENO: result: long" >&5
>+echo "${ECHO_T}long" >&6
>+  POOMA_INT64="long"
>+elif test "$ac_cv_sizeof_long_long" = "8"; then
>+  echo "$as_me:$LINENO: result: long long" >&5
>+echo "${ECHO_T}long long" >&6
>+  POOMA_INT64="long long"
>+else
>+  echo "$as_me:$LINENO: result: none - using long anyway" >&5
>+echo "${ECHO_T}none - using long anyway" >&6
>+  POOMA_INT64="long"
>+fi
>+
>+if test ! "$ac_cv_sizeof_long_long" = "0"; then
>+  POOMA_HAS_LONG_LONG=POOMA_YES
>+else
>+  POOMA_HAS_LONG_LONG=POOMA_NO
>+fi
>+
>+
> 
> echo "$as_me:$LINENO: checking for way to enable OpenMP support" >&5
> echo $ECHO_N "checking for way to enable OpenMP support... $ECHO_C" >&6
>@@ -5005,7 +5832,7 @@
> cat >&5 <<_CSEOF
> 
> This file was extended by pooma $as_me 2.4.0, which was
>-generated by GNU Autoconf 2.58.  Invocation command line was
>+generated by GNU Autoconf 2.59.  Invocation command line was
> 
>   CONFIG_FILES    = $CONFIG_FILES
>   CONFIG_HEADERS  = $CONFIG_HEADERS
>@@ -5060,7 +5887,7 @@
> cat >>$CONFIG_STATUS <<_ACEOF
> ac_cs_version="\\
> pooma config.status 2.4.0
>-configured by $0, generated by GNU Autoconf 2.58,
>+configured by $0, generated by GNU Autoconf 2.59,
>   with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
> 
> Copyright (C) 2003 Free Software Foundation, Inc.
>@@ -5277,6 +6104,8 @@
> s, at POOMA_NO_OSTREAM_ITERATOR_1ARG@,$POOMA_NO_OSTREAM_ITERATOR_1ARG,;t t
> s, at POOMA_NO_STD_MIN_MAX@,$POOMA_NO_STD_MIN_MAX,;t t
> s, at POOMA_NONSTANDARD_ITERATOR@,$POOMA_NONSTANDARD_ITERATOR,;t t
>+s, at POOMA_INT64@,$POOMA_INT64,;t t
>+s, at POOMA_HAS_LONG_LONG@,$POOMA_HAS_LONG_LONG,;t t
> s, at openmpargs@,$openmpargs,;t t
> s, at cppargs@,$cppargs,;t t
> s, at cargs@,$cargs,;t t
>  
>


-- 
Jeffrey D. Oldham
oldham at codesourcery.com




More information about the pooma-dev mailing list