Skip to content

Commit

Permalink
Merge pull request #4974 from cenewcombe/develop
Browse files Browse the repository at this point in the history
Corrections for Cray and Nvidia Fortran compiler calling conventions
  • Loading branch information
martin-frbg authored Nov 13, 2024
2 parents 2057cd7 + 10cf06d commit 3e7e312
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 4 deletions.
8 changes: 5 additions & 3 deletions Makefile.system
Original file line number Diff line number Diff line change
Expand Up @@ -1392,15 +1392,17 @@ endif
endif

ifeq ($(F_COMPILER), CRAY)
CCOMMON_OPT += -DF_INTERFACE_INTEL
CCOMMON_OPT += -DF_INTERFACE_CRAYFC
FCOMMON_OPT += -hnopattern
ifdef INTERFACE64
ifneq ($(INTERFACE64), 0)
FCOMMON_OPT += -s integer64
endif
endif
ifneq ($(USE_OPENMP), 1)
FCOMMON_OPT += -O noomp
ifeq ($(USE_OPENMP), 1)
FCOMMON_OPT += -fopenmp
else
FCOMMON_OPT += -fno-openmp
endif
endif

Expand Down
2 changes: 1 addition & 1 deletion common_arm64.h
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
#define RMB __asm__ __volatile__ ("dmb ishld" : : : "memory")
#endif

#if defined( F_INTERFACE_FLANG) || defined(F_INTERFACE_PGI)
#if defined( F_INTERFACE_FLANG) || (defined(F_INTERFACE_PGI) && (defined(__NVCOMPILER) && (__NVCOMPILER_MAJOR__ < 23 || (__NVCOMPILER_MAJOR__ == 23 && __NVCOMPILER_MINOR__ < 9))))
#define RETURN_BY_STACK
#else
#define RETURN_BY_COMPLEX
Expand Down
4 changes: 4 additions & 0 deletions common_x86_64.h
Original file line number Diff line number Diff line change
Expand Up @@ -283,6 +283,10 @@ static __inline unsigned int blas_quickdivide(unsigned int x, unsigned int y){
#define RETURN_BY_STACK
#endif

#ifdef F_INTERFACE_CRAYFC
#define RETURN_BY_PACKED
#endif

#ifdef F_INTERFACE_FUJITSU
#define RETURN_BY_STACK
#endif
Expand Down

0 comments on commit 3e7e312

Please sign in to comment.