[ARM] Adjust how NEON shifts are lowered
[llvm-core.git] / test / Transforms / GVN / propagate-ir-flags.ll
blob07367a2ec51e1efae0e9b21555b0c92095c543df
2 ; RUN: opt < %s -gvn -S | FileCheck %s
4 ; CHECK-LABEL: func_fast
5 ; CHECK:       fadd fast double
6 ; CHECK-NEXT:  store
7 ; CHECK-NEXT:  ret
8 define double @func_fast(double %a, double %b) {
9 entry:
10   %a.addr = alloca double, align 8
11   %add = fadd fast double %b, 3.000000e+00
12   store double %add, double* %a.addr, align 8
13   %load_add = load double, double* %a.addr, align 8
14   ret double %load_add
17 ; CHECK-LABEL: func_no_fast
18 ; CHECK:       fadd double
19 ; CHECK-NEXT:  store
20 ; CHECK-NEXT:  ret
21 define double @func_no_fast(double %a, double %b) {
22 entry:
23   %a.addr = alloca double, align 8
24   %add = fadd fast double %b, 3.000000e+00
25   store double %add, double* %a.addr, align 8
26   %duplicated_add = fadd double %b, 3.000000e+00
27   ret double %duplicated_add