Skip to content

Commit af19cda

Browse files
authored
Add "recursive" option for IBM xlf compiler (#3359)
* Add correct "recursive" option for xlf (from reference-lapack issue 606)
1 parent a3e8006 commit af19cda

2 files changed

Lines changed: 13 additions & 1 deletion

File tree

Makefile.power

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,13 @@ endif
1212
ifeq ($(CORE), POWER10)
1313
ifneq ($(C_COMPILER), PGI)
1414
CCOMMON_OPT += -Ofast -mcpu=power10 -mtune=power10 -mvsx -fno-fast-math
15+
ifeq ($(F_COMPILER, IBM)
16+
FCOMMON_OPT += -O2 -qrecur -qnosave
17+
else
1518
FCOMMON_OPT += -O2 -frecursive -mcpu=power10 -mtune=power10 -fno-fast-math
1619
endif
1720
endif
21+
endif
1822

1923
ifeq ($(CORE), POWER9)
2024
ifneq ($(C_COMPILER), PGI)
@@ -33,7 +37,11 @@ else
3337
CCOMMON_OPT += -fast -Mvect=simd -Mcache_align
3438
endif
3539
ifneq ($(F_COMPILER), PGI)
40+
ifeq ($(F_COMPILER), IBM)
41+
FCOMMON_OPT += -O2 -qrecur -qnosave
42+
else
3643
FCOMMON_OPT += -O2 -frecursive -fno-fast-math
44+
endif
3745
ifeq ($(C_COMPILER), GCC)
3846
ifneq ($(GCCVERSIONGT4), 1)
3947
$(warning your compiler is too old to fully support POWER9, getting a newer version of gcc is recommended)
@@ -57,7 +65,11 @@ CCOMMON_OPT += -fast -Mvect=simd -Mcache_align
5765
endif
5866
ifneq ($(F_COMPILER), PGI)
5967
ifeq ($(OSNAME), AIX)
68+
ifeq ($(F_COMPILER), IBM)
69+
FCOMMON_OPT += -O2 -qrecur -qnosave
70+
else
6071
FCOMMON_OPT += -O1 -frecursive -mcpu=power8 -mtune=power8 -fno-fast-math
72+
endif
6173
else
6274
FCOMMON_OPT += -O2 -frecursive -mcpu=power8 -mtune=power8 -fno-fast-math
6375
endif

cmake/fc.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ endif ()
104104

105105
if (${F_COMPILER} STREQUAL "IBM")
106106
set(CCOMMON_OPT "${CCOMMON_OPT} -DF_INTERFACE_IBM")
107-
# FCOMMON_OPT += -qarch=440
107+
set(FCOMMON_OPT "${FCOMMON_OPT} -qrecur")
108108
if (BINARY64)
109109
set(FCOMMON_OPT "${FCOMMON_OPT} -q64")
110110
if (INTERFACE64)

0 commit comments

Comments
 (0)