blob: baff86fb9067910305b843393540c36054732855 [file] [log] [blame]
Yaxun Liu02c39792016-07-13 21:21:05 +00001// RUN: %clang -S -### -cl-std=CL %s 2>&1 | FileCheck --check-prefix=CHECK-CL %s
2// RUN: %clang -S -### -cl-std=CL1.1 %s 2>&1 | FileCheck --check-prefix=CHECK-CL11 %s
3// RUN: %clang -S -### -cl-std=CL1.2 %s 2>&1 | FileCheck --check-prefix=CHECK-CL12 %s
4// RUN: %clang -S -### -cl-std=CL2.0 %s 2>&1 | FileCheck --check-prefix=CHECK-CL20 %s
Anastasia Stulovac645f612018-04-12 14:17:04 +00005// RUN: %clang -S -### -cl-std=c++ %s 2>&1 | FileCheck --check-prefix=CHECK-CLCPP %s
Yaxun Liu02c39792016-07-13 21:21:05 +00006// RUN: %clang -S -### -cl-opt-disable %s 2>&1 | FileCheck --check-prefix=CHECK-OPT-DISABLE %s
7// RUN: %clang -S -### -cl-strict-aliasing %s 2>&1 | FileCheck --check-prefix=CHECK-STRICT-ALIASING %s
8// RUN: %clang -S -### -cl-single-precision-constant %s 2>&1 | FileCheck --check-prefix=CHECK-SINGLE-PRECISION-CONST %s
9// RUN: %clang -S -### -cl-finite-math-only %s 2>&1 | FileCheck --check-prefix=CHECK-FINITE-MATH-ONLY %s
10// RUN: %clang -S -### -cl-kernel-arg-info %s 2>&1 | FileCheck --check-prefix=CHECK-KERNEL-ARG-INFO %s
11// RUN: %clang -S -### -cl-unsafe-math-optimizations %s 2>&1 | FileCheck --check-prefix=CHECK-UNSAFE-MATH-OPT %s
12// RUN: %clang -S -### -cl-fast-relaxed-math %s 2>&1 | FileCheck --check-prefix=CHECK-FAST-RELAXED-MATH %s
13// RUN: %clang -S -### -cl-mad-enable %s 2>&1 | FileCheck --check-prefix=CHECK-MAD-ENABLE %s
14// RUN: %clang -S -### -cl-no-signed-zeros %s 2>&1 | FileCheck --check-prefix=CHECK-NO-SIGNED-ZEROS %s
15// RUN: %clang -S -### -cl-denorms-are-zero %s 2>&1 | FileCheck --check-prefix=CHECK-DENORMS-ARE-ZERO %s
Yaxun Liuffb60902016-08-09 20:10:18 +000016// RUN: %clang -S -### -cl-fp32-correctly-rounded-divide-sqrt %s 2>&1 | FileCheck --check-prefix=CHECK-ROUND-DIV %s
Alexey Sotkin20f65922018-02-22 11:54:14 +000017// RUN: %clang -S -### -cl-uniform-work-group-size %s 2>&1 | FileCheck --check-prefix=CHECK-UNIFORM-WG %s
Yaxun Liu02c39792016-07-13 21:21:05 +000018// RUN: not %clang -cl-std=c99 -DOPENCL %s 2>&1 | FileCheck --check-prefix=CHECK-C99 %s
19// RUN: not %clang -cl-std=invalid -DOPENCL %s 2>&1 | FileCheck --check-prefix=CHECK-INVALID %s
Yaxun Liub5f176e2016-06-29 19:39:32 +000020
Benjamin Kramer09a9c552016-07-14 15:06:57 +000021// CHECK-CL: "-cc1" {{.*}} "-cl-std=CL"
22// CHECK-CL11: "-cc1" {{.*}} "-cl-std=CL1.1"
23// CHECK-CL12: "-cc1" {{.*}} "-cl-std=CL1.2"
24// CHECK-CL20: "-cc1" {{.*}} "-cl-std=CL2.0"
Anastasia Stulovac645f612018-04-12 14:17:04 +000025// CHECK-CLCPP: "-cc1" {{.*}} "-cl-std=c++"
Benjamin Kramer09a9c552016-07-14 15:06:57 +000026// CHECK-OPT-DISABLE: "-cc1" {{.*}} "-cl-opt-disable"
27// CHECK-STRICT-ALIASING: "-cc1" {{.*}} "-cl-strict-aliasing"
28// CHECK-SINGLE-PRECISION-CONST: "-cc1" {{.*}} "-cl-single-precision-constant"
29// CHECK-FINITE-MATH-ONLY: "-cc1" {{.*}} "-cl-finite-math-only"
30// CHECK-KERNEL-ARG-INFO: "-cc1" {{.*}} "-cl-kernel-arg-info"
31// CHECK-UNSAFE-MATH-OPT: "-cc1" {{.*}} "-cl-unsafe-math-optimizations"
32// CHECK-FAST-RELAXED-MATH: "-cc1" {{.*}} "-cl-fast-relaxed-math"
33// CHECK-MAD-ENABLE: "-cc1" {{.*}} "-cl-mad-enable"
34// CHECK-NO-SIGNED-ZEROS: "-cc1" {{.*}} "-cl-no-signed-zeros"
35// CHECK-DENORMS-ARE-ZERO: "-cc1" {{.*}} "-cl-denorms-are-zero"
Yaxun Liuffb60902016-08-09 20:10:18 +000036// CHECK-ROUND-DIV: "-cc1" {{.*}} "-cl-fp32-correctly-rounded-divide-sqrt"
Alexey Sotkin20f65922018-02-22 11:54:14 +000037// CHECK-UNIFORM-WG: "-cc1" {{.*}} "-cl-uniform-work-group-size"
Yaxun Liu02c39792016-07-13 21:21:05 +000038// CHECK-C99: error: invalid value 'c99' in '-cl-std=c99'
39// CHECK-INVALID: error: invalid value 'invalid' in '-cl-std=invalid'
Yaxun Liub5044fe2016-06-17 17:19:28 +000040
41kernel void func(void);