Alina Sbirlea | f2e41dd | 2019-05-23 22:07:37 +0000 | [diff] [blame] | 1 | // RUN: %clang_cc1 -triple x86_64 -target-cpu x86-64 -S -O1 -vectorize-loops -emit-llvm -o - %s | FileCheck %s -check-prefix=CHECK-ENABLE-VECT |
| 2 | // RUN: %clang_cc1 -triple x86_64 -target-cpu x86-64 -S -O1 -emit-llvm -o - %s | FileCheck %s -check-prefix=CHECK-DISABLE-VECT |
| 3 | // RUN: %clang_cc1 -triple x86_64 -target-cpu x86-64 -fexperimental-new-pass-manager -S -O1 -vectorize-loops -emit-llvm -o - %s | FileCheck %s -check-prefix=CHECK-ENABLE-VECT |
| 4 | // RUN: %clang_cc1 -triple x86_64 -target-cpu x86-64 -fexperimental-new-pass-manager -S -O1 -emit-llvm -o - %s | FileCheck %s -check-prefix=CHECK-DISABLE-VECT |
Alina Sbirlea | b4c756d | 2019-05-24 21:49:27 +0000 | [diff] [blame] | 5 | // REQUIRES: x86-registered-target |
Alina Sbirlea | 267ac92 | 2019-05-23 18:51:02 +0000 | [diff] [blame] | 6 | |
| 7 | // CHECK-ENABLE-VECT-LABEL: @for_test() |
| 8 | // CHECK-ENABLE-VECT: fmul <{{[0-9]+}} x double> |
| 9 | |
| 10 | // CHECK-DISABLE-VECT-LABEL: @for_test() |
| 11 | // CHECK-DISABLE-VECT: fmul double |
| 12 | // CHECK-DISABLE-VECT-NOT: fmul <{{[0-9]+}} x double> |
| 13 | |
Alina Sbirlea | 9925ef7 | 2019-05-23 19:51:16 +0000 | [diff] [blame] | 14 | int printf(const char * restrict format, ...); |
Alina Sbirlea | 267ac92 | 2019-05-23 18:51:02 +0000 | [diff] [blame] | 15 | |
| 16 | void for_test() { |
| 17 | double A[1000], B[1000]; |
| 18 | int L = 500; |
| 19 | for (int i = 0; i < L; i++) { |
| 20 | A[i] = i; |
| 21 | } |
| 22 | for (int i = 0; i < L; i++) { |
| 23 | B[i] = A[i]*5; |
| 24 | } |
| 25 | printf("%lf %lf\n", A[0], B[0]); |
| 26 | } |