From 80308ebd651d1ce1e25ed49ad34910bc08ddd850 Mon Sep 17 00:00:00 2001 From: Jeremy Morse Date: Wed, 30 Oct 2019 13:24:55 +0000 Subject: [PATCH] Rename a flang test case On Windows and macOS, the filesystem is case insensitive, and these files interfere with each other. Reading through, the case of the file extension is part of the test. I've altered the rest of the name instead. (cherry picked from commit 6c0a160c2d33e54aecf1538bf7c85d8da92051be) (cherry picked from commit 0a1b1118cfd0716d1373438528b8e80914b436dd) --- clang/test/Driver/flang/flang.f90 | 51 +++++++++++++++++++++++++ clang/test/Driver/flang/flang_ucase.F90 | 51 +++++++++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 clang/test/Driver/flang/flang.f90 create mode 100644 clang/test/Driver/flang/flang_ucase.F90 diff --git a/clang/test/Driver/flang/flang.f90 b/clang/test/Driver/flang/flang.f90 new file mode 100644 index 0000000000000..9d47c7c90225c --- /dev/null +++ b/clang/test/Driver/flang/flang.f90 @@ -0,0 +1,51 @@ +! Check that flang -fc1 is invoked when in --driver-mode=flang. + +! This is a copy of flang_ucase.F90 because the driver has logic in it which +! differentiates between F90 and f90 files. Flang will not treat these files +! differently. + +! Test various output types: +! * -E +! * -fsyntax-only +! * -emit-llvm -S +! * -emit-llvm +! * -S +! * (no type specified, resulting in an object file) + +! All invocations should begin with flang -fc1, consume up to here. +! ALL-LABEL: "{{[^"]*}}flang" "-fc1" + +! Check that f90 files are not treated as "previously preprocessed" +! ... in --driver-mode=flang. +! RUN: %clang --driver-mode=flang -### -E %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-E %s +! CHECK-E-NOT: previously preprocessed input +! CHECK-E-DAG: "-E" +! CHECK-E-DAG: "-o" "-" + +! RUN: %clang --driver-mode=flang -### -emit-ast %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-EMIT-AST %s +! CHECK-EMIT-AST-DAG: "-triple" +! CHECK-EMIT-AST-DAG: "-emit-ast" +! CHECK-EMIT-AST-DAG: "-o" "{{[^"]*}}.ast" + +! RUN: %clang --driver-mode=flang -### -fsyntax-only %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-SYNTAX-ONLY %s +! CHECK-SYNTAX-ONLY-NOT: "-o" +! CHECK-SYNTAX-ONLY-DAG: "-fsyntax-only" + +! RUN: %clang --driver-mode=flang -### -emit-llvm -S %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-EMIT-LLVM-IR %s +! CHECK-EMIT-LLVM-IR-DAG: "-emit-llvm" +! CHECK-EMIT-LLVM-IR-DAG: "-o" "{{[^"]*}}.ll" + +! RUN: %clang --driver-mode=flang -### -emit-llvm %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-EMIT-LLVM-BC %s +! CHECK-EMIT-LLVM-BC-DAG: "-emit-llvm-bc" +! CHECK-EMIT-LLVM-BC-DAG: "-o" "{{[^"]*}}.bc" + +! RUN: %clang --driver-mode=flang -### -S %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-S %s +! CHECK-S-DAG: "-S" +! CHECK-S-DAG: "-o" "{{[^"]*}}.s" + +! RUN: %clang --driver-mode=flang -### %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-EMIT-OBJ %s +! CHECK-EMIT-OBJ-DAG: "-emit-obj" +! CHECK-EMIT-OBJ-DAG: "-o" "{{[^"]*}}.o" + +! Should end in the input file. +! ALL: "{{.*}}flang.f90"{{$}} diff --git a/clang/test/Driver/flang/flang_ucase.F90 b/clang/test/Driver/flang/flang_ucase.F90 new file mode 100644 index 0000000000000..323afb21dccf5 --- /dev/null +++ b/clang/test/Driver/flang/flang_ucase.F90 @@ -0,0 +1,51 @@ +! Check that flang -fc1 is invoked when in --driver-mode=flang. + +! This is a copy of flang.f90 because the driver has logic in it which +! differentiates between F90 and f90 files. Flang will not treat these files +! differently. + +! Test various output types: +! * -E +! * -fsyntax-only +! * -emit-llvm -S +! * -emit-llvm +! * -S +! * (no type specified, resulting in an object file) + +! All invocations should begin with flang -fc1, consume up to here. +! ALL-LABEL: "{{[^"]*}}flang" "-fc1" + +! Check that f90 files are not treated as "previously preprocessed" +! ... in --driver-mode=flang. +! RUN: %clang --driver-mode=flang -### -E %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-E %s +! CHECK-E-NOT: previously preprocessed input +! CHECK-E-DAG: "-E" +! CHECK-E-DAG: "-o" "-" + +! RUN: %clang --driver-mode=flang -### -emit-ast %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-EMIT-AST %s +! CHECK-EMIT-AST-DAG: "-triple" +! CHECK-EMIT-AST-DAG: "-emit-ast" +! CHECK-EMIT-AST-DAG: "-o" "{{[^"]*}}.ast" + +! RUN: %clang --driver-mode=flang -### -fsyntax-only %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-SYNTAX-ONLY %s +! CHECK-SYNTAX-ONLY-NOT: "-o" +! CHECK-SYNTAX-ONLY-DAG: "-fsyntax-only" + +! RUN: %clang --driver-mode=flang -### -emit-llvm -S %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-EMIT-LLVM-IR %s +! CHECK-EMIT-LLVM-IR-DAG: "-emit-llvm" +! CHECK-EMIT-LLVM-IR-DAG: "-o" "{{[^"]*}}.ll" + +! RUN: %clang --driver-mode=flang -### -emit-llvm %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-EMIT-LLVM-BC %s +! CHECK-EMIT-LLVM-BC-DAG: "-emit-llvm-bc" +! CHECK-EMIT-LLVM-BC-DAG: "-o" "{{[^"]*}}.bc" + +! RUN: %clang --driver-mode=flang -### -S %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-S %s +! CHECK-S-DAG: "-S" +! CHECK-S-DAG: "-o" "{{[^"]*}}.s" + +! RUN: %clang --driver-mode=flang -### %s 2>&1 | FileCheck --check-prefixes=ALL,CHECK-EMIT-OBJ %s +! CHECK-EMIT-OBJ-DAG: "-emit-obj" +! CHECK-EMIT-OBJ-DAG: "-o" "{{[^"]*}}.o" + +! Should end in the input file. +! ALL: "{{.*}}flang_ucase.F90"{{$}}