Fix vbroadcast matching logic to early unmatch if the node doesn't have
[oota-llvm.git] / test / CodeGen / X86 / neg_fp.ll
1 ; RUN: llc < %s -march=x86 -mattr=+sse41 -o %t
2 ; RUN: grep xorps %t | count 1
3
4 ; Test that when we don't -enable-unsafe-fp-math, we don't do the optimization
5 ; -0 - (A - B) to (B - A) because A==B, -0 != 0
6
7 define float @negfp(float %a, float %b) {
8 entry:
9         %sub = fsub float %a, %b                ; <float> [#uses=1]
10         %neg = fsub float -0.000000e+00, %sub           ; <float> [#uses=1]
11         ret float %neg
12 }