some peepholes that should match horizontal add/sub operations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@163103 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2012-09-03 02:58:21 +00:00
parent 3a86e13962
commit 8a04e51d86

View File

@ -941,3 +941,15 @@ and inversion with an rsqrtss instruction, which computes 1/sqrt faster at the
cost of reduced accuracy.
//===---------------------------------------------------------------------===//
This function should be matched to haddpd when the appropriate CPU is enabled:
#include <x86intrin.h>
double f (__m128d p) {
return p[0] + p[1];
}
similarly, v[0]-v[1] should match to hsubpd, and {v[0]-v[1], w[0]-w[1]} should
turn into hsubpd also.
//===---------------------------------------------------------------------===//