From 2462105041b1c4a797e36364b127fdfaa257cda8 Mon Sep 17 00:00:00 2001 From: Dan Bonachea Date: Tue, 6 Oct 2026 11:39:16 -0700 Subject: [PATCH 1/5] native-multi-image: Enable event post/wait tests for flang 24 Also tweak the test slightly for better coverage --- app/native-multi-image.F90 | 3 ++- app/print-native-flags.F90 | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/app/native-multi-image.F90 b/app/native-multi-image.F90 index 70adfbcb7..a0b305c0f 100644 --- a/app/native-multi-image.F90 +++ b/app/native-multi-image.F90 @@ -776,8 +776,9 @@ program native_multi_image # if HAVE_EVENT_POST_WAIT STATUS("Testing event post / event wait...") if (THIS_IMAGE() == 1) then - !event post (test_event) ! currently broken + event post (test_event) event post (test_event[1]) + event wait (test_event) event wait (test_event, until_count=NUM_IMAGES()) else event post (test_event[1]) diff --git a/app/print-native-flags.F90 b/app/print-native-flags.F90 index bbd57eb28..0aa165c00 100644 --- a/app/print-native-flags.F90 +++ b/app/print-native-flags.F90 @@ -59,14 +59,14 @@ subroutine write_flags call no("COARRAY_LOCAL_ACCESS") call no("PUTGET") - call no("EVENT") - call yes("EVENT_TYPE") + call yes("EVENT") + call no("EVENT_QUERY") call no("LOCK") call yes("LOCK_TYPE") call no("NOTIFY") call yes("NOTIFY_TYPE") - call set("-DIGNORE_FAILURES=6") ! type checks for event, notify, lock + call set("-DIGNORE_FAILURES=4") ! type checks for notify, lock # endif #elif __LFORTRAN__ # if __LFORTRAN_MAJOR__ == 0 && __LFORTRAN_MINOR__ <= 63 From cae389f0268129111173b2b030e73275a4750416 Mon Sep 17 00:00:00 2001 From: Dan Bonachea Date: Tue, 6 Oct 2026 14:58:08 -0700 Subject: [PATCH 2/5] native-multi-image: Add coverage for arrays of events --- app/native-multi-image.F90 | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/app/native-multi-image.F90 b/app/native-multi-image.F90 index a0b305c0f..457aa80df 100644 --- a/app/native-multi-image.F90 +++ b/app/native-multi-image.F90 @@ -151,6 +151,9 @@ #ifndef HAVE_EVENT_POST_WAIT #define HAVE_EVENT_POST_WAIT HAVE_EVENT #endif +#ifndef HAVE_EVENT_POST_WAIT_ARRAY +#define HAVE_EVENT_POST_WAIT_ARRAY HAVE_EVENT +#endif #ifndef HAVE_EVENT_QUERY #define HAVE_EVENT_QUERY HAVE_EVENT #endif @@ -408,6 +411,7 @@ program native_multi_image # if HAVE_EVENT_TYPE type(event_type), target :: default_event[*] type(event_type) :: test_event[*] + type(event_type) :: test_event_arr(4)[*] # endif # if HAVE_NOTIFY_TYPE type(notify_type), target :: default_notify[*] @@ -784,6 +788,21 @@ program native_multi_image event post (test_event[1]) end if # endif +# if HAVE_EVENT_POST_WAIT_ARRAY + STATUS("Testing event post / event wait (array)...") + if (THIS_IMAGE() == 1) then + do i = 1, size(test_event_arr) + event post (test_event_arr(i)) + event post (test_event_arr(i)[1]) + event wait (test_event_arr(i)) + event wait (test_event_arr(i), until_count=NUM_IMAGES()) + end do + else + do i = 1, size(test_event_arr) + event post (test_event_arr(i)[1]) + end do + end if +# endif # if HAVE_LOCK_TYPE CHECK_TYPE_COMPLIANCE(LOCK_TYPE, default_lock, .false., 64) From 24e4673ce12b41f7c1e30f4a251947eab49053a6 Mon Sep 17 00:00:00 2001 From: Dan Bonachea Date: Wed, 7 Oct 2026 15:36:26 -0700 Subject: [PATCH 3/5] native-multi-image: Enhance event_type array coverage to use allocatable --- app/native-multi-image.F90 | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/native-multi-image.F90 b/app/native-multi-image.F90 index 457aa80df..889a311c9 100644 --- a/app/native-multi-image.F90 +++ b/app/native-multi-image.F90 @@ -411,7 +411,7 @@ program native_multi_image # if HAVE_EVENT_TYPE type(event_type), target :: default_event[*] type(event_type) :: test_event[*] - type(event_type) :: test_event_arr(4)[*] + type(event_type), allocatable :: test_event_arr(:)[:] # endif # if HAVE_NOTIFY_TYPE type(notify_type), target :: default_notify[*] @@ -789,7 +789,8 @@ program native_multi_image end if # endif # if HAVE_EVENT_POST_WAIT_ARRAY - STATUS("Testing event post / event wait (array)...") + STATUS("Testing event post / event wait (allocatable array)...") + allocate(test_event_arr(4)[*]) if (THIS_IMAGE() == 1) then do i = 1, size(test_event_arr) event post (test_event_arr(i)) @@ -802,6 +803,7 @@ program native_multi_image event post (test_event_arr(i)[1]) end do end if + deallocate(test_event_arr) # endif # if HAVE_LOCK_TYPE From 6184c0eaf326281278b25d944758a8c9ef4e4468 Mon Sep 17 00:00:00 2001 From: Dan Bonachea Date: Sat, 10 Oct 2026 12:43:03 -0700 Subject: [PATCH 4/5] native-multi-image: CCE update --- app/print-native-flags.F90 | 1 + 1 file changed, 1 insertion(+) diff --git a/app/print-native-flags.F90 b/app/print-native-flags.F90 index 0aa165c00..704f8b56c 100644 --- a/app/print-native-flags.F90 +++ b/app/print-native-flags.F90 @@ -155,6 +155,7 @@ subroutine write_flags # endif call set("-DTYPES_PRIF_COMPLIANT=0") call no("COSHAPE") ! missing F2018 feature + call no("CO_BROADCAST_DERIVED_POD") ! fails to broadcast the entire array of derived type call set("-DIGNORE_FAILURES=2") ! CO_MIN(character) get wrong answer with > 9 images # endif #elif __INTEL_COMPILER From 127a1dfde53291d65705e1cc4f4f21d7db0a6bfb Mon Sep 17 00:00:00 2001 From: Dan Bonachea Date: Fri, 9 Oct 2026 11:21:05 -0700 Subject: [PATCH 5/5] run-fpm.sh: Display NATIVEFLAGS separately for info output --- install.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/install.sh b/install.sh index 4f7cf4ad0..95f6a0e70 100755 --- a/install.sh +++ b/install.sh @@ -887,7 +887,8 @@ info) echo MAKE=\$MAKE echo FC=\$FC echo CC=\$CC - echo FFLAGS=\$FFLAGS + echo FFLAGS=\$RAWFLAGS + echo NATIVEFLAGS=\$NATIVEFLAGS echo CFLAGS=\$CFLAGS echo LDFLAGS=\$LDFLAGS grep -e link \$SRCDIR/fpm.toml