Update README to reflect modifications to test-suite.
Support input from standard-in in llvm_singlesource function.
Modify Fortran IO to allow tests to run in parallel.
Include source directory in path to reference input.
Differential D104150
[test-suite] NIST Fortran Compiler Validation Suite. naromero77 on Jun 11 2021, 1:35 PM. Authored by
Details Update README to reflect modifications to test-suite. Support input from standard-in in llvm_singlesource function. Modify Fortran IO to allow tests to run in parallel. Include source directory in path to reference input.
Diff Detail
Event TimelineComment Actions Could you delete unused driver_parse and driver_run?
Comment Actions Neither are used by the test-suite. However, if anyone ever needed to update the reference results, the driver_run script would come in handy. We could get rid of driver_parse, since it is not needed at all and was just part of the test-suite. Comment Actions
Comment Actions Is this expected to pass with current upstream flang? /path/to/build/bin/flang -DNDEBUG -w -Werror=date-time -c /path/to/llvm-test-suite/Fortran/UnitTests/fcvs21_f95/FM509.f -o CMakeFiles/FM509.dir/FM509.f.o f18-c234.f90:237:12: 237 | CALL sn512(c1n001(5)(2:9), cvcomp) | 1 Error: Actual argument contains too few elements for dummy argument ‘c1d001’ (19/48) at (1) execvp(gfortran) failed: flang: in /path/to/test-suite-sandbox/build/Fortran/UnitTests/fcvs21_f95, f18 failed with exit status 0: /path/to/build/bin/f18 -module-suffix .f18.mod -DNDEBUG -w -Werror=date-time -c /path/to/llvm-test-suite/Fortran/UnitTests/fcvs21_f95/FM509.f -o CMakeFiles/FM509.dir/FM509.f.o I'm attaching the produced f18-c234.f90 in case anyone wants to have a look. Comment Actions Sorry for the slow reply. I am on vacation this week and will return to a regular schedule next week. I had no failures with an GCC 7.5, but did have one failure with GCC 10.2 with this same test. Are you using the Flang throw away driver? If so, which GCC are you using. It would be pretty easy to remove this test if we decided that is the best thing to do. Comment Actions Does driver_run come from the NIST Validation suite? Generally, we would not to support multiple means to run tests (llvm-lit and driver_run). If its only purpose is to update reference_output files, it should make that clear in comments. Comment Actions Yes, driver_run is only for updating reference_output files. I do mention this both in the README and CMakeLists.txt. Let me know if its not explicit enough. Comment Actions No worries :) I'm using GCC 9.3.0.
For now it would be best to investigate :) If the test looks fishy (e.g. isn't conformant to the standard or uses obsolete features that we're not interested in), then of course we can remove it. TL;DR: We shouldn't block this patch just because that test is failing, but we don't necessarily have to remove it either. Comment Actions Can you try running it again with the latest version of the patch? It should compile and pass now. This test needs the -std=legacy flag.
It kind of looks like this type of thing: Except that the -fallow-argument-mismatch does not actually help, you have to use -std=legacy It looks like it might be non-conformant, but I am not 100% sure.
Comment Actions Please also mention that in driver_run itself, especially that it is not meant to run the test-suite (unlike the file name implies)
Comment Actions
|