[flang][driver] Merge test/Driver and test/Flang-Driver directories
authorAndrzej Warzynski <andrzej.warzynski@arm.com>
Tue, 9 Mar 2021 13:57:43 +0000 (13:57 +0000)
committerAndrzej Warzynski <andrzej.warzynski@arm.com>
Wed, 10 Mar 2021 11:38:13 +0000 (11:38 +0000)
Until now we've been maintaining 2 test directories for Flang's drivers:
  * test/Driver for `f18` (the current driver)
  * test/Flang-Driver for `flang-new` (the new driver)
As we have started sharing tests between the drivers, this separation is
no longer required. This patch merges the two test directories. As
suggested in the review, moving forward we'll avoid having tests
specifically for the old driver.

A few notable changes:
  * Driver/version-test.f90 and Driver/no-files.f90 are deleted. The
  versions for the new driver are more robust, but tricky to share.
  * Driver/write-module.f90 is deleted in favour of
    Flang-Driver/write-module.f90 (see https://reviews.llvm.org/D97197
    for more context)

Differential Revision: https://reviews.llvm.org/D98257

43 files changed:
flang/test/Driver/Inputs/basic-header-one.h [moved from flang/test/Flang-Driver/Inputs/basic-header-one.h with 100% similarity]
flang/test/Driver/Inputs/basic-header-two.h [moved from flang/test/Flang-Driver/Inputs/basic-header-two.h with 100% similarity]
flang/test/Driver/Inputs/basictestmoduleone.mod [moved from flang/test/Flang-Driver/Inputs/basictestmoduleone.mod with 100% similarity]
flang/test/Driver/Inputs/fixed-form-test.f [moved from flang/test/Flang-Driver/Inputs/fixed-form-test.f with 100% similarity]
flang/test/Driver/Inputs/fixed-line-length-test.f [moved from flang/test/Flang-Driver/Inputs/fixed-line-length-test.f with 100% similarity]
flang/test/Driver/Inputs/free-form-test.f90 [moved from flang/test/Flang-Driver/Inputs/free-form-test.f90 with 100% similarity]
flang/test/Driver/Inputs/header-dir/basic-header-one.h [moved from flang/test/Flang-Driver/Inputs/header-dir/basic-header-one.h with 100% similarity]
flang/test/Driver/Inputs/header-dir/basic-header-two.h [moved from flang/test/Flang-Driver/Inputs/header-dir/basic-header-two.h with 100% similarity]
flang/test/Driver/Inputs/module-dir/basictestmoduleone.mod [moved from flang/test/Flang-Driver/Inputs/module-dir/basictestmoduleone.mod with 100% similarity]
flang/test/Driver/Inputs/module-dir/basictestmoduletwo.mod [moved from flang/test/Flang-Driver/Inputs/module-dir/basictestmoduletwo.mod with 100% similarity]
flang/test/Driver/code-gen.f90 [moved from flang/test/Flang-Driver/code-gen.f90 with 100% similarity]
flang/test/Driver/debug-measure-parse-tree.f90 [moved from flang/test/Flang-Driver/debug-measure-parse-tree.f90 with 100% similarity]
flang/test/Driver/debug-provenance.f90 [moved from flang/test/Flang-Driver/debug-provenance.f90 with 100% similarity]
flang/test/Driver/driver-error-cc1.c [moved from flang/test/Flang-Driver/driver-error-cc1.c with 100% similarity]
flang/test/Driver/driver-error-cc1.cpp [moved from flang/test/Flang-Driver/driver-error-cc1.cpp with 100% similarity]
flang/test/Driver/driver-help-hidden.f90 [moved from flang/test/Flang-Driver/driver-help-hidden.f90 with 100% similarity]
flang/test/Driver/driver-help.f90 [moved from flang/test/Flang-Driver/driver-help.f90 with 100% similarity]
flang/test/Driver/driver-version.f90 [moved from flang/test/Flang-Driver/driver-version.f90 with 69% similarity]
flang/test/Driver/escaped-backslash.f90 [moved from flang/test/Flang-Driver/escaped-backslash.f90 with 100% similarity]
flang/test/Driver/fdefault.f90 [moved from flang/test/Flang-Driver/fdefault.f90 with 100% similarity]
flang/test/Driver/fixed-free-detection.f90 [moved from flang/test/Flang-Driver/fixed-free-detection.f90 with 100% similarity]
flang/test/Driver/fixed-free-flag.f90 [moved from flang/test/Flang-Driver/fixed-free-flag.f90 with 100% similarity]
flang/test/Driver/fixed-line-length.f90 [moved from flang/test/Flang-Driver/fixed-line-length.f90 with 100% similarity]
flang/test/Driver/flarge_sizes.f90 [moved from flang/test/Flang-Driver/flarge_sizes.f90 with 100% similarity]
flang/test/Driver/frontend-forwarding.f90 [moved from flang/test/Flang-Driver/frontend-forwarding.f90 with 100% similarity]
flang/test/Driver/help-f18.f90 [moved from flang/test/Driver/help.f90 with 100% similarity]
flang/test/Driver/implicit-none.f90 [moved from flang/test/Flang-Driver/implicit-none.f90 with 100% similarity]
flang/test/Driver/include-header.f90 [moved from flang/test/Flang-Driver/include-header.f90 with 100% similarity]
flang/test/Driver/input-from-stdin.f90 [moved from flang/test/Flang-Driver/input-from-stdin.f90 with 56% similarity]
flang/test/Driver/macro-def-undef.f90 [moved from flang/test/Flang-Driver/macro-def-undef.f90 with 100% similarity]
flang/test/Driver/macro-multiline.f90 [moved from flang/test/Flang-Driver/macro-multiline.f90 with 100% similarity]
flang/test/Driver/missing-input.f90 [moved from flang/test/Flang-Driver/missing-input.f90 with 100% similarity]
flang/test/Driver/no-files.f90 [deleted file]
flang/test/Driver/parse-error.f95 [moved from flang/test/Flang-Driver/parse-error.f95 with 100% similarity]
flang/test/Driver/phases.f90 [moved from flang/test/Flang-Driver/phases.f90 with 100% similarity]
flang/test/Driver/predefined-macros-compiler-version.f90 [moved from flang/test/Flang-Driver/predefined-macros-compiler-version.f90 with 100% similarity]
flang/test/Driver/scanning-error.f95 [moved from flang/test/Flang-Driver/scanning-error.f95 with 100% similarity]
flang/test/Driver/syntax-only.f90 [moved from flang/test/Flang-Driver/syntax-only.f90 with 100% similarity]
flang/test/Driver/use-module-error.f90 [moved from flang/test/Flang-Driver/use-module-error.f90 with 100% similarity]
flang/test/Driver/use-module.f90 [moved from flang/test/Flang-Driver/use-module.f90 with 100% similarity]
flang/test/Driver/version-test.f90 [deleted file]
flang/test/Driver/write-module.f90
flang/test/Flang-Driver/write-module.f90 [deleted file]

similarity index 69%
rename from flang/test/Flang-Driver/driver-version.f90
rename to flang/test/Driver/driver-version.f90
index 199770b..a504635 100644 (file)
@@ -3,9 +3,9 @@
 
 ! REQUIRES: new-flang-driver
 
-! CHECK:flang-new version 
-! CHECK-NEXT:Target:
-! CHECK-NEXT:Thread model:
-! CHECK-NEXT:InstalledDir:
+! CHECK: flang-new version
+! CHECK-NEXT: Target:
+! CHECK-NEXT: Thread model:
+! CHECK-NEXT: InstalledDir:
 
 ! ERROR: flang-new: error: unsupported option '--versions'; did you mean '--version'?
similarity index 56%
rename from flang/test/Flang-Driver/input-from-stdin.f90
rename to flang/test/Driver/input-from-stdin.f90
index d95218a..606cc41 100644 (file)
@@ -3,27 +3,27 @@
 ! REQUIRES: new-flang-driver
 
 !--------------------------
-! FLANG DRIVER (flang-new)
+! FLANG DRIVER (flang)
 !--------------------------
 ! Input type is implicit
-! RUN: cat %s | flang-new -E - | FileCheck %s --check-prefix=PP-NOT-DEFINED
-! RUN: cat %s | flang-new -DNEW -E - | FileCheck %s --check-prefix=PP-DEFINED
+! RUN: cat %s | %flang -E - | FileCheck %s --check-prefix=PP-NOT-DEFINED
+! RUN: cat %s | %flang -DNEW -E - | FileCheck %s --check-prefix=PP-DEFINED
 
 ! Input type is explicit
-! RUN: cat %s | flang-new -E -x f95-cpp-input - | FileCheck %s --check-prefix=PP-NOT-DEFINED
-! RUN: cat %s | flang-new -DNEW -E -x f95-cpp-input - | FileCheck %s --check-prefix=PP-DEFINED
+! RUN: cat %s | %flang -E -x f95-cpp-input - | FileCheck %s --check-prefix=PP-NOT-DEFINED
+! RUN: cat %s | %flang -DNEW -E -x f95-cpp-input - | FileCheck %s --check-prefix=PP-DEFINED
 
 !---------------------------------------
-! FLANG FRONTEND DRIVER (flang-new -fc1)
+! FLANG FRONTEND DRIVER (flang -fc1)
 !---------------------------------------
 ! Test `-E`: for the corresponding frontend actions the driver relies on the prescanner API to handle file I/O
-! RUN: cat %s | flang-new -fc1 -E | FileCheck %s --check-prefix=PP-NOT-DEFINED
-! RUN: cat %s | flang-new -fc1 -DNEW -E | FileCheck %s --check-prefix=PP-DEFINED
+! RUN: cat %s | %flang -fc1 -E | FileCheck %s --check-prefix=PP-NOT-DEFINED
+! RUN: cat %s | %flang -fc1 -DNEW -E | FileCheck %s --check-prefix=PP-DEFINED
 
 ! Test `-test-io`: for the corresponding frontend action (`InputOutputTestAction`) the driver handles the file I/O on its own
 ! the corresponding action (`PrintPreprocessedAction`)
-! RUN: cat %s | flang-new -fc1 -test-io | FileCheck %s --check-prefix=IO --match-full-lines
-! RUN: cat %s | flang-new -fc1 -DNEW -test-io | FileCheck %s --check-prefix=IO --match-full-lines
+! RUN: cat %s | %flang -fc1 -test-io | FileCheck %s --check-prefix=IO --match-full-lines
+! RUN: cat %s | %flang -fc1 -DNEW -test-io | FileCheck %s --check-prefix=IO --match-full-lines
 
 !-------------------------
 ! EXPECTED OUTPUT for `-E`
diff --git a/flang/test/Driver/no-files.f90 b/flang/test/Driver/no-files.f90
deleted file mode 100644 (file)
index 718985d..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-! RUN: %f18 < %S/Inputs/hello.f90 | FileCheck %s
-
-
-! CHECK: Enter Fortran source
-! CHECK: Use EOF character (^D) to end file
-
-! CHECK: Parse tree comprises {{.*}} objects and occupies {{.*}} total bytes
-! CHECK: PROGRAM hello
-! CHECK:  WRITE (*, *) "hello world"
-! CHECK: END PROGRAM hello
diff --git a/flang/test/Driver/version-test.f90 b/flang/test/Driver/version-test.f90
deleted file mode 100644 (file)
index 79be361..0000000
+++ /dev/null
@@ -1,10 +0,0 @@
-! Check that lit configuration works by checking the compiler version
-
-! VERSION-NOT:{{![[:space:]]}}
-! VERSION:{{[[:space:]]}}
-! VERSION-SAME:f18 compiler (under development), version {{[1-9][0-9]*.[0-9]*.[0-9]*}}
-! VERSION-EMPTY:
-  
-! RUN: %f18 -V 2>&1 | FileCheck  -check-prefix=VERSION %s
-! RUN: %f18 -v 2>&1 | FileCheck  -check-prefix=VERSION %s
-! RUN: %f18 --version 2>&1 | FileCheck  -check-prefix=VERSION %s
index 47c37d6..baa480e 100644 (file)
@@ -1,17 +1,28 @@
-! RUN: rm -rf %t && mkdir -p %t/mod-dir && cd %t && %f18 -fparse-only %s
-! RUN: ls %t/testmodule.mod && not ls %t/mod-dir/testmodule.mod
+! Checks that the module file:
+!   * is _saved_
+!   * is saved in the _directory specified by the user_
+! We use `-fsyntax-only` as it stops after the semantic checks (the module file is generated when sema checks are run)
 
-! RUN: rm -rf %t && mkdir -p %t/mod-dir && cd %t && %f18 -fparse-only -module mod-dir %s
-! RUN: ls %t/mod-dir/testmodule.mod && not ls %t/testmodule.mod
+!--------------------------
+! -module-dir
+!--------------------------
+! RUN: rm -rf %t && mkdir -p %t/dir-flang
+! RUN: cd %t && %flang -fsyntax-only -module-dir %t/dir-flang %s
+! RUN: ls %t/dir-flang/testmodule.mod && not ls %t/testmodule.mod
 
-! RUN: rm -rf %t && mkdir -p %t/mod-dir && cd %t && %f18 -fparse-only -module-dir mod-dir %s
-! RUN: ls %t/mod-dir/testmodule.mod && not ls %t/testmodule.mod
+!---------------------------
+! -J <dir> (i.e. with space)
+!---------------------------
+! RUN: rm -rf %t && mkdir -p %t/dir-flang
+! RUN: cd %t && %flang -fsyntax-only -J %t/dir-flang %s
+! RUN: ls %t/dir-flang/testmodule.mod && not ls %t/testmodule.mod
 
-! RUN: rm -rf %t && mkdir -p %t/mod-dir && cd %t && %f18 -fparse-only -J mod-dir %s
-! RUN: ls %t/mod-dir/testmodule.mod && not ls %t/testmodule.mod
-
-! RUN: rm -rf %t && mkdir -p %t/mod-dir && cd %t && %f18 -fparse-only -Jmod-dir %s
-! RUN: ls %t/mod-dir/testmodule.mod && not ls %t/testmodule.mod
+!------------------------------
+! -J<dir> (i.e. without space)
+!------------------------------
+! RUN: rm -rf %t && mkdir -p %t/dir-flang
+! RUN: cd %t && %flang -fsyntax-only -J%t/dir-flang %s
+! RUN: ls %t/dir-flang/testmodule.mod && not ls %t/testmodule.mod
 
 module testmodule
   type::t2
diff --git a/flang/test/Flang-Driver/write-module.f90 b/flang/test/Flang-Driver/write-module.f90
deleted file mode 100644 (file)
index 5065be9..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-! RUN: rm -rf %t && mkdir -p %t/dir-flang
-! RUN: cd %t && %flang -fsyntax-only -module-dir %t/dir-flang %s
-! RUN: ls %t/dir-flang/testmodule.mod && not ls %t/testmodule.mod
-
-! RUN: rm -rf %t && mkdir -p %t/dir-flang
-! RUN: cd %t && %flang -fsyntax-only -J %t/dir-flang %s
-! RUN: ls %t/dir-flang/testmodule.mod && not ls %t/testmodule.mod
-
-! RUN: rm -rf %t && mkdir -p %t/dir-flang
-! RUN: cd %t && %flang -fsyntax-only -J%t/dir-flang %s
-! RUN: ls %t/dir-flang/testmodule.mod && not ls %t/testmodule.mod
-
-module testmodule
-  type::t2
-  end type
-end