Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / Transforms / GVN / propagate-ir-flags.ll
blob6f4e662233df38c2c0b03d790f0f76c80007f514
2 ; RUN: opt < %s -passes=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, ptr %a.addr, align 8
13   %load_add = load double, ptr %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, ptr %a.addr, align 8
26   %duplicated_add = fadd double %b, 3.000000e+00
27   ret double %duplicated_add