@@ -35,13 +35,17 @@ llvm_test_prepare(rm -f %S/fort.*)
3535
3636# Group 1:
3737# Tests 905 and 907 use list-directed output, for which the standard allows some
38- # flexibility, e.g., with regards to how many white space characters or
38+ # flexibility, e.g., with regards to how many white space characters or
3939# floating point decimals to print. Treat them separately.
40+ # FIXME: Reenable these tests after moving the buildbots from using
41+ # flang-to-external-fc to using flang-new.
4042set (SPECIAL_CASES "FM905.f" "FM907.f" )
41- set (Source ${SPECIAL_CASES} )
42- set (FP_IGNOREWHITESPACE ON )
43- llvm_singlesource()
44- set (Source )
43+ if (NOT CMAKE_Fortran_COMPILER_ID STREQUAL "LLVMFlang" )
44+ set (Source ${SPECIAL_CASES} )
45+ set (FP_IGNOREWHITESPACE ON )
46+ llvm_singlesource()
47+ set (Source )
48+ endif ()
4549
4650# Group 2:
4751# Generic case. Make sure to exclude the special cases which have already been
@@ -61,6 +65,20 @@ else()
6165 list (FILTER Source EXCLUDE REGEX "FM509\. f$" )
6266endif ()
6367
68+ # Skip some tests that currently fail with flang on AArch64 when using libpgmath.
69+ # FIXME: Reenable these tests after libpgmath is fixed or after we no longer
70+ # depend on it.
71+ if (CMAKE_Fortran_COMPILER_ID STREQUAL "LLVMFlang" AND ARCH STREQUAL "AArch64" )
72+ # Regex because the GLOB returns the full path to each file
73+ list (FILTER Source EXCLUDE REGEX "FM813\. f$" )
74+ list (FILTER Source EXCLUDE REGEX "FM815\. f$" )
75+ list (FILTER Source EXCLUDE REGEX "FM817\. f$" )
76+ list (FILTER Source EXCLUDE REGEX "FM820\. f$" )
77+ list (FILTER Source EXCLUDE REGEX "FM828\. f$" )
78+ list (FILTER Source EXCLUDE REGEX "FM831\. f$" )
79+ list (FILTER Source EXCLUDE REGEX "FM833\. f$" )
80+ endif ()
81+
6482set (FP_TOLERANCE 1.0e-11) # set by the most sensitive numerical test
6583set (FP_IGNOREWHITESPACE OFF )
6684llvm_singlesource()
0 commit comments