add test to show suboptimal load merging behavior
[oota-llvm.git] / test / CodeGen / X86 / fsxor-alignment.ll
1 ; RUN: llc < %s -march=x86 -mattr=+sse2 -enable-unsafe-fp-math | \
2 ; RUN:  grep -v sp | grep xorps | count 2
3
4 ; Don't fold the incoming stack arguments into the xorps instructions used
5 ; to do floating-point negations, because the arguments aren't vectors
6 ; and aren't vector-aligned.
7
8 define void @foo(float* %p, float* %q, float %s, float %y) {
9   %ss = fsub float -0.0, %s
10   %yy = fsub float -0.0, %y
11   store float %ss, float* %p
12   store float %yy, float* %q
13   ret void
14 }