51 lines
2.0 KiB
Fortran
51 lines
2.0 KiB
Fortran
! 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-new" "-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: "-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 -### -fintegrated-as %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"{{$}}
|