mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-03 21:44:33 +00:00 
			
		
		
		
	Merge branch 'master' of https://github.com/coppolachan/Grid into coppolachan-master
Conflicts: lib/algorithms/approx/bigfloat.h
This commit is contained in:
		
							
								
								
									
										58
									
								
								Makefile.in
									
									
									
									
									
								
							
							
						
						
									
										58
									
								
								Makefile.in
									
									
									
									
									
								
							@@ -1,7 +1,7 @@
 | 
			
		||||
# Makefile.in generated by automake 1.15 from Makefile.am.
 | 
			
		||||
# Makefile.in generated by automake 1.14.1 from Makefile.am.
 | 
			
		||||
# @configure_input@
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 1994-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 1994-2013 Free Software Foundation, Inc.
 | 
			
		||||
 | 
			
		||||
# This Makefile.in is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -14,17 +14,7 @@
 | 
			
		||||
 | 
			
		||||
@SET_MAKE@
 | 
			
		||||
VPATH = @srcdir@
 | 
			
		||||
am__is_gnu_make = { \
 | 
			
		||||
  if test -z '$(MAKELEVEL)'; then \
 | 
			
		||||
    false; \
 | 
			
		||||
  elif test -n '$(MAKE_HOST)'; then \
 | 
			
		||||
    true; \
 | 
			
		||||
  elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
 | 
			
		||||
    true; \
 | 
			
		||||
  else \
 | 
			
		||||
    false; \
 | 
			
		||||
  fi; \
 | 
			
		||||
}
 | 
			
		||||
am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
 | 
			
		||||
am__make_running_with_option = \
 | 
			
		||||
  case $${target_option-} in \
 | 
			
		||||
      ?) ;; \
 | 
			
		||||
@@ -85,13 +75,18 @@ POST_INSTALL = :
 | 
			
		||||
NORMAL_UNINSTALL = :
 | 
			
		||||
PRE_UNINSTALL = :
 | 
			
		||||
POST_UNINSTALL = :
 | 
			
		||||
build_triplet = @build@
 | 
			
		||||
host_triplet = @host@
 | 
			
		||||
target_triplet = @target@
 | 
			
		||||
subdir = .
 | 
			
		||||
DIST_COMMON = INSTALL NEWS README AUTHORS ChangeLog \
 | 
			
		||||
	$(srcdir)/Makefile.in $(srcdir)/Makefile.am \
 | 
			
		||||
	$(top_srcdir)/configure $(am__configure_deps) COPYING TODO \
 | 
			
		||||
	compile config.guess config.sub depcomp install-sh missing
 | 
			
		||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
 | 
			
		||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
 | 
			
		||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
 | 
			
		||||
	$(ACLOCAL_M4)
 | 
			
		||||
DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
 | 
			
		||||
	$(am__configure_deps) $(am__DIST_COMMON)
 | 
			
		||||
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
 | 
			
		||||
 configure.lineno config.status.lineno
 | 
			
		||||
mkinstalldirs = $(install_sh) -d
 | 
			
		||||
@@ -154,8 +149,6 @@ ETAGS = etags
 | 
			
		||||
CTAGS = ctags
 | 
			
		||||
CSCOPE = cscope
 | 
			
		||||
DIST_SUBDIRS = $(SUBDIRS)
 | 
			
		||||
am__DIST_COMMON = $(srcdir)/Makefile.in AUTHORS COPYING ChangeLog \
 | 
			
		||||
	INSTALL NEWS README TODO compile depcomp install-sh missing
 | 
			
		||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 | 
			
		||||
distdir = $(PACKAGE)-$(VERSION)
 | 
			
		||||
top_distdir = $(distdir)
 | 
			
		||||
@@ -256,14 +249,22 @@ am__quote = @am__quote@
 | 
			
		||||
am__tar = @am__tar@
 | 
			
		||||
am__untar = @am__untar@
 | 
			
		||||
bindir = @bindir@
 | 
			
		||||
build = @build@
 | 
			
		||||
build_alias = @build_alias@
 | 
			
		||||
build_cpu = @build_cpu@
 | 
			
		||||
build_os = @build_os@
 | 
			
		||||
build_vendor = @build_vendor@
 | 
			
		||||
builddir = @builddir@
 | 
			
		||||
datadir = @datadir@
 | 
			
		||||
datarootdir = @datarootdir@
 | 
			
		||||
docdir = @docdir@
 | 
			
		||||
dvidir = @dvidir@
 | 
			
		||||
exec_prefix = @exec_prefix@
 | 
			
		||||
host = @host@
 | 
			
		||||
host_alias = @host_alias@
 | 
			
		||||
host_cpu = @host_cpu@
 | 
			
		||||
host_os = @host_os@
 | 
			
		||||
host_vendor = @host_vendor@
 | 
			
		||||
htmldir = @htmldir@
 | 
			
		||||
includedir = @includedir@
 | 
			
		||||
infodir = @infodir@
 | 
			
		||||
@@ -283,7 +284,11 @@ sbindir = @sbindir@
 | 
			
		||||
sharedstatedir = @sharedstatedir@
 | 
			
		||||
srcdir = @srcdir@
 | 
			
		||||
sysconfdir = @sysconfdir@
 | 
			
		||||
target = @target@
 | 
			
		||||
target_alias = @target_alias@
 | 
			
		||||
target_cpu = @target_cpu@
 | 
			
		||||
target_os = @target_os@
 | 
			
		||||
target_vendor = @target_vendor@
 | 
			
		||||
top_build_prefix = @top_build_prefix@
 | 
			
		||||
top_builddir = @top_builddir@
 | 
			
		||||
top_srcdir = @top_srcdir@
 | 
			
		||||
@@ -309,6 +314,7 @@ $(srcdir)/Makefile.in:  $(srcdir)/Makefile.am  $(am__configure_deps)
 | 
			
		||||
	echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \
 | 
			
		||||
	$(am__cd) $(top_srcdir) && \
 | 
			
		||||
	  $(AUTOMAKE) --gnu Makefile
 | 
			
		||||
.PRECIOUS: Makefile
 | 
			
		||||
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
 | 
			
		||||
	@case '$?' in \
 | 
			
		||||
	  *config.status*) \
 | 
			
		||||
@@ -515,15 +521,15 @@ dist-xz: distdir
 | 
			
		||||
	$(am__post_remove_distdir)
 | 
			
		||||
 | 
			
		||||
dist-tarZ: distdir
 | 
			
		||||
	@echo WARNING: "Support for distribution archives compressed with" \
 | 
			
		||||
		       "legacy program 'compress' is deprecated." >&2
 | 
			
		||||
	@echo WARNING: "Support for shar distribution archives is" \
 | 
			
		||||
	               "deprecated." >&2
 | 
			
		||||
	@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
 | 
			
		||||
	tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
 | 
			
		||||
	$(am__post_remove_distdir)
 | 
			
		||||
 | 
			
		||||
dist-shar: distdir
 | 
			
		||||
	@echo WARNING: "Support for shar distribution archives is" \
 | 
			
		||||
	               "deprecated." >&2
 | 
			
		||||
	@echo WARNING: "Support for distribution archives compressed with" \
 | 
			
		||||
		       "legacy program 'compress' is deprecated." >&2
 | 
			
		||||
	@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
 | 
			
		||||
	shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
 | 
			
		||||
	$(am__post_remove_distdir)
 | 
			
		||||
@@ -559,17 +565,17 @@ distcheck: dist
 | 
			
		||||
	esac
 | 
			
		||||
	chmod -R a-w $(distdir)
 | 
			
		||||
	chmod u+w $(distdir)
 | 
			
		||||
	mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
 | 
			
		||||
	mkdir $(distdir)/_build $(distdir)/_inst
 | 
			
		||||
	chmod a-w $(distdir)
 | 
			
		||||
	test -d $(distdir)/_build || exit 0; \
 | 
			
		||||
	dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
 | 
			
		||||
	  && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
 | 
			
		||||
	  && am__cwd=`pwd` \
 | 
			
		||||
	  && $(am__cd) $(distdir)/_build/sub \
 | 
			
		||||
	  && ../../configure \
 | 
			
		||||
	  && $(am__cd) $(distdir)/_build \
 | 
			
		||||
	  && ../configure \
 | 
			
		||||
	    $(AM_DISTCHECK_CONFIGURE_FLAGS) \
 | 
			
		||||
	    $(DISTCHECK_CONFIGURE_FLAGS) \
 | 
			
		||||
	    --srcdir=../.. --prefix="$$dc_install_base" \
 | 
			
		||||
	    --srcdir=.. --prefix="$$dc_install_base" \
 | 
			
		||||
	  && $(MAKE) $(AM_MAKEFLAGS) \
 | 
			
		||||
	  && $(MAKE) $(AM_MAKEFLAGS) dvi \
 | 
			
		||||
	  && $(MAKE) $(AM_MAKEFLAGS) check \
 | 
			
		||||
@@ -743,8 +749,6 @@ uninstall-am:
 | 
			
		||||
	maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
 | 
			
		||||
	pdf-am ps ps-am tags tags-am uninstall uninstall-am
 | 
			
		||||
 | 
			
		||||
.PRECIOUS: Makefile
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
 | 
			
		||||
# Otherwise a system limit (for SysV at least) may be exceeded.
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										61
									
								
								aclocal.m4
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										61
									
								
								aclocal.m4
									
									
									
									
										vendored
									
									
								
							@@ -1,6 +1,6 @@
 | 
			
		||||
# generated automatically by aclocal 1.15 -*- Autoconf -*-
 | 
			
		||||
# generated automatically by aclocal 1.14.1 -*- Autoconf -*-
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 1996-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 | 
			
		||||
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -20,7 +20,7 @@ You have another version of autoconf.  It may work, but is not guaranteed to.
 | 
			
		||||
If you have problems, you may need to regenerate the build system entirely.
 | 
			
		||||
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 2002-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 2002-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -32,10 +32,10 @@ To do so, use the procedure documented by the package, typically 'autoreconf'.])
 | 
			
		||||
# generated from the m4 files accompanying Automake X.Y.
 | 
			
		||||
# (This private macro should not be called outside this file.)
 | 
			
		||||
AC_DEFUN([AM_AUTOMAKE_VERSION],
 | 
			
		||||
[am__api_version='1.15'
 | 
			
		||||
[am__api_version='1.14'
 | 
			
		||||
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 | 
			
		||||
dnl require some minimum version.  Point them to the right macro.
 | 
			
		||||
m4_if([$1], [1.15], [],
 | 
			
		||||
m4_if([$1], [1.14.1], [],
 | 
			
		||||
      [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 | 
			
		||||
])
 | 
			
		||||
 | 
			
		||||
@@ -51,14 +51,14 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 | 
			
		||||
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 | 
			
		||||
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 | 
			
		||||
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
 | 
			
		||||
[AM_AUTOMAKE_VERSION([1.15])dnl
 | 
			
		||||
[AM_AUTOMAKE_VERSION([1.14.1])dnl
 | 
			
		||||
m4_ifndef([AC_AUTOCONF_VERSION],
 | 
			
		||||
  [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 | 
			
		||||
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 | 
			
		||||
 | 
			
		||||
# AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -103,14 +103,15 @@ _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 | 
			
		||||
# configured tree to be moved without reconfiguration.
 | 
			
		||||
 | 
			
		||||
AC_DEFUN([AM_AUX_DIR_EXPAND],
 | 
			
		||||
[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl
 | 
			
		||||
# Expand $ac_aux_dir to an absolute path.
 | 
			
		||||
am_aux_dir=`cd "$ac_aux_dir" && pwd`
 | 
			
		||||
[dnl Rely on autoconf to set up CDPATH properly.
 | 
			
		||||
AC_PREREQ([2.50])dnl
 | 
			
		||||
# expand $ac_aux_dir to an absolute path
 | 
			
		||||
am_aux_dir=`cd $ac_aux_dir && pwd`
 | 
			
		||||
])
 | 
			
		||||
 | 
			
		||||
# AM_CONDITIONAL                                            -*- Autoconf -*-
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 1997-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 1997-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -141,7 +142,7 @@ AC_CONFIG_COMMANDS_PRE(
 | 
			
		||||
Usually this means the macro was only invoked conditionally.]])
 | 
			
		||||
fi])])
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -332,7 +333,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
 | 
			
		||||
 | 
			
		||||
# Generate code to set up dependency tracking.              -*- Autoconf -*-
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 1999-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 1999-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -408,7 +409,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 | 
			
		||||
 | 
			
		||||
# Do all the work for Automake.                             -*- Autoconf -*-
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 1996-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -498,8 +499,8 @@ AC_REQUIRE([AC_PROG_MKDIR_P])dnl
 | 
			
		||||
# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
 | 
			
		||||
# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 | 
			
		||||
AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
 | 
			
		||||
# We need awk for the "check" target (and possibly the TAP driver).  The
 | 
			
		||||
# system "awk" is bad on some platforms.
 | 
			
		||||
# We need awk for the "check" target.  The system "awk" is bad on
 | 
			
		||||
# some platforms.
 | 
			
		||||
AC_REQUIRE([AC_PROG_AWK])dnl
 | 
			
		||||
AC_REQUIRE([AC_PROG_MAKE_SET])dnl
 | 
			
		||||
AC_REQUIRE([AM_SET_LEADING_DOT])dnl
 | 
			
		||||
@@ -572,11 +573,7 @@ to "yes", and re-run configure.
 | 
			
		||||
END
 | 
			
		||||
    AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
 | 
			
		||||
  fi
 | 
			
		||||
fi
 | 
			
		||||
dnl The trailing newline in this macro's definition is deliberate, for
 | 
			
		||||
dnl backward compatibility and to allow trailing 'dnl'-style comments
 | 
			
		||||
dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
 | 
			
		||||
])
 | 
			
		||||
fi])
 | 
			
		||||
 | 
			
		||||
dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion.  Do not
 | 
			
		||||
dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further
 | 
			
		||||
@@ -605,7 +602,7 @@ for _am_header in $config_headers :; do
 | 
			
		||||
done
 | 
			
		||||
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -616,7 +613,7 @@ echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_co
 | 
			
		||||
# Define $install_sh.
 | 
			
		||||
AC_DEFUN([AM_PROG_INSTALL_SH],
 | 
			
		||||
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
 | 
			
		||||
if test x"${install_sh+set}" != xset; then
 | 
			
		||||
if test x"${install_sh}" != xset; then
 | 
			
		||||
  case $am_aux_dir in
 | 
			
		||||
  *\ * | *\	*)
 | 
			
		||||
    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
 | 
			
		||||
@@ -626,7 +623,7 @@ if test x"${install_sh+set}" != xset; then
 | 
			
		||||
fi
 | 
			
		||||
AC_SUBST([install_sh])])
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 2003-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 2003-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -647,7 +644,7 @@ AC_SUBST([am__leading_dot])])
 | 
			
		||||
 | 
			
		||||
# Check to see how 'make' treats includes.	            -*- Autoconf -*-
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -697,7 +694,7 @@ rm -f confinc confmf
 | 
			
		||||
 | 
			
		||||
# Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 1997-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 1997-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -736,7 +733,7 @@ fi
 | 
			
		||||
 | 
			
		||||
# Helper functions for option handling.                     -*- Autoconf -*-
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -767,7 +764,7 @@ AC_DEFUN([_AM_IF_OPTION],
 | 
			
		||||
 | 
			
		||||
# Check to make sure that the build environment is sane.    -*- Autoconf -*-
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 1996-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 1996-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -848,7 +845,7 @@ AC_CONFIG_COMMANDS_PRE(
 | 
			
		||||
rm -f conftest.file
 | 
			
		||||
])
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 2009-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 2009-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -908,7 +905,7 @@ AC_SUBST([AM_BACKSLASH])dnl
 | 
			
		||||
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 | 
			
		||||
])
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 2001-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 2001-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -936,7 +933,7 @@ fi
 | 
			
		||||
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 | 
			
		||||
AC_SUBST([INSTALL_STRIP_PROGRAM])])
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 2006-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 2006-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
@@ -955,7 +952,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
 | 
			
		||||
 | 
			
		||||
# Check how to create a tarball.                            -*- Autoconf -*-
 | 
			
		||||
 | 
			
		||||
# Copyright (C) 2004-2014 Free Software Foundation, Inc.
 | 
			
		||||
# Copyright (C) 2004-2013 Free Software Foundation, Inc.
 | 
			
		||||
#
 | 
			
		||||
# This file is free software; the Free Software Foundation
 | 
			
		||||
# gives unlimited permission to copy and/or distribute it,
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								config.guess
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								config.guess
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
/usr/share/automake-1.14/config.guess
 | 
			
		||||
							
								
								
									
										1
									
								
								config.sub
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							
							
						
						
									
										1
									
								
								config.sub
									
									
									
									
										vendored
									
									
										Symbolic link
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
/usr/share/automake-1.14/config.sub
 | 
			
		||||
							
								
								
									
										219
									
								
								configure
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										219
									
								
								configure
									
									
									
									
										vendored
									
									
								
							@@ -679,6 +679,18 @@ am__isrc
 | 
			
		||||
INSTALL_DATA
 | 
			
		||||
INSTALL_SCRIPT
 | 
			
		||||
INSTALL_PROGRAM
 | 
			
		||||
target_os
 | 
			
		||||
target_vendor
 | 
			
		||||
target_cpu
 | 
			
		||||
target
 | 
			
		||||
host_os
 | 
			
		||||
host_vendor
 | 
			
		||||
host_cpu
 | 
			
		||||
host
 | 
			
		||||
build_os
 | 
			
		||||
build_vendor
 | 
			
		||||
build_cpu
 | 
			
		||||
build
 | 
			
		||||
target_alias
 | 
			
		||||
host_alias
 | 
			
		||||
build_alias
 | 
			
		||||
@@ -1337,6 +1349,11 @@ Program names:
 | 
			
		||||
  --program-prefix=PREFIX            prepend PREFIX to installed program names
 | 
			
		||||
  --program-suffix=SUFFIX            append SUFFIX to installed program names
 | 
			
		||||
  --program-transform-name=PROGRAM   run sed PROGRAM on installed program names
 | 
			
		||||
 | 
			
		||||
System types:
 | 
			
		||||
  --build=BUILD     configure for building on BUILD [guessed]
 | 
			
		||||
  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
 | 
			
		||||
  --target=TARGET   configure for building compilers for TARGET [HOST]
 | 
			
		||||
_ACEOF
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
@@ -2309,8 +2326,6 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $
 | 
			
		||||
ac_compiler_gnu=$ac_cv_c_compiler_gnu
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
am__api_version='1.15'
 | 
			
		||||
 | 
			
		||||
ac_aux_dir=
 | 
			
		||||
for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
 | 
			
		||||
  if test -f "$ac_dir/install-sh"; then
 | 
			
		||||
@@ -2340,6 +2355,119 @@ ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
 | 
			
		||||
ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Make sure we can run config.sub.
 | 
			
		||||
$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
 | 
			
		||||
  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
 | 
			
		||||
 | 
			
		||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
 | 
			
		||||
$as_echo_n "checking build system type... " >&6; }
 | 
			
		||||
if ${ac_cv_build+:} false; then :
 | 
			
		||||
  $as_echo_n "(cached) " >&6
 | 
			
		||||
else
 | 
			
		||||
  ac_build_alias=$build_alias
 | 
			
		||||
test "x$ac_build_alias" = x &&
 | 
			
		||||
  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
 | 
			
		||||
test "x$ac_build_alias" = x &&
 | 
			
		||||
  as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
 | 
			
		||||
ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
 | 
			
		||||
  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
 | 
			
		||||
 | 
			
		||||
fi
 | 
			
		||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
 | 
			
		||||
$as_echo "$ac_cv_build" >&6; }
 | 
			
		||||
case $ac_cv_build in
 | 
			
		||||
*-*-*) ;;
 | 
			
		||||
*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
 | 
			
		||||
esac
 | 
			
		||||
build=$ac_cv_build
 | 
			
		||||
ac_save_IFS=$IFS; IFS='-'
 | 
			
		||||
set x $ac_cv_build
 | 
			
		||||
shift
 | 
			
		||||
build_cpu=$1
 | 
			
		||||
build_vendor=$2
 | 
			
		||||
shift; shift
 | 
			
		||||
# Remember, the first character of IFS is used to create $*,
 | 
			
		||||
# except with old shells:
 | 
			
		||||
build_os=$*
 | 
			
		||||
IFS=$ac_save_IFS
 | 
			
		||||
case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
 | 
			
		||||
$as_echo_n "checking host system type... " >&6; }
 | 
			
		||||
if ${ac_cv_host+:} false; then :
 | 
			
		||||
  $as_echo_n "(cached) " >&6
 | 
			
		||||
else
 | 
			
		||||
  if test "x$host_alias" = x; then
 | 
			
		||||
  ac_cv_host=$ac_cv_build
 | 
			
		||||
else
 | 
			
		||||
  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
 | 
			
		||||
    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
fi
 | 
			
		||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
 | 
			
		||||
$as_echo "$ac_cv_host" >&6; }
 | 
			
		||||
case $ac_cv_host in
 | 
			
		||||
*-*-*) ;;
 | 
			
		||||
*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
 | 
			
		||||
esac
 | 
			
		||||
host=$ac_cv_host
 | 
			
		||||
ac_save_IFS=$IFS; IFS='-'
 | 
			
		||||
set x $ac_cv_host
 | 
			
		||||
shift
 | 
			
		||||
host_cpu=$1
 | 
			
		||||
host_vendor=$2
 | 
			
		||||
shift; shift
 | 
			
		||||
# Remember, the first character of IFS is used to create $*,
 | 
			
		||||
# except with old shells:
 | 
			
		||||
host_os=$*
 | 
			
		||||
IFS=$ac_save_IFS
 | 
			
		||||
case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5
 | 
			
		||||
$as_echo_n "checking target system type... " >&6; }
 | 
			
		||||
if ${ac_cv_target+:} false; then :
 | 
			
		||||
  $as_echo_n "(cached) " >&6
 | 
			
		||||
else
 | 
			
		||||
  if test "x$target_alias" = x; then
 | 
			
		||||
  ac_cv_target=$ac_cv_host
 | 
			
		||||
else
 | 
			
		||||
  ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` ||
 | 
			
		||||
    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
fi
 | 
			
		||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5
 | 
			
		||||
$as_echo "$ac_cv_target" >&6; }
 | 
			
		||||
case $ac_cv_target in
 | 
			
		||||
*-*-*) ;;
 | 
			
		||||
*) as_fn_error $? "invalid value of canonical target" "$LINENO" 5;;
 | 
			
		||||
esac
 | 
			
		||||
target=$ac_cv_target
 | 
			
		||||
ac_save_IFS=$IFS; IFS='-'
 | 
			
		||||
set x $ac_cv_target
 | 
			
		||||
shift
 | 
			
		||||
target_cpu=$1
 | 
			
		||||
target_vendor=$2
 | 
			
		||||
shift; shift
 | 
			
		||||
# Remember, the first character of IFS is used to create $*,
 | 
			
		||||
# except with old shells:
 | 
			
		||||
target_os=$*
 | 
			
		||||
IFS=$ac_save_IFS
 | 
			
		||||
case $target_os in *\ *) target_os=`echo "$target_os" | sed 's/ /-/g'`;; esac
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# The aliases save the names the user supplied, while $host etc.
 | 
			
		||||
# will get canonicalized.
 | 
			
		||||
test -n "$target_alias" &&
 | 
			
		||||
  test "$program_prefix$program_suffix$program_transform_name" = \
 | 
			
		||||
    NONENONEs,x,x, &&
 | 
			
		||||
  program_prefix=${target_alias}-
 | 
			
		||||
 | 
			
		||||
am__api_version='1.14'
 | 
			
		||||
 | 
			
		||||
# Find a good install program.  We prefer a C program (faster),
 | 
			
		||||
# so one script is as good as another.  But avoid the broken or
 | 
			
		||||
# incompatible versions:
 | 
			
		||||
@@ -2510,8 +2638,8 @@ test "$program_suffix" != NONE &&
 | 
			
		||||
ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
 | 
			
		||||
program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
 | 
			
		||||
 | 
			
		||||
# Expand $ac_aux_dir to an absolute path.
 | 
			
		||||
am_aux_dir=`cd "$ac_aux_dir" && pwd`
 | 
			
		||||
# expand $ac_aux_dir to an absolute path
 | 
			
		||||
am_aux_dir=`cd $ac_aux_dir && pwd`
 | 
			
		||||
 | 
			
		||||
if test x"${MISSING+set}" != xset; then
 | 
			
		||||
  case $am_aux_dir in
 | 
			
		||||
@@ -2530,7 +2658,7 @@ else
 | 
			
		||||
$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
if test x"${install_sh+set}" != xset; then
 | 
			
		||||
if test x"${install_sh}" != xset; then
 | 
			
		||||
  case $am_aux_dir in
 | 
			
		||||
  *\ * | *\	*)
 | 
			
		||||
    install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
 | 
			
		||||
@@ -2858,8 +2986,8 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
 | 
			
		||||
# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 | 
			
		||||
mkdir_p='$(MKDIR_P)'
 | 
			
		||||
 | 
			
		||||
# We need awk for the "check" target (and possibly the TAP driver).  The
 | 
			
		||||
# system "awk" is bad on some platforms.
 | 
			
		||||
# We need awk for the "check" target.  The system "awk" is bad on
 | 
			
		||||
# some platforms.
 | 
			
		||||
# Always define AMTAR for backward compatibility.  Yes, it's still used
 | 
			
		||||
# in the wild :-(  We should find a proper way to deprecate it ...
 | 
			
		||||
AMTAR='$${TAR-tar}'
 | 
			
		||||
@@ -2918,9 +3046,60 @@ END
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
ac_config_headers="$ac_config_headers lib/Grid_config.h"
 | 
			
		||||
 | 
			
		||||
# Check whether --enable-silent-rules was given.
 | 
			
		||||
if test "${enable_silent_rules+set}" = set; then :
 | 
			
		||||
  enableval=$enable_silent_rules;
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
case $enable_silent_rules in # (((
 | 
			
		||||
  yes) AM_DEFAULT_VERBOSITY=0;;
 | 
			
		||||
   no) AM_DEFAULT_VERBOSITY=1;;
 | 
			
		||||
    *) AM_DEFAULT_VERBOSITY=0;;
 | 
			
		||||
esac
 | 
			
		||||
am_make=${MAKE-make}
 | 
			
		||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
 | 
			
		||||
$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
 | 
			
		||||
if ${am_cv_make_support_nested_variables+:} false; then :
 | 
			
		||||
  $as_echo_n "(cached) " >&6
 | 
			
		||||
else
 | 
			
		||||
  if $as_echo 'TRUE=$(BAR$(V))
 | 
			
		||||
BAR0=false
 | 
			
		||||
BAR1=true
 | 
			
		||||
V=1
 | 
			
		||||
am__doit:
 | 
			
		||||
	@$(TRUE)
 | 
			
		||||
.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then
 | 
			
		||||
  am_cv_make_support_nested_variables=yes
 | 
			
		||||
else
 | 
			
		||||
  am_cv_make_support_nested_variables=no
 | 
			
		||||
fi
 | 
			
		||||
fi
 | 
			
		||||
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
 | 
			
		||||
$as_echo "$am_cv_make_support_nested_variables" >&6; }
 | 
			
		||||
if test $am_cv_make_support_nested_variables = yes; then
 | 
			
		||||
    AM_V='$(V)'
 | 
			
		||||
  AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
 | 
			
		||||
else
 | 
			
		||||
  AM_V=$AM_DEFAULT_VERBOSITY
 | 
			
		||||
  AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY
 | 
			
		||||
fi
 | 
			
		||||
AM_BACKSLASH='\'
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
{ $as_echo "$as_me:${as_lineno-$LINENO}:
 | 
			
		||||
 | 
			
		||||
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 | 
			
		||||
Configuring $PACKAGE v$VERSION  for $host
 | 
			
		||||
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 | 
			
		||||
" >&5
 | 
			
		||||
$as_echo "$as_me:
 | 
			
		||||
 | 
			
		||||
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 | 
			
		||||
Configuring $PACKAGE v$VERSION  for $host
 | 
			
		||||
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 | 
			
		||||
" >&6;}
 | 
			
		||||
 | 
			
		||||
# Checks for programs.
 | 
			
		||||
ac_ext=cpp
 | 
			
		||||
@@ -4335,6 +4514,11 @@ fi
 | 
			
		||||
done
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Check whether --enable-simd was given.
 | 
			
		||||
if test "${enable_simd+set}" = set; then :
 | 
			
		||||
  enableval=$enable_simd; \
 | 
			
		||||
@@ -5892,3 +6076,22 @@ if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
 | 
			
		||||
$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
echo "
 | 
			
		||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
			
		||||
Summary of configuration for $PACKAGE v$VERSION
 | 
			
		||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
			
		||||
 | 
			
		||||
The following features are enabled:
 | 
			
		||||
 | 
			
		||||
- architecture (build)          : $build_cpu
 | 
			
		||||
- os (build)                    : $build_os
 | 
			
		||||
- architecture (target)         : $target_cpu
 | 
			
		||||
- os (target)                   : $target_os
 | 
			
		||||
----------------------------------------------------------
 | 
			
		||||
- enabled simd support          : ${ac_SIMD}
 | 
			
		||||
- communications type           : ${ac_COMMS}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										40
									
								
								configure.ac
									
									
									
									
									
								
							
							
						
						
									
										40
									
								
								configure.ac
									
									
									
									
									
								
							@@ -1,9 +1,25 @@
 | 
			
		||||
#                         -*- Autoconf -*-
 | 
			
		||||
# Process this file with autoconf to produce a configure script.
 | 
			
		||||
#
 | 
			
		||||
# Project Grid package  
 | 
			
		||||
# 
 | 
			
		||||
# Time-stamp: <2015-05-18 17:14:20 neo>
 | 
			
		||||
 | 
			
		||||
AC_PREREQ([2.69])
 | 
			
		||||
AC_INIT([Grid], [1.0], [paboyle@ph.ed.ac.uk])
 | 
			
		||||
AC_CANONICAL_SYSTEM
 | 
			
		||||
AM_INIT_AUTOMAKE(subdir-objects)
 | 
			
		||||
AC_CONFIG_MACRO_DIR([m4])
 | 
			
		||||
AC_CONFIG_SRCDIR([lib/Grid.h])
 | 
			
		||||
AC_CONFIG_HEADERS([lib/Grid_config.h])
 | 
			
		||||
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
 | 
			
		||||
 | 
			
		||||
AC_MSG_NOTICE([
 | 
			
		||||
 | 
			
		||||
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 | 
			
		||||
Configuring $PACKAGE v$VERSION  for $host
 | 
			
		||||
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
 | 
			
		||||
])
 | 
			
		||||
 | 
			
		||||
# Checks for programs.
 | 
			
		||||
AC_LANG(C++)
 | 
			
		||||
@@ -32,6 +48,11 @@ AC_TYPE_UINT64_T
 | 
			
		||||
# Checks for library functions.
 | 
			
		||||
AC_CHECK_FUNCS([gettimeofday])
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
AC_ARG_ENABLE([simd],[AC_HELP_STRING([--enable-simd=SSE|AVX|AVX2|AVX512|MIC],\
 | 
			
		||||
	[Select instructions to be SSE4.0, AVX 1.0, AVX 2.0+FMA, AVX 512, MIC])],\
 | 
			
		||||
	[ac_SIMD=${enable_simd}],[ac_SIMD=AVX2])
 | 
			
		||||
@@ -84,3 +105,22 @@ AC_CONFIG_FILES(lib/Makefile)
 | 
			
		||||
AC_CONFIG_FILES(tests/Makefile)
 | 
			
		||||
AC_CONFIG_FILES(benchmarks/Makefile)
 | 
			
		||||
AC_OUTPUT
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
echo "
 | 
			
		||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
			
		||||
Summary of configuration for $PACKAGE v$VERSION
 | 
			
		||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 | 
			
		||||
 | 
			
		||||
The following features are enabled:
 | 
			
		||||
 | 
			
		||||
- architecture (build)          : $build_cpu
 | 
			
		||||
- os (build)                    : $build_os
 | 
			
		||||
- architecture (target)         : $target_cpu
 | 
			
		||||
- os (target)                   : $target_os
 | 
			
		||||
----------------------------------------------------------
 | 
			
		||||
- enabled simd support          : ${ac_SIMD}
 | 
			
		||||
- communications type           : ${ac_COMMS}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										121
									
								
								lib/Grid_config.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										121
									
								
								lib/Grid_config.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,121 @@
 | 
			
		||||
/* lib/Grid_config.h.  Generated from Grid_config.h.in by configure.  */
 | 
			
		||||
/* lib/Grid_config.h.in.  Generated from configure.ac by autoheader.  */
 | 
			
		||||
 | 
			
		||||
/* AVX */
 | 
			
		||||
/* #undef AVX1 */
 | 
			
		||||
 | 
			
		||||
/* AVX2 */
 | 
			
		||||
/* #undef AVX2 */
 | 
			
		||||
 | 
			
		||||
/* AVX512 */
 | 
			
		||||
/* #undef AVX512 */
 | 
			
		||||
 | 
			
		||||
/* GRID_COMMS_MPI */
 | 
			
		||||
/* #undef GRID_COMMS_MPI */
 | 
			
		||||
 | 
			
		||||
/* GRID_COMMS_NONE */
 | 
			
		||||
#define GRID_COMMS_NONE 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the declaration of `be64toh', and to 0 if you
 | 
			
		||||
   don't. */
 | 
			
		||||
#define HAVE_DECL_BE64TOH 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the declaration of `ntohll', and to 0 if you don't.
 | 
			
		||||
   */
 | 
			
		||||
#define HAVE_DECL_NTOHLL 0
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <endian.h> header file. */
 | 
			
		||||
#define HAVE_ENDIAN_H 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the `gettimeofday' function. */
 | 
			
		||||
#define HAVE_GETTIMEOFDAY 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <gmp.h> header file. */
 | 
			
		||||
#define HAVE_GMP_H 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <inttypes.h> header file. */
 | 
			
		||||
#define HAVE_INTTYPES_H 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <malloc.h> header file. */
 | 
			
		||||
#define HAVE_MALLOC_H 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <malloc/malloc.h> header file. */
 | 
			
		||||
/* #undef HAVE_MALLOC_MALLOC_H */
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <memory.h> header file. */
 | 
			
		||||
#define HAVE_MEMORY_H 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <mm_malloc.h> header file. */
 | 
			
		||||
#define HAVE_MM_MALLOC_H 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <stdint.h> header file. */
 | 
			
		||||
#define HAVE_STDINT_H 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <stdlib.h> header file. */
 | 
			
		||||
#define HAVE_STDLIB_H 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <strings.h> header file. */
 | 
			
		||||
#define HAVE_STRINGS_H 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <string.h> header file. */
 | 
			
		||||
#define HAVE_STRING_H 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <sys/stat.h> header file. */
 | 
			
		||||
#define HAVE_SYS_STAT_H 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <sys/types.h> header file. */
 | 
			
		||||
#define HAVE_SYS_TYPES_H 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the <unistd.h> header file. */
 | 
			
		||||
#define HAVE_UNISTD_H 1
 | 
			
		||||
 | 
			
		||||
/* Name of package */
 | 
			
		||||
#define PACKAGE "grid"
 | 
			
		||||
 | 
			
		||||
/* Define to the address where bug reports for this package should be sent. */
 | 
			
		||||
#define PACKAGE_BUGREPORT "paboyle@ph.ed.ac.uk"
 | 
			
		||||
 | 
			
		||||
/* Define to the full name of this package. */
 | 
			
		||||
#define PACKAGE_NAME "Grid"
 | 
			
		||||
 | 
			
		||||
/* Define to the full name and version of this package. */
 | 
			
		||||
#define PACKAGE_STRING "Grid 1.0"
 | 
			
		||||
 | 
			
		||||
/* Define to the one symbol short name of this package. */
 | 
			
		||||
#define PACKAGE_TARNAME "grid"
 | 
			
		||||
 | 
			
		||||
/* Define to the home page for this package. */
 | 
			
		||||
#define PACKAGE_URL ""
 | 
			
		||||
 | 
			
		||||
/* Define to the version of this package. */
 | 
			
		||||
#define PACKAGE_VERSION "1.0"
 | 
			
		||||
 | 
			
		||||
/* SSE4 */
 | 
			
		||||
#define SSE4 1
 | 
			
		||||
 | 
			
		||||
/* Define to 1 if you have the ANSI C header files. */
 | 
			
		||||
#define STDC_HEADERS 1
 | 
			
		||||
 | 
			
		||||
/* Version number of package */
 | 
			
		||||
#define VERSION "1.0"
 | 
			
		||||
 | 
			
		||||
/* Define for Solaris 2.5.1 so the uint32_t typedef from <sys/synch.h>,
 | 
			
		||||
   <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
 | 
			
		||||
   #define below would cause a syntax error. */
 | 
			
		||||
/* #undef _UINT32_T */
 | 
			
		||||
 | 
			
		||||
/* Define for Solaris 2.5.1 so the uint64_t typedef from <sys/synch.h>,
 | 
			
		||||
   <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
 | 
			
		||||
   #define below would cause a syntax error. */
 | 
			
		||||
/* #undef _UINT64_T */
 | 
			
		||||
 | 
			
		||||
/* Define to `unsigned int' if <sys/types.h> does not define. */
 | 
			
		||||
/* #undef size_t */
 | 
			
		||||
 | 
			
		||||
/* Define to the type of an unsigned integer type of width exactly 32 bits if
 | 
			
		||||
   such a type exists and the standard includes do not define it. */
 | 
			
		||||
/* #undef uint32_t */
 | 
			
		||||
 | 
			
		||||
/* Define to the type of an unsigned integer type of width exactly 64 bits if
 | 
			
		||||
   such a type exists and the standard includes do not define it. */
 | 
			
		||||
/* #undef uint64_t */
 | 
			
		||||
							
								
								
									
										0
									
								
								lib/algorithms/approx/.dirstamp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								lib/algorithms/approx/.dirstamp
									
									
									
									
									
										Normal file
									
								
							@@ -1,5 +1,5 @@
 | 
			
		||||
/* -*- Mode: C; comment-column: 22; fill-column: 79; compile-command: "gcc -o zolotarev zolotarev.c -ansi -pedantic -lm -DTEST"; -*- */
 | 
			
		||||
#define VERSION Source Time-stamp: <19-OCT-2004 09:33:22.00 adk@MISSCONTRARY>
 | 
			
		||||
#define VERSION Source Time-stamp: <2015-05-18 16:32:08 neo>
 | 
			
		||||
 | 
			
		||||
/* These C routines evalute the optimal rational approximation to the signum
 | 
			
		||||
 * function for epsilon < |x| < 1 using Zolotarev's theorem.
 | 
			
		||||
@@ -26,13 +26,13 @@
 | 
			
		||||
#define INTERNAL_PRECISION double
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#include "zolotarev.h"
 | 
			
		||||
#include "Zolotarev.h"
 | 
			
		||||
#define ZOLOTAREV_INTERNAL
 | 
			
		||||
#undef ZOLOTAREV_DATA
 | 
			
		||||
#define ZOLOTAREV_DATA izd
 | 
			
		||||
#undef ZPRECISION
 | 
			
		||||
#define ZPRECISION INTERNAL_PRECISION
 | 
			
		||||
#include "zolotarev.h"
 | 
			
		||||
#include "Zolotarev.h"
 | 
			
		||||
#undef ZOLOTAREV_INTERNAL
 | 
			
		||||
 | 
			
		||||
/* The ANSI standard appears not to know what pi is */
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										0
									
								
								lib/communicator/.dirstamp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								lib/communicator/.dirstamp
									
									
									
									
									
										Normal file
									
								
							
							
								
								
									
										0
									
								
								lib/qcd/.dirstamp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								lib/qcd/.dirstamp
									
									
									
									
									
										Normal file
									
								
							@@ -345,6 +345,9 @@ friend inline void vstore(const vComplexD &ret, ComplexD *a){
 | 
			
		||||
// REDUCE FIXME must be a cleaner implementation
 | 
			
		||||
       friend inline ComplexD Reduce(const vComplexD & in)
 | 
			
		||||
       { 
 | 
			
		||||
#if defined SSE4
 | 
			
		||||
         return ComplexD(in.v[0], in.v[1]); // inefficient
 | 
			
		||||
#endif
 | 
			
		||||
#if defined (AVX1) || defined(AVX2)
 | 
			
		||||
	 //            return std::complex<double>(_mm256_mask_reduce_add_pd(0x55, in.v),_mm256_mask_reduce_add_pd(0xAA, in.v));
 | 
			
		||||
	 __attribute__ ((aligned(32))) double c_[4];
 | 
			
		||||
 
 | 
			
		||||
@@ -219,7 +219,7 @@ namespace Grid {
 | 
			
		||||
            ret.v = _mm256_set_ps(b,a,b,a,b,a,b,a);
 | 
			
		||||
#endif
 | 
			
		||||
#ifdef SSE4
 | 
			
		||||
            ret.v = _mm_set_ps(a,b,a,b);
 | 
			
		||||
            ret.v = _mm_set_ps(b,a,b,a);
 | 
			
		||||
#endif
 | 
			
		||||
#ifdef AVX512
 | 
			
		||||
            ret.v = _mm512_set_ps(b,a,b,a,b,a,b,a,b,a,b,a,b,a,b,a);
 | 
			
		||||
@@ -354,9 +354,7 @@ namespace Grid {
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
#ifdef SSE4
 | 
			
		||||
	    cvec tmp;
 | 
			
		||||
	    tmp = _mm_addsub_ps(ret.v,_mm_shuffle_ps(in.v,in.v,_MM_SHUFFLE(2,3,0,1))); // ymm1 <- br,bi
 | 
			
		||||
	    ret.v=_mm_shuffle_ps(tmp,tmp,_MM_SHUFFLE(2,3,0,1));
 | 
			
		||||
	    ret.v = _mm_xor_ps(_mm_addsub_ps(ret.v,in.v), _mm_set1_ps(-0.f));
 | 
			
		||||
#endif
 | 
			
		||||
#ifdef AVX512
 | 
			
		||||
            ret.v = _mm512_mask_sub_ps(in.v,0xaaaa,ret.v,in.v); // Zero out 0+real 0-imag 
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										299
									
								
								lib/simd/Grid_vector_types.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										299
									
								
								lib/simd/Grid_vector_types.h
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,299 @@
 | 
			
		||||
#ifndef GRID_VECTOR_TYPES
 | 
			
		||||
#define GRID_VECTOR_TYPES
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
namespace Grid {
 | 
			
		||||
 | 
			
		||||
  // To take the floating point type of real/complex type
 | 
			
		||||
  template <typename T> 
 | 
			
		||||
    struct RealPart {
 | 
			
		||||
      typedef T type;
 | 
			
		||||
    };
 | 
			
		||||
  template <typename T> 
 | 
			
		||||
    struct RealPart< std::complex<T> >{
 | 
			
		||||
    typedef T type;
 | 
			
		||||
  };
 | 
			
		||||
  ////////////////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
  // Check for complexity with type traits
 | 
			
		||||
  template <typename T> 
 | 
			
		||||
    struct is_complex : std::false_type {};
 | 
			
		||||
  template < typename T > 
 | 
			
		||||
    struct is_complex< std::complex<T> >: std::true_type {};
 | 
			
		||||
  ////////////////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  // Define the operation templates functors
 | 
			
		||||
  template < class SIMD, class Operation > 
 | 
			
		||||
    SIMD binary(SIMD src_1, SIMD src_2, Operation op){
 | 
			
		||||
    return op(src_1, src_2);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  template < class SIMD, class Operation > 
 | 
			
		||||
    SIMD unary(SIMD src, Operation op){
 | 
			
		||||
    return op(src);
 | 
			
		||||
  }
 | 
			
		||||
  ///////////////////////////////////////////////
 | 
			
		||||
 | 
			
		||||
  /*
 | 
			
		||||
    @brief Grid_simd class for the SIMD vector type operations
 | 
			
		||||
 | 
			
		||||
   */
 | 
			
		||||
  template < class Scalar_type, class Vector_type > 
 | 
			
		||||
    class Grid_simd {
 | 
			
		||||
    
 | 
			
		||||
  public:
 | 
			
		||||
    typedef typename RealPart < Scalar_type >::type Real; 
 | 
			
		||||
    Vector_type v;
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    static inline int Nsimd(void) { return sizeof(Vector_type)/sizeof(Scalar_type);}
 | 
			
		||||
 | 
			
		||||
    // Constructors
 | 
			
		||||
    Grid_simd & operator = ( Zero & z){
 | 
			
		||||
      vzero(*this);
 | 
			
		||||
      return (*this);
 | 
			
		||||
    }
 | 
			
		||||
    Grid_simd(){};
 | 
			
		||||
    
 | 
			
		||||
    
 | 
			
		||||
    //Enable if complex type
 | 
			
		||||
    template < class S = Scalar_type > 
 | 
			
		||||
    Grid_simd(typename std::enable_if< is_complex < S >::value, S>::type a){
 | 
			
		||||
      vsplat(*this,a);
 | 
			
		||||
    };
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    Grid_simd(Real a){
 | 
			
		||||
      vsplat(*this,Scalar_type(a));
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
       
 | 
			
		||||
    ///////////////////////////////////////////////
 | 
			
		||||
    // mac, mult, sub, add, adj
 | 
			
		||||
    // Should do an AVX2 version with mac.
 | 
			
		||||
    ///////////////////////////////////////////////
 | 
			
		||||
    friend inline void mac (Grid_simd * __restrict__ y,const Grid_simd * __restrict__ a,const Grid_simd *__restrict__ x){ *y = (*a)*(*x)+(*y); };
 | 
			
		||||
    friend inline void mult(Grid_simd * __restrict__ y,const Grid_simd * __restrict__ l,const Grid_simd *__restrict__ r){ *y = (*l) * (*r); }
 | 
			
		||||
    friend inline void sub (Grid_simd * __restrict__ y,const Grid_simd * __restrict__ l,const Grid_simd *__restrict__ r){ *y = (*l) - (*r); }
 | 
			
		||||
    friend inline void add (Grid_simd * __restrict__ y,const Grid_simd * __restrict__ l,const Grid_simd *__restrict__ r){ *y = (*l) + (*r); }
 | 
			
		||||
    friend inline Grid_simd adj(const Grid_simd &in){ return conj(in); }
 | 
			
		||||
        
 | 
			
		||||
    //////////////////////////////////
 | 
			
		||||
    // Initialise to 1,0,i
 | 
			
		||||
    //////////////////////////////////
 | 
			
		||||
    // if not complex overload here 
 | 
			
		||||
    friend inline void vone(Grid_simd &ret)      { vsplat(ret,1.0); }
 | 
			
		||||
    friend inline void vzero(Grid_simd &ret)     { vsplat(ret,0.0); }
 | 
			
		||||
 | 
			
		||||
    // overload for complex type
 | 
			
		||||
    template <  class S = Scalar_type,typename std::enable_if < is_complex < S >::value, int >::type = 0 > 
 | 
			
		||||
    friend inline void vone(Grid_simd &ret)      { vsplat(ret,1.0,0.0); }
 | 
			
		||||
    template < class S = Scalar_type,typename std::enable_if < is_complex < S >::value, int >::type = 0 > 
 | 
			
		||||
    friend inline void vzero(Grid_simd &ret)     { vsplat(ret,0.0,0.0); }
 | 
			
		||||
 | 
			
		||||
    // For integral type
 | 
			
		||||
    template <  class S = Scalar_type,typename std::enable_if < std::is_integral < S >::value, int >::type = 0 > 
 | 
			
		||||
    friend inline void vone(Grid_simd &ret)      { vsplat(ret,1); }
 | 
			
		||||
    template <  class S = Scalar_type,typename std::enable_if < std::is_integral < S >::value, int >::type = 0 > 
 | 
			
		||||
    friend inline void vzero(Grid_simd &ret)      { vsplat(ret,0); }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
    // do not compile if real or integer, send an error message from the compiler
 | 
			
		||||
    template < class S = Scalar_type,typename std::enable_if < is_complex < S >::value, int >::type = 0 > 
 | 
			
		||||
    friend inline void vcomplex_i(Grid_simd &ret){ vsplat(ret,0.0,1.0);}
 | 
			
		||||
       
 | 
			
		||||
 | 
			
		||||
    
 | 
			
		||||
   
 | 
			
		||||
    ////////////////////////////////////
 | 
			
		||||
    // Arithmetic operator overloads +,-,*
 | 
			
		||||
    ////////////////////////////////////
 | 
			
		||||
    friend inline Grid_simd operator + (Grid_simd a, Grid_simd b)
 | 
			
		||||
    {
 | 
			
		||||
      vComplexF ret;
 | 
			
		||||
      // FIXME call the binary op
 | 
			
		||||
      return ret;
 | 
			
		||||
    };
 | 
			
		||||
        
 | 
			
		||||
    friend inline Grid_simd operator - (Grid_simd a, Grid_simd b)
 | 
			
		||||
    {
 | 
			
		||||
      vComplexF ret;
 | 
			
		||||
      // FIXME call the binary op
 | 
			
		||||
      return ret;
 | 
			
		||||
    };
 | 
			
		||||
        
 | 
			
		||||
    friend inline Grid_simd operator * (Grid_simd a, Grid_simd b)
 | 
			
		||||
      {
 | 
			
		||||
	vComplexF ret;
 | 
			
		||||
	// FIXME call the binary op
 | 
			
		||||
	return ret;
 | 
			
		||||
      };
 | 
			
		||||
      
 | 
			
		||||
 | 
			
		||||
    ////////////////////////////////////////////////////////////////////////
 | 
			
		||||
    // FIXME:  gonna remove these load/store, get, set, prefetch
 | 
			
		||||
    ////////////////////////////////////////////////////////////////////////
 | 
			
		||||
    friend inline void vset(Grid_simd &ret, Scalar_type *a){
 | 
			
		||||
      // FIXME set 
 | 
			
		||||
    }
 | 
			
		||||
        
 | 
			
		||||
    ///////////////////////
 | 
			
		||||
    // Splat
 | 
			
		||||
    ///////////////////////
 | 
			
		||||
    // overload if complex
 | 
			
		||||
    template < class S = Scalar_type > 
 | 
			
		||||
    friend inline void vsplat(Grid_simd &ret, typename std::enable_if< is_complex < S >::value, S>::type c){
 | 
			
		||||
      Real a= real(c);
 | 
			
		||||
      Real b= imag(c);
 | 
			
		||||
      vsplat(ret,a,b);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // this only for the complex version
 | 
			
		||||
    template < class S = Scalar_type, typename std::enable_if < is_complex < S >::value, int >::type = 0 > 
 | 
			
		||||
    friend inline void vsplat(Grid_simd &ret,Real a, Real b){
 | 
			
		||||
      // FIXME add operator
 | 
			
		||||
    }    
 | 
			
		||||
 | 
			
		||||
    //if real fill with a, if complex fill with a in the real part
 | 
			
		||||
    friend inline void vsplat(Grid_simd &ret,Real a){
 | 
			
		||||
      // FIXME add operator
 | 
			
		||||
    }    
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    friend inline void vstore(const Grid_simd &ret, Scalar_type *a){
 | 
			
		||||
      //FIXME
 | 
			
		||||
    }
 | 
			
		||||
    friend inline void vprefetch(const Grid_simd &v)
 | 
			
		||||
    {
 | 
			
		||||
      _mm_prefetch((const char*)&v.v,_MM_HINT_T0);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    friend inline Scalar_type Reduce(const Grid_simd & in)
 | 
			
		||||
    {
 | 
			
		||||
      // FIXME add operator
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    friend inline Grid_simd operator * (const Scalar_type &a, Grid_simd b){
 | 
			
		||||
      Grid_simd va;
 | 
			
		||||
      vsplat(va,a);
 | 
			
		||||
      return va*b;
 | 
			
		||||
    }
 | 
			
		||||
    friend inline Grid_simd operator * (Grid_simd b,const Scalar_type &a){
 | 
			
		||||
      return a*b;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    ///////////////////////
 | 
			
		||||
    // Conjugate
 | 
			
		||||
    ///////////////////////
 | 
			
		||||
								     
 | 
			
		||||
    friend inline Grid_simd  conj(const Grid_simd  &in){
 | 
			
		||||
      Grid_simd  ret ; vzero(ret);
 | 
			
		||||
      // FIXME add operator
 | 
			
		||||
      return ret;
 | 
			
		||||
    }
 | 
			
		||||
    friend inline Grid_simd timesMinusI(const Grid_simd &in){
 | 
			
		||||
      Grid_simd ret; 
 | 
			
		||||
      vzero(ret);
 | 
			
		||||
      // FIXME add operator
 | 
			
		||||
      return ret;
 | 
			
		||||
    }
 | 
			
		||||
    friend inline Grid_simd timesI(const Grid_simd &in){
 | 
			
		||||
      Grid_simd ret; vzero(ret);
 | 
			
		||||
      // FIXME add operator
 | 
			
		||||
      return ret;
 | 
			
		||||
    }
 | 
			
		||||
        
 | 
			
		||||
    // Unary negation
 | 
			
		||||
    friend inline Grid_simd operator -(const Grid_simd &r) {
 | 
			
		||||
      vComplexF ret;
 | 
			
		||||
      vzero(ret);
 | 
			
		||||
      ret = ret - r;
 | 
			
		||||
      return ret;
 | 
			
		||||
    }
 | 
			
		||||
    // *=,+=,-= operators
 | 
			
		||||
    inline Grid_simd &operator *=(const Grid_simd &r) {
 | 
			
		||||
      *this = (*this)*r;
 | 
			
		||||
      return *this;
 | 
			
		||||
    }
 | 
			
		||||
    inline Grid_simd &operator +=(const Grid_simd &r) {
 | 
			
		||||
      *this = *this+r;
 | 
			
		||||
      return *this;
 | 
			
		||||
    }
 | 
			
		||||
    inline Grid_simd &operator -=(const Grid_simd &r) {
 | 
			
		||||
      *this = *this-r;
 | 
			
		||||
      return *this;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    friend inline void permute(Grid_simd &y,Grid_simd b,int perm)
 | 
			
		||||
    {
 | 
			
		||||
      Gpermute<Grid_simd>(y,b,perm);
 | 
			
		||||
    }
 | 
			
		||||
    friend inline void merge(Grid_simd &y,std::vector<Scalar_type *> &extracted)
 | 
			
		||||
    {
 | 
			
		||||
      Gmerge<Grid_simd,Scalar_type >(y,extracted);
 | 
			
		||||
    }
 | 
			
		||||
    friend inline void extract(const Grid_simd &y,std::vector<Scalar_type *> &extracted)
 | 
			
		||||
    {
 | 
			
		||||
      Gextract<Grid_simd,Scalar_type>(y,extracted);
 | 
			
		||||
    }
 | 
			
		||||
    friend inline void merge(Grid_simd &y,std::vector<Scalar_type > &extracted)
 | 
			
		||||
    {
 | 
			
		||||
      Gmerge<Grid_simd,Scalar_type >(y,extracted);
 | 
			
		||||
    }
 | 
			
		||||
    friend inline void extract(const Grid_simd &y,std::vector<Scalar_type > &extracted)
 | 
			
		||||
    {
 | 
			
		||||
      Gextract<Grid_simd,Scalar_type>(y,extracted);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  };// end of Grid_simd class definition 
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  template<class scalar_type, class vector_type > 
 | 
			
		||||
    inline Grid_simd< scalar_type, vector_type>  innerProduct(const Grid_simd< scalar_type, vector_type> & l, const Grid_simd< scalar_type, vector_type> & r) 
 | 
			
		||||
  {
 | 
			
		||||
    return conj(l)*r; 
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  template<class scalar_type, class vector_type >
 | 
			
		||||
  inline void zeroit(Grid_simd< scalar_type, vector_type> &z){ vzero(z);}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  template<class scalar_type, class vector_type >
 | 
			
		||||
  inline Grid_simd< scalar_type, vector_type> outerProduct(const Grid_simd< scalar_type, vector_type> &l, const Grid_simd< scalar_type, vector_type>& r)
 | 
			
		||||
  {
 | 
			
		||||
    return l*r;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  template<class scalar_type, class vector_type >
 | 
			
		||||
  inline Grid_simd< scalar_type, vector_type> trace(const Grid_simd< scalar_type, vector_type> &arg){
 | 
			
		||||
    return arg;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  // Define available types (now change names to avoid clashing)
 | 
			
		||||
  typedef __m128 SIMD_type;// decided at compilation time
 | 
			
		||||
  typedef Grid_simd< float                 , SIMD_type > MyRealF;
 | 
			
		||||
  typedef Grid_simd< double                , SIMD_type > MyRealD;
 | 
			
		||||
  typedef Grid_simd< std::complex< float > , SIMD_type > MyComplexF;
 | 
			
		||||
  typedef Grid_simd< std::complex< double >, SIMD_type > MyComplexD;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
							
								
								
									
										1
									
								
								lib/stamp-h1
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								lib/stamp-h1
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1 @@
 | 
			
		||||
timestamp for lib/Grid_config.h
 | 
			
		||||
							
								
								
									
										0
									
								
								lib/stencil/.dirstamp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										0
									
								
								lib/stencil/.dirstamp
									
									
									
									
									
										Normal file
									
								
							@@ -34,6 +34,8 @@ int main (int argc, char ** argv)
 | 
			
		||||
    U=lex;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
  TComplex cm;
 | 
			
		||||
  
 | 
			
		||||
  for(int dir=0;dir<4;dir++){
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user