From 0954bdb3510186fba698d6d5a85524553d090692 Mon Sep 17 00:00:00 2001 From: Martin Reinecke Date: Thu, 7 Oct 2021 09:18:40 +0200 Subject: [PATCH 1/3] potential workaround for problems on Windows and with some Intel compilers --- libsharp2/sharp_core_inc.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/libsharp2/sharp_core_inc.c b/libsharp2/sharp_core_inc.c index eaf34f0..f5653c6 100644 --- a/libsharp2/sharp_core_inc.c +++ b/libsharp2/sharp_core_inc.c @@ -94,6 +94,7 @@ typedef union sxdata_s s; } sxdata_u; +#if 0 static inline void Tvnormalize (Tv * restrict val, Tv * restrict scale, double maxval) { @@ -114,6 +115,31 @@ static inline void Tvnormalize (Tv * restrict val, Tv * restrict scale, mask = vand_mask(vlt(vabs(*val),vfmin),vne(*val,vzero)); } } +#else +static inline void Tvnormalize (Tv * restrict val_, Tv * restrict scale_, + double maxval) + { + Tv val=*val_, scale=*scale_; + const Tv vfmin=vload(sharp_fsmall*maxval), vfmax=vload(maxval); + const Tv vfsmall=vload(sharp_fsmall), vfbig=vload(sharp_fbig); + Tm mask = vgt(vabs(val),vfmax); + while (vanyTrue(mask)) + { + vmuleq_mask(mask,val,vfsmall); + vaddeq_mask(mask,scale,vone); + mask = vgt(vabs(val),vfmax); + } + mask = vand_mask(vlt(vabs(val),vfmin),vne(val,vzero)); + while (vanyTrue(mask)) + { + vmuleq_mask(mask,val,vfbig); + vsubeq_mask(mask,scale,vone); + mask = vand_mask(vlt(vabs(val),vfmin),vne(val,vzero)); + } + *val_ = val; + *scale_ = scale; + } +#endif static void mypow(Tv val, int npow, const double * restrict powlimit, Tv * restrict resd, Tv * restrict ress) From 3d376d9e8c7a49f2747ab057da91e16f3ffa39b8 Mon Sep 17 00:00:00 2001 From: Martin Reinecke Date: Sun, 22 May 2022 09:38:27 +0200 Subject: [PATCH 2/3] update configure.ac --- configure.ac | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index 3b40dc2..9503fc1 100644 --- a/configure.ac +++ b/configure.ac @@ -1,4 +1,4 @@ -AC_INIT([libsharp2], [1.0.0]) +AC_INIT([libsharp2],[1.0.0]) AM_INIT_AUTOMAKE([foreign subdir-objects -Wall -Werror]) AM_MAINTAINER_MODE([enable]) @@ -20,13 +20,13 @@ dnl m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) -AC_PROG_CC_C99 +m4_version_prereq(2.70, [AC_PROG_CC], [AC_PROG_CC_C99]) AC_OPENMP # add math library LIBS="-lm" -AC_PROG_LIBTOOL +LT_INIT tmpval=`echo $CFLAGS | grep -c '\-DMULTIARCH'` AM_CONDITIONAL([HAVE_MULTIARCH], [test $tmpval -gt 0]) From 004b3aea9afe9646d79da2c0e7981409586a3714 Mon Sep 17 00:00:00 2001 From: Martin Reinecke Date: Thu, 29 Sep 2022 14:59:32 +0200 Subject: [PATCH 3/3] fix typo --- test/sharp2_testsuite.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/sharp2_testsuite.c b/test/sharp2_testsuite.c index 0e3302a..46390a4 100644 --- a/test/sharp2_testsuite.c +++ b/test/sharp2_testsuite.c @@ -520,7 +520,7 @@ static void do_sht (sharp_geom_info *ginfo, sharp_alm_info *ainfo, { #ifdef USE_MPI sharp_execute_mpi(MPI_COMM_WORLD,SHARP_MAP2ALM,spin,&alm[itrans*ncomp],&map[itrans*ncomp],ginfo, - ainfo,SHARP_DP|SHARP_ADD,&ttm2a,op_&tom2a); + ainfo,SHARP_DP|SHARP_ADD,&ttm2a,&tom2a); #else sharp_execute(SHARP_MAP2ALM,spin,&alm[itrans*ncomp],&map[itrans*ncomp],ginfo,ainfo, SHARP_DP|SHARP_ADD,&ttm2a,&tom2a);